PC-01 Lviv http://pc01.lviv.ua/forum/ |
|
Ассемблеры http://pc01.lviv.ua/forum/viewtopic.php?f=20&t=146 |
Page 2 of 2 |
Author: | sas9568635 [ 06 Jun 2012, 11:09 ] |
Post subject: | Re: Ассемблеры |
Quote: ...версия Андрея Лебедева, которые тоже можно посмотреть.
Жму на сслыку http://vector06c.narod.ru/source/bolder_and_secrets.zip а она у меня не скачивается... liberation, вышли плиз мылом |
Author: | sas9568635 [ 06 Jun 2012, 11:24 ] |
Post subject: | Re: Ассемблеры |
Code: 0023 0010 0024 0010 44 _IMUL: MOV B,H 0025 0011 4D MOV C,L 0026 0012 21 00 00 LXI H,0 0027 0015 3E 11 MVI A,17 0028 0017 3D _IMUL1: DCR A 0029 0018 C8 RZ 0030 0019 29 DAD H 0031 001A EB XCHG 0032 001B 29 DAD H 0033 001C EB XCHG 0034 001D D2 17 00 JNC _IMUL1 0035 0020 09 DAD B 0036 0021 C3 17 00 JMP _IMUL1 0037 0024 0038 0024 7B _IXOR: MOV A,EЕще один момент не пойму... Дак а что номер строки в ДЕСятичн. а адре в в Шестнадцатеричном формате? (и байты в шестнад) Странно как-то... |
Author: | Zelya [ 06 Jun 2012, 11:38 ] |
Post subject: | Re: Ассемблеры |
sas9568635 Quote: а она у меня не скачивается...
Странно, у меня скачивается. Попробуйте правой кнопкой и "save link as..."Quote: номер строки в ДЕСятичн. а адре в в Шестнадцатеричном формате
Вполне стандартный подход. Строки текстового редактора никогда не нумеруют в шестнадцатиричной.
|
Author: | b2m [ 06 Jun 2012, 11:49 ] |
Post subject: | Re: Ассемблеры |
Quote: Еще один момент не пойму...
Листинг делается обычно для человека.Дак а что номер строки в ДЕСятичн. а адре в в Шестнадцатеричном формате? (и байты в шестнад) Странно как-то... А ему удобнее знать номер строки в десятичном виде (чтобы искать в текстовом редакторе, где номер строки также десятичный). А про адрес и коды объяснять, надеюсь, не надо. |
Author: | liberation [ 06 Jun 2012, 12:26 ] |
Post subject: | Re: Ассемблеры |
Quote: Жму на сслыку [...], а она у меня не скачивается...
Закинул исходники BD в файловое хранилище [открыть].
|
Author: | sas9568635 [ 06 Jun 2012, 14:39 ] |
Post subject: | Re: Ассемблеры |
Ну вот "склепал".. Надо проверить... http://sas.forumbb.ru/viewtopic.php?id=287 При поверхностной проверке вроде все в порядке, хотя когда я листинг-файл(CAVE.LVT.01.asm.lst) которой от (CAVE.LVT) "подтянул" в "Башкирию" этот файл он почему-то не запустился вручную в эмуляторе т.е. по команде "Def usr=35832: x=usr(x)". Может я чего не так делал и делаю, а может есть место ошибкам, причем грубым.. Прошу помощи, раз это действительно будет нужно как говорил b2m Еще интересный момент... "Номер строки" выравнивается на 4 знака т.е. 0000, а как быть с файлами которые 65000 строк, например?.. - ведь будет смещение... после 9999 ...иль это неважно?... может всетаки выравнивать номер строки на 00000?... |
Author: | sas9568635 [ 06 Jun 2012, 14:52 ] |
Post subject: | Re: Ассемблеры |
Quote: слушай, а может сделать так, чтобы асм "заганял" ассемлируемую прогу в твой EMU-формат, но не запускал
Quote: Что-то как-то сложно. Хотя я ничего не имею против. Берёшь в качестве шаблона записанный эмулятором файл, и изменяешь нужные байты памяти. Другое дело, что смещение может измениться, если изменить конфиг. Там в .emu весь обработанный конфиг хранится, плюс состояние компонентов конфига.
Да я уже понял, когда дизасм стал невсегда файлы EMU дизасемблировать правильно...при жесткой зацепке за 1357 байт в файле EMU, как за начало памяти... А можна ли зацепится вот так: Найти (файле EMU) первую "memory" + поправка_несколько_байт - это и будет начало памяти?... |
Author: | b2m [ 06 Jun 2012, 15:14 ] |
Post subject: | Re: Ассемблеры |
Quote: хотя когда я листинг-файл(CAVE.LVT.01.asm.lst) которой от (CAVE.LVT) "подтянул" в "Башкирию" этот файл он почему-то не запустился вручную в эмуляторе
При загрузке листинга память не меняется, т.е. нужно сначала загрузить .lvt как обычно, а затем в отладчике "подключить" листинг. Листинг влияет только на окно дизассемблера, т.е. вместо дизассемблирования будут показаны строки из листинга (при условии, что байты совпадают).Quote: "Номер строки" выравнивается на 4 знака т.е. 0000,
Я уже говорил, номер строки не используется, главное - чтобы после него был минимум один пробел (но можно и больше, т.е. выравнивать адрес за счёт количества пробелов).а как быть с файлами которые 65000 строк, например?.. - ведь будет смещение... после 9999 ...иль это неважно?... может всетаки выравнивать номер строки на 00000?... Quote: А можна ли зацепится вот так:
Можно и так. Вряд-ли в файле встретится такая строка до содержимого памяти.Найти (файле EMU) первую "memory" + поправка_несколько_байт - это и будет начало памяти?... После слова memory будет 4 байта (длина блока памяти), а затем сама память. |
Author: | Zelya [ 06 Jun 2012, 15:17 ] |
Post subject: | Re: Ассемблеры |
Quote: т.е. выравнивать адрес за счёт количества пробелов
Табуляция же! Все выравнивается автоматически!
|
Author: | b2m [ 06 Jun 2012, 15:23 ] |
Post subject: | Re: Ассемблеры |
Quote: Табуляция же! Все выравнивается автоматически!
А вот символ табуляции использовать не рекомендую
|
Author: | sas9568635 [ 06 Jun 2012, 15:35 ] |
Post subject: | Re: Ассемблеры |
Quote: Quote: Табуляция же! Все выравнивается автоматически!
А вот символ табуляции использовать не рекомендую Хотя в моем асме при ассемблировании и "встрече" кода 09 - он "понимает" его как разделитель, как тотже "пробел"... Поэтому пользователи моим асмом, могут вместо "пробела" смело пользоваться "табом"... :-):-) Да людей с больн... т.е с широкой фантазией, мой асм в таком - очень даже подойдет !!!:-):-):-) |
Author: | liberation [ 06 Jun 2012, 15:44 ] |
Post subject: | Re: Ассемблеры |
Quote: Еще интересный момент...
Если я не ошибаюсь, то общее правило таково: ширина поля должна быть кратна 4-м или 8-м символам. Резервируйте под номера строк восемь символов, делайте выравнивание по правому краю, пустые символы забивайте пробелами и все будет хоккей.
"Номер строки" выравнивается на 4 знака т.е. 0000, а как быть с файлами которые 65000 строк, например?.. - ведь будет смещение... после 9999 ...иль это неважно?... может всетаки выравнивать номер строки на 00000?... |
Author: | sas9568635 [ 06 Jun 2012, 17:38 ] |
Post subject: | Re: Ассемблеры |
Quote: Ну вот "склепал".. Надо проверить... http://sas.forumbb.ru/viewtopic.php?id=287
Почему молчим?... Кто нить скачивал?... Смотрел?... Ну... И что не так?...
...а может есть место ошибкам, причем грубым.. Прошу помощи, раз это действительно будет нужно как говорил b2m |
Author: | sadfsdfsdaf [ 28 Jul 2020, 14:05 ] | ||
Post subject: | Re: Ассемблеры | ||
Раз тема про ассемблеры в целом, то прикреплю конвертер из внутренного представления какого-то Львовского ассемблера в текстовое. Перебирал файлы и нашёл исходник программатора, в своё время этот файл был помечен как "неизвестный". В принципе, так оно и есть, исходные тексты у этого ассемблера в токенизированной форме, токенами служат коды команд, неизвестные опкоды выступают служебными директивами. Сказать что-то точнее не могу. Мне повезло, т.к. рядом лежали как исходник так и его скомпилированная форма, это и позволило написать конвертер. Авось кому пригодится, если исходники у кого-то ещё сохранились в файловой форме и было непонятно что с ними делать. o32asm.pl это сам конвертер o32asm.txt это пример работы (исходный текст какого-то программатора, брался тут: warez-d4.rar\ARCHIVE\SYSTEM.BIN\O32.LV0)
|
Page 2 of 2 | All times are UTC+03:00 |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |