Цитата(romez777 @ May 9 2008, 08:37)

Я так и думал, но как объяснить слудующее. Фрагмент дизассемблера:
Код
Disassembly of section .text:
0010403c <Undef_Handler>:
10403c: eafffffe b 10403c <Undef_Handler>
А вот hex:
Код
:10403C00FEFFFFEA......
Дизассембляция сделана командой: arm-elf-objdump -h -S -C - то есть дамп, как я понимаю, уже должен быть с перевернутыми байтами?
Тут как раз байты не перевернуты, а стоят в правильном порядке. Маленький экскурс в HEX файлы.
: - Признак начала строки HEX. Все строки должны начинаться с него.
10 - Размер строки в байтах. Считаются только полезные байты.
403C - Адрес с которого начинает размещаться строка.
00 - Код записи. 00 - значит строка с данными.
FE - Первый байт данных. Размещается по указанному адресу.
FF - Второй байт данных. Размещается по адресу (указанный + 1)
....
Всего байтов данных столько, сколько указанно после двоеточия.
<Последний байт в строке> - контрольная сумма.
Цитата
Отличная идея! Сейчас приложу архив.
Сейчас гляну.
Посмотрел.
1. У Вас приложение (в бинарик и HEX) начинается вот с этого кода
Код
Undef_Handler:
B Undef_Handler
10403c: eafffffe b 10403c <Undef_Handler>
А векторов там нет.
2. Разберитесь сначала с ARM режимом, а то сразу и ARM и THUMB Вас запутывает.
Например, Ваш boot переходит в THUMB, а потом запускает приложение командой BL, а приложение начинается с ARM режима, и соответмтвенно ничего не работает.
3.
Цитата
arm-elf-objdump -h -S -C - то есть дамп, как я понимаю, уже должен быть с перевернутыми байтами?
А причем здесь endian?
-h - Показать заголовок
-S - Показать исходный код
Цитата
-C
--demangle[=style]
Decode (demangle) low-level symbol names into user-level names. Besides removing any initial underscore prepended by the system, this makes function names readable. Different compilers have different mangling styles. The optional demangling style argument can be used to choose an appropriate demangling style for your compiler.
Указать тип разименования символов, например c, cxx ....
Причем тут endian? Радуйтесь, что у Вас litle-endian

.