Страница: 1 | 2 |
Вопрос: Повод для гордости: дизассемблер на Бейсике
Добавлено: 14.08.04 18:08
Автор вопроса: Sharp | Web-сайт:
Hackman Disassembler v8.01 by Technologismiki
Дизассемблер, написанный на васике. Откровенно примитивен, но поддерживает пару процессоров кроме клонов x86. Также есть одна забавная вещь - встаньте на инструкцию и нажмите справку. Получите цитату из интеловского мануала - ребята старательно передрали все, что там было.
Сайт программы: http://www.technologismiki.com/en/
Размер: 2067 kb
http://wasm.ru/toollist.php?list=13
Ответы
Всего ответов: 24
Номер ответа: 1
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #1
Добавлено: 15.08.04 01:04
Странно только что ассемблер на VB6 стал поводом для молчания.
Номер ответа: 2
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #2
Добавлено: 15.08.04 01:13
А кто тебе мешает его рекламировать на wasm.ru??? Я вообще удивляюсь, что ты до сих пор о нем молчишь, а не рекламируешь, как я сейчас Порри Гаттера. Ты хотя бы на masmforum.com о нем заявил во всеуслышанье? Бери пример с меня - я еще и не написал полностью даже преальфу своего клиента, а уже рекламирую его вовсю ))
Номер ответа: 3
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #3
Добавлено: 15.08.04 01:24
Я на мних форумах ссылки кидал. И на наших и на буржуйских.
На WASM.RU побоялся зная их сильную нелюбовь к VB.
Номер ответа: 4
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #4
Добавлено: 15.08.04 01:35
Неправда, VB они хоть и не уважают, но понимают его несомненное преимущество для ряда задач, например, бухгалтерских программ или скриптов для Office, более того, volodya даже как-то попросил форумлян написать ему VBA-скрипт для быстрого перевода статей из .doc-формата в .htm с учетом стиля wasm.ru, который бы ему серьезно облегчил работу по обновлению сайта.
Номер ответа: 5
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #5
Добавлено: 15.08.04 01:49
угу, также VB является самым удобным инструментом для работы с COM ))
И кто сказал что байсик для ламеров? Он, видимо, на нем не программировал )
Номер ответа: 6
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #6
Добавлено: 15.08.04 02:11
Да уж. Если в Си, например, можно юзать MFC и указатели и при этом не представлять себе структуру памяти, стек и событийную модель Windows, то в VB такой фокус явно не пройдет
Номер ответа: 7
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #7
Добавлено: 15.08.04 12:10
Ну я вообще то не по правилам делал. По правилам каждую команду нужно разложить на биты и по формуле генерировать опкод. У меня разбито на 3 группы: безоперандовые, с одним и с двумя операндами. Безоперандовая либо занимает отдельную процедуру либо входит какую либо группу.
Формулы для одно- и двухоперандовых несколько схожи. Операнд парсится на пренадлежность r/m/imm/Label(только некоторые). Причём для памяти (m) не поддерживается полная формула [r32+r32*Масштаб+imm8/32], а только [r32] или [r32+imm8/32]. После проверки операндов и их коррекции вызывается функция генерации опкодов для комманды или группы комманд(ну типа /0, /1 ... /7).
Может перепишу когда нибудь. Но мне сейчас интереснее структура PE-файла.
Номер ответа: 8
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #8
Добавлено: 15.08.04 12:47
Потом вкратце расскажешь что куда и где там лежит Я так все и не соберусь прочитать да посмотреть, что это за фрукт...
Номер ответа: 9
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #9
Добавлено: 15.08.04 13:28
Ну исходники это для тех кто апгрейдить его захочет. А для написания ассемблерной программы достаточно написать и запустить её в IDE или таким кодом (из хелпа):
If Compile(Text1.Text, True) Then
MsgBox "Функция вернула " & COMPILER_CallExecutor (p1, p2, p3, p4)
End If
Номер ответа: 10
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #10
Добавлено: 16.08.04 05:56
Кстати на VbStreets таки открыли проект.
http://www.vbstreets.org/Projects/LASM/default.aspx
Номер ответа: 11
Автор ответа:
Алексей
ICQ: 207504159
Вопросов: 1
Ответов: 14
Web-сайт:
Профиль | | #11
Добавлено: 23.06.06 20:01
Над дизассемблером не работал, но вот почти написал свой компилятор на VB6. Т.е. он полностью анализирует введенный код с придуманным мною синтаксисом, компилит все это в инструкции ассемблера и на выходе получаем исполняемый файл под Win32 API. Причем очень маленький и шустрый, благодаря оптимизации на ассемблере по размеру кода и быстродействию. Правда вот началась сессия и я пока забросил проект, хотя он уже на стадии доводки и отладки. Если кому надо - могу дать исходники поковырятся. Потому, что когда я изучал формат PE файлов по книжкам столкнулся с кучей проблем: таблицы разшифровки в книжке приведены, а вот основные ошибки с которыми можно столкнуться нет. Пришлось до всего самому доходить методом научого тыка.
Номер ответа: 12
Автор ответа:
ZagZag
ICQ: 295002202
Вопросов: 87
Ответов: 1684
Профиль | | #12
Добавлено: 23.06.06 20:41
Алексей, вышли на zagzag2003 на mail.ru Хочу потестить и заодно впринцип работы понять
Номер ответа: 13
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #13
Добавлено: 23.06.06 20:50
Выкладывай исходники
Номер ответа: 14
Автор ответа:
Алексей
ICQ: 207504159
Вопросов: 1
Ответов: 14
Web-сайт:
Профиль | | #14
Добавлено: 23.06.06 21:08
Смотите, смотрите. Только вот давайте авторские права соблюдать...
Исходники тут: http://lehs.info/padla.zip
Комментариев там куча - если что-то будет не понятно - пишите мне на admin@lehs.info, всегда отвечу.
Номер ответа: 15
Автор ответа:
ZagZag
ICQ: 295002202
Вопросов: 87
Ответов: 1684
Профиль | | #15
Добавлено: 24.06.06 02:30
Облом, чето DM ругается на 404
2 24.06.2006 02:29:17 Start new section [1]
3 24.06.2006 02:29:17 Start connection to lehs.info:80 [1]
4 24.06.2006 02:29:17 Connecting to lehs.info:80 [1]
5 24.06.2006 02:29:17 Connected [1]
6 24.06.2006 02:29:17 HEAD /padla_sources.rar HTTP/1.1
User-Agent: Download Master
Cookie: Visitor=1
Accept: */*
Referer: http://lehs.info/index.php?action=text&num=2
Cache-Control: no-cache
Host: lehs.info
7 24.06.2006 02:29:21 HTTP/1.1 404 Not Found
 ate: Fri, 23 Jun 2006 22:30:24 GMT
Server: Apache
Connection: close
Content-Type: text/html; charset=iso-8859-1
8 24.06.2006 02:29:21 Header not recognized or 505 [1]
9 24.06.2006 02:29:21 Socket disconnected [1]
10 24.06.2006 02:29:21 Error while get size. Download stopped
11 24.06.2006 02:29:21 Download state changed to Erroring
12 24.06.2006 02:29:21 Start delete section [1]
13 24.06.2006 02:29:21 Section deleted [1]
14 24.06.2006 02:29:21 Download state changed to Error