011119xx
Nov 21 2011, 10:06
Есть hex файл под at89c51ed2, нужно его дизассемблировать. Кто что посоветует?
MaslovVG
Nov 21 2011, 10:44
Цитата(011119xx @ Nov 21 2011, 14:06)

Есть hex файл под at89c51ed2, нужно его дизассемблировать. Кто что посоветует?
IDA
011119xx
Nov 21 2011, 11:04
Пробовал. Не впечатлило
AndreyS
Nov 21 2011, 11:07
Цитата(011119xx @ Nov 21 2011, 15:04)

Пробовал. Не впечатлило
А зря (по моему лучшего нет)!
Какие требования к дизассемблеру?
011119xx
Nov 21 2011, 11:16
Научите как правильно пользоваться IDA.
MaslovVG
Nov 21 2011, 12:30
Цитата(011119xx @ Nov 21 2011, 15:04)

Пробовал. Не впечатлило
Лучше не существует.
Интерактивная работа. Возможность на ходу задавать области данных, строковых констант, возможность вводить имена меток. Этого не видел нигде. А представления программы в виде блочной диаграммы?
Цитата(011119xx @ Nov 21 2011, 15:16)

Научите как правильно пользоваться IDA.
Найдите книгу Касперского "Образ мышления - дизассемблер Ida" там описно в применении для X86 но методика подходит для любого процессора.
011119xx
Nov 22 2011, 02:42
Спасибо. Буду искать книгу... Книгу нашел. Кое что конечно почерпнуть можно, но описывает весьма старую версию программы.
Цитата(011119xx @ Nov 22 2011, 06:42)

...описывает весьма старую версию программы.
Вам - "шашечки" или ехать?
То, что умела делать четвертая версия, то умеет делать и шестая. А, разобраться самостоятельно с графическим интерфейсом Вам поможет встроенная помощь...
011119xx
Nov 23 2011, 05:05
Мне ехать. И уже еду, но чувствую, что до конца не доехать (не получится дизассемблировать программу правильно, слишком много тонкостей).
Кто-нибудь может подсказать как добавить сегмент данных XRAM и какие адреса ему задавать?
MaslovVG
Nov 23 2011, 05:44
Цитата(011119xx @ Nov 23 2011, 09:05)

Мне ехать. И уже еду, но чувствую, что до конца не доехать (не получится дизассемблировать программу правильно, слишком много тонкостей).
Кто-нибудь может подсказать как добавить сегмент данных XRAM и какие адреса ему задавать?
Дизассемблировать (чтобы затем программу можно было компилировать) это разобратся в тонкостях работы программы, для этого нужно знать архитектуру процессора, алгоритмические приемы. Методы защиты програм.
Все необходимые адреса извлекаются из устройства для которого программа написана. Или методом подбора по найденным в программе адресам обращения.
011119xx
Nov 23 2011, 06:15
Да программу то я сам писал, просто были утеряны исходники проекта и теперь нужно их восстанавливать. Что да как там работает знаю примерно, но многое подзабылось. А по поводу знания архитектуры процессора это не серьезное замечание. Вопрос то был в другом.
kolobok0
Nov 23 2011, 08:12
Цитата(011119xx @ Nov 23 2011, 10:15)

...Вопрос то был в другом.
чисто ответ, правда не буду оригинален:
IDA
(круглый)
Denis24
Apr 17 2012, 10:56
Я тоже согласен, только IDA , других вариантов нет, раньше работал с консольными досовскими дизассемблерами, но только чтобы быстро чтото поправить в прошивке.IDA достаточно версии 4.04
Вот так выглядит досовский дизассемблер
8751 code disassembler V1.2
-------------------- Function Help --------------------------
U [startaddr],[endaddr] : Disassemble output to consol
P [startaddr],[endaddr] : Disassemble output to printer
W filename,startaddr,endaddr : Disassemble output to file
H or ? : Help
Q : Quit to DOS
-------------------------------------------------------------
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.