реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Keil - Disassembly - Symbol, Как при дезасемблировании присвоить имя процедуре
Андрей_
сообщение Nov 11 2007, 12:52
Сообщение #1





Группа: Новичок
Сообщений: 6
Регистрация: 21-04-05
Пользователь №: 4 355



Здравствуйте ! Подскажите плз.
как в Keil , не имея исходника и загрузив в дебагер hex файл присвоить имя процедуре. Чтобы в окне дизассемблера было не LCALL С:0x1354 а например LCALL Name_procedure_1.
Go to the top of the page
 
+Quote Post
oran-be
сообщение Nov 11 2007, 19:12
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 234
Регистрация: 30-03-07
Из: Одесса
Пользователь №: 26 621



Вроде как никак. Тока все скопировать и перенести в редактор.
Go to the top of the page
 
+Quote Post
Палыч
сообщение Nov 12 2007, 15:17
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Андрей_ @ Nov 11 2007, 15:52) *
Здравствуйте ! Подскажите плз.
как в Keil , не имея исходника и загрузив в дебагер hex файл присвоить имя процедуре. Чтобы в окне дизассемблера было не LCALL С:0x1354 а например LCALL Name_procedure_1.
У Вас потерялись исходники (или, может быть, и не было)? Лучше всего произвести дизассемблирование, трансляцию в Keil'е, а затем дебагить. Для дизассемблирования лучше всего использовать интерактивный дизассемблер IDA. Ему всегда можно подсказать что и как дизассемблировать (в том числе какие имена функциям присвоить, при необходимости). Когда будет появляться новая информация о функциях тех или иных процедур при дебаге, подсказываете IDA новые, осмысленные имена и сново получаете новый исходник (прежнюю информацию IDA хранит в своих базах). Новый исходник снова транслируете и его дебажите, и т.д. до тех пор, пока не получите вполне осмысленный исходник...
Go to the top of the page
 
+Quote Post
gyrotron
сообщение Nov 13 2007, 21:37
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 15-09-05
Пользователь №: 8 578



@палыч

Может подскажите еще такой вопрос, - у меня был дамп флеш 89S52, обработал его в IDA,
чуть ручками поправил и пробую прошагивать в симуляторе IAR и Keil.
В IAR вроде все ОК, шагается, но наступает момент, когда нужно ввести данные по UART,
просмотреть обработку прерывания и дальнейшую работу кода с принятыми данными.

Пока что у меня такое получилось только со стареньким
Analog Devices 812 Simulator - а можно ли такое провернуть с IAR или в Keil ??
(В Keil у меня вроде бы тоже шагается, но проблема со следующим - )

вопрос, наверно, совсем детский: в IAR внутреннее ОЗУ отображается корректно, все 256 байт, если нужно
глянуть SFR - выпадает комбобокс... а вот в Kiel почему то когда даю: d:0x00 то вторая половина внутреннего ОЗУ
отображается как SFR. Как получить нормальное отображение ОЗУ ?
Go to the top of the page
 
+Quote Post
Палыч
сообщение Nov 14 2007, 06:27
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(gyrotron @ Nov 14 2007, 00:37) *
вопрос, наверно, совсем детский: в IAR внутреннее ОЗУ отображается корректно, все 256 байт, если нужно
глянуть SFR - выпадает комбобокс... а вот в Kiel почему то когда даю: d:0x00 то вторая половина внутреннего ОЗУ
отображается как SFR. Как получить нормальное отображение ОЗУ ?


B Bit–addressable RAM memory (BIT).
C Code memory (CODE).
CO Memory range for constants (251 CONST).
D Internal directly-addressable RAM memory of the 8051 (DATA).
EB Extended bit-addressable RAM memory (251 EBIT).
ED Extended data RAM memory (251 EDATA).
HC Huge memory range for constants (251 HCONST).
I Internal indirectly-addressable RAM memory of the 8051 (IDATA).
X External RAM memory (XDATA).



Вместо "D" укажите "I"
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 07:24
Рейтинг@Mail.ru


Страница сгенерированна за 0.0141 секунд с 7
ELECTRONIX ©2004-2016