Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Дизассемблер для AT89C51
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > MCS51
mihailp
Есть hex файл от AT89C51 мне надо поличить asm. Перепробовал кучу разных программ начиная от ReAVR,AVRstudio4 и заканчивая IDA, но в результате на выходе получаю бессвязный набор команд.
Правда ни одна из этих программ официально не поддерживает этот тип процессора. Может кто-нибудь мне что-нибудь посоветовать? Программу для этого проца или как заставить имеющиеся проги с ним заработать. Буду очень благодарен.
jack_avenger
Не знаю как насчет IDA, но ReAVR,AVRstudio4 это точно не то что Вам надо. Последние 2 работают с АVR, а Ваш AT89C51 имеет систему команд 8051. Ищите что-нибуть под нее.
Палыч
Цитата(mihailp @ Apr 13 2007, 15:01) *
Перепробовал кучу разных программ начиная от ReAVR,AVRstudio4 и заканчивая IDA, но в результате на выходе получаю бессвязный набор команд.
Правда ни одна из этих программ официально не поддерживает этот тип процессора.


IDA этот тип процессора - поддерживает. Но, ему (IDA) нужно немного помочь - благо это интерактивный дизассемблер. У Вас IDA какой версии?
Для версии 4.7.0.830 (которая есть у меня) необходимо:
-при запуске указать Disassemble a new file и выбрать дизассемблируемый hex
-В окне "Load a new file" выбрать тип процессора Intel 51 series 8051 и нажать Set; убрать все галки из Options; выбрать тип файла Intel Hex object format; жмем ОК
-в вывалившемся окне выбираем подходящий девайс (можно по-умолчанию) и ОК; не обращаем внимание на то, что IDA не вожет определить точку входа
-создаем сегмент кода:Edit->Segments->Create segment
name: code
start: 0
end: оставляем, что было
base: 0
class: code
-в окне IDA View A находим code:0000 ставим туда курсор и жмем латинскую С (или Edit->Code)

Получили НЕ бессмысленный набор команд, который еще можно поправить дополнительными командами...

PS Все сказанное выше для начала дезассемблирования. Все Ваши "подсказки" будут сохранены при выходе из IDA в базе (расширение файла idb). При дальнейшей работе над дезассемблируемой программой необходимо выбрать ее (базу для дезасемблирования программы) при старте IDA двойным щелчком мыши в окне Welcome to IDA.
Snaky
Цитата(mihailp @ Apr 13 2007, 19:01) *
Есть hex файл от AT89C51 мне надо поличить asm. Перепробовал кучу разных программ начиная от ReAVR,AVRstudio4 и заканчивая IDA, но в результате на выходе получаю бессвязный набор команд.

Это 51-ая архитектура. Можно HEX загрузить в симулятор типа FD-51 или AVSIM-51 и он покажет команды (вспомнил навскидку пару старых симуляторов - сейчас, возможно, есть что посовременнее - думаю с помощью гугла несложно найти).
Можно скормить hex дизассемблеру. Например, http://bit.kuas.edu.tw/~8051/#dis или http://www.bipom.com/dis51.shtm. На самом сайте Atmel есть ссылки на дизассемблеры http://www.atmel.com/products/8051/thirdparty.asp .
mihailp
Большое всем спасибо. Попробовал оба способа и вроде бы получил что хотел. Осталось теперь с этим разобраться)))
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.