[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
запускается startup модуль, который инициализирует указатель стека, сегменты инициализируемых данных, обнуление сегментов неинициализируемых данных и лишь затем вызывает функцию main. Что касается linker-а, то он должен уметь выдавать на выходе код, пригодный для прошивки ПЗУ. Формат выходного файла не имеет особого значения (двоичный, hex и т.д.). Естественно exe файлы в это категорию не попадают. С другой стороны, хотя linker, как Вы правильно заметили, и разделяет сегменты кода и данных, но он должен уметь размещать эти сегменты по заданным физическим адресам. Возможности стандартных linker-ов вэтом смысле очень и очень невелики, если не сказать что они вовсе отсутствуют.
E-mail: info@telesys.ru