Search
Write a publication
Pull to refresh

Comments 17

ретро, как говориться, песни нашей молодости, более 25 лет к нему не обращался. Желаю автору с такой же любовью и подробностью написать, о чём нибудь по современнее, например про gdb.

спасибо, правда как-то не кажется что особо захватывающе будет :) gdb приходится пользоваться более-менее регулярно но в основном для отладки на С и Go т.к. он-то отладочную информацию умеет :) надо глянуть, о нём-то уж наверное на хабре не раз писали

symdeb.exe наше всё! По интерфейсу как debug.exe, но чуть-чуть пофункциональнее.

любопытно, не слыхал но взгляну, спасибо :) хотя тут ясно интерес был в основном из того что эта тула исторически валялась во всех дистрибутивах доса и виндовса не знаю с каких пор...

symdeb в отличии от debug не входил в DOS, но входил в поставку MASM и в Windows SDK для Windows 3.x Умел делать абсолютно то же самое что и debug но чуть больше и чуть дружелюбнее в некоторых командах (если подобный интерфейс вообще можно назвать дружелюбным). Плюс AFAIR умел показывать символы в одном из первых форматов CodeView.

https://www.pcjs.org/blog/2018/02/25/

а в DEBUG.EXE по-моему память можно редактировать только в шестнадцатеричных кодах

Неверно. Вы вполне можете писать что-то вроде E CS:1B0 "Hello world".

Посмотрите доку на DEBUG здесь:
https://www.pcjs.org/documents/books/mspl13/msdos/encyclopedia/section4/
(в главе больше материала, нужно поиском по странице перейти к фразе "Program debugger").

Вообще-то DEBUG умеет и побольше. Точки останова, пропуск циклов и подпрограмм (т.е. step over).

Заносить в IP 100h для пуска не обязательно, можно печатать g=100 и все. И точку останова ("выполнить до адреса") тоже не обязательно.

Спасибо, очень кстати! Добавил в статью :)

Начинал с debug. Так уж вышло, что на первом моем IBM PC компе на 386м кто-то в целях оптимизации места выкосил все .hlp файлы и qbasic. Был только debug.exe

А потом мне попала в руки книжка Джордейна. С листингами и реализацией всякого на низком уровне. Оказалось, что в debug можно было кодить, ну и пошел процесс...

О да, Джордейна я подцепил в школьной библиотеке - но поскольку в сам ассемблер он не особо погружается (хотя примеры приводит), у меня дело пошло когда товарищ ещё дал почитать книжку П.Нортона названия которой я не помню. Кстати там тоже debug упоминался в начале.

О да, Нортон это классика. Тоже не помню название, с темно-синей обложкой мягкой была книга его.

после джордейна я свой отладчик на асме написал -- поудобнее) (кажется в 10-11 классе дело было, в конце 90-х)

Я как увидел эти рожицы, так ностальгия хлынула. Использовал дебаг для низкоуровневого форматирование хдд.

хе-хе, забавные совпадения конечно - мне приходилось наоборот похожим способом в армии восстанавливать первые 1024 сектора диска который начали форматировать но вовремя опомнились :) повезло что из двух копий FAT32 затёрлась только большая часть первой, так что можно было угадать размер, скопировать, восстановить загрузочный сектор... бр-р-р :)

25 лет назад, именно в DEBUG учился писать свои первые проги на ассемблере. Была написана прога, реализующая пищание разными тонами из системного динамика в зависимости от нажатой клавиши. Магия... ))

Пианино на PC-спикере! Я такое делал конечно на Паскале по-моему, но в дебаге это воплотить - довольно масштабная задача! Респект :)

был вполне прекрасный turbo debugger, зачем командная строка

Был, был :) был и symdeb который упомянули выше - но это всё тулы из пакетов разработки на продвинутых языках и не с самых ранних версий - а debug.exe прямо в системе лежал - и, как видим по замечаниям, за счет возмоности быстро и с нуля создать рабочий файл - для кого-то стал хорошим введением в ассемблер. Так-то конечно с борландовскими пакетами кроме TD ещё и полноценный TASM приходил.

Sign up to leave a comment.

Articles