Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Может не в тему, но есть вопрос по дизасму...  (Прочитано 10869 раз)
0 Пользователей и 3 Гостей смотрят эту тему.
Frme
Гость
« : 12-10-2004 14:25 » 

Здавствуйте, есть кусок асм. кода отсканированый с микросхемы,
известно под какой процессор (МС68340), IDA ничего не распознает
кроме как на уровне несвязанных байтов, Есть ли какая-нить тулзень
для дизасма в таком случае? или нужно все в ручную разбирать?
Заранее благодарен.
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #1 : 12-10-2004 14:35 » 

Frme, ищи дизассемблер именно для этого контроллера - насколько я понимаю, IDA - для intel
Записан

Scorp__)
Молодой специалист

ru
Offline Offline
Пол: Мужской

« Ответ #2 : 12-10-2004 14:36 » 

Во-первых для IDA нужен модуль соответствующего процессора, иначе она ничего не поймет. Далее, если это просто выдранный кусок, то IDA не сообразит откуда ей начинать работу и чего собственно делать, у нее же вся фишка в интерактивности. Можно напрямую преобразовать байты в код, там есть такая команда. Но опять же это все получится только при наличии модуля процессора. Их очень много всяких разных, попробуй поищи в интернете. На www.datarescue.com.
Записан

- А Вы сами-то верите в привидения?
- Конечно, нет, - ответил лектор и медленно растаял в воздухе.
Scorp__)
Молодой специалист

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 12-10-2004 14:38 » new

Алексей1153, IDA почти для всего Улыбаюсь. В моей упаковке там есть например процессор MC6812 и Z86 и много чего еще Улыбаюсь
Записан

- А Вы сами-то верите в привидения?
- Конечно, нет, - ответил лектор и медленно растаял в воздухе.
Frme
Гость
« Ответ #4 : 12-10-2004 19:47 » 

Спасибо за ответы: даже неожидал столь дружелюбного интерфейса:))
В моей версии ИДА есть модуль для MC68330, им я и дизасмил этот код,
но рез-т ноль, хотя одна серия и хоть что-то должно да распознаться.
2Scorp__), если не трудно, укажи ту команду, плыс, попробую с тем модулем что есть(330), т.к. нужный мне на сайте отсутствует, а на самодельный нет времени
Заранее благодарен.
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #5 : 13-10-2004 02:31 » 

Frme, для начала дизассемблирования нужно знать, с какого должна распологаться программа в памяти и с какого адреса она стартует. Для типичных исполняемых файлов эти данные содержаться в заголовках. В твоем случае (дамп ПЗУ) надо указать адрес загрузки и адрес, по которому происходит вызов при сбросе процессора. Точки, вызов по которым происходит по прерыванию, а так же неиспользованные подпрограммы придется проити вручную.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Frme
Гость
« Ответ #6 : 13-10-2004 07:02 » 

RXL спасибо за ответ, буду работать в данном направлении, т.к. иного пути пока нет
Записан
Серж
Гость
« Ответ #7 : 13-10-2004 07:12 » 

Frme, найдите описание системы команд и векторов прерываний процессора, например, на сайте Моторолы, как правило, 0-й адрес содержит Jump на стартовый адрес программы. Как правило, в начале находятся и  вектора прерываний. Начало самого кода определить может быть трудно, его можно попробовать получить просто двигая стартовый адрес дизассемблирования до получения разумных данных. Кроме того, в коде могут быть вкрапления данных, с ними ничего не поделаешь, определить их можно только по абракадабре в дизассемблере.
Записан
Scorp__)
Молодой специалист

ru
Offline Offline
Пол: Мужской

« Ответ #8 : 13-10-2004 17:49 » 

Frme, ну в общем-то все, что надо уже сказали Улыбаюсь Да обычное преобразование в код. Ставишь курсор в строку сырых байтов и нажимаешь С или Edit->Code. Не факт, что она распознает все правильно, потому что ты можешь попасть в середину команды и т. п., но ассемблерный код какой-никакой ты получишь.
Удачи Ага
Записан

- А Вы сами-то верите в привидения?
- Конечно, нет, - ответил лектор и медленно растаял в воздухе.
Frme
Гость
« Ответ #9 : 14-10-2004 07:35 » 

Во-о, вот енто уже значительно веселее,:))) Многоуважаемые Scorp__) и Серж - мои многочительные респекты! Улыбаюсь, Теперь уж хоть что-то вырисовывается, роем дальше.
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines