[an error occurred while processing this directive]
Такой галочки нет. Данные компилятор (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Беня 19 сентября 2002 г. 17:17
В ответ на: IAR C for 430, подскажите как отключить выравнивание данных отправлено sms 19 сентября 2002 г. 15:33

выравнивает данные по четному адресу. Я как-то писал программу для контроллера, который обменивался с персоналкой данными - для контроля длины посылки (весь ли пакет принят) я использовал функцию sizeof(struct ...). Ничего поделать нельзя было - выравнивает каждую переменную в структуре. Пришлось заменять однобайтовые переменные на двубайтовые (а переделывал я программу с 51-го процессора, поэтому пришлось и программу для персоналки менять).
Ну и еще одна штука - в этом компиляторе указатель на данные должен обязательно указывать на четный адрес! Я вот написал программку, в которой сам "подстроил" указатель, чтобы он указывал на нечетный адрез. И попробовал сосчитать что-то по этому указателю. C-SPY как заругается - нельзя и все тут ! :-(((

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru