Для выполнения курсовой работы необходимо использовать DEBUG.EXE.
Повилась потребность сохранять данные, введённые в режиме отладки, на диске, чтобы потом заново их не вводить, а подгружать из файла.
Как так можно сделать?
Никто мне не ответил, поэтому отвечу себе сам, т.к. уже разобрался в вопросе, а кто-то в будущем может быть и отыщет по поиску
E>Повилась потребность сохранять данные, введенные в режиме отладки, на диске, чтобы потом заново их не вводить, а подгружать из файла. E>Как так можно сделать?
Данные вводятся в сегмент команд по адресу с таким расчетом, что памяти (до начала участка данных) хватит для размещения кода команд.
Например, по-умолчанию адреса для ввода кодов команд начинаются с адреса CS:100; значит, при условии, что на саму программу хватит 256 байт, то данные можно разместить по адресу CS:200.
Далее командой "r CX" ; "[100 (размер кода команд) + размер размещенных Вами данных в 16-ной системе счисления]" ; "n [имя файла для сохранения]", и "w" — таким образом создаем .com файл, куда сохранятся коды команд и коды наших данных. Проблема решена .
E>И ещё, как сохранять не в .com, а в .exe файлы?
Никак, видимо. Утилита DEBUG.EXE работает только с .com файлами, но не с .exe
Здравствуйте, Epsilon, Вы писали:
E>Никто мне не ответил, поэтому отвечу себе сам, т.к. уже разобрался в вопросе, а кто-то в будущем может быть и отыщет по поиску
E>Далее командой "r CX" ; "[100 (размер кода команд) + размер размещенных Вами данных в 16-ной системе счисления]" ; "n [имя файла для сохранения]", и "w" — таким образом создаем .com файл, куда сохранятся коды команд и коды наших данных. Проблема решена .
Вот прогресс... К 2008 году....
В Висте дебуга нет. А то раньше это был способ создавать исполняемые образы при наличии только командной стороки.... Так прямо из редирекции поднимали асемблерный код. И клали его на таргете в бинарник... Но поезд ущел, Debug убрали....
Здравствуйте, Andrew.W Worobow, Вы писали:
AWW>В Висте дебуга нет. А то раньше это был способ создавать исполняемые образы при наличии только командной стороки.... Так прямо из редирекции поднимали асемблерный код. И клали его на таргете в бинарник... Но поезд ущел, Debug убрали....
На самом деле, debug из Vista не убрали! Это элементарно можно проверить. А вот NTSD почему-то уже нет... Странно.
Здравствуйте, bugcheck, Вы писали:
B>На самом деле, debug из Vista не убрали! Это элементарно можно проверить. А вот NTSD почему-то уже нет... Странно.
Здравствуйте, Andrew.W Worobow, Вы писали:
AWW>Здравствуйте, bugcheck, Вы писали:
B>>На самом деле, debug из Vista не убрали! Это элементарно можно проверить. А вот NTSD почему-то уже нет... Странно.
AWW>Не убрали? А где он? в 64-битной нет.
Ну, значит, в 64-битной убрали, а в 32-х битной — нет. Лежит в %SystemRoot%\System32\
Здравствуйте, bugcheck, Вы писали:
AWW>>Не убрали? А где он? в 64-битной нет. B>Ну, значит, в 64-битной убрали, а в 32-х битной — нет. Лежит в %SystemRoot%\System32\
Значит всё ещё тупят... 2008 год. Схема хрен знает какого лохматого года, а работает... Проговорился я однако ...
Здравствуйте, Andrew.W Worobow, Вы писали:
E>>Никто мне не ответил, поэтому отвечу себе сам, т.к. уже разобрался в вопросе, а кто-то в будущем может быть и отыщет по поиску
E>>Далее командой "r CX" ; "[100 (размер кода команд) + размер размещенных Вами данных в 16-ной системе счисления]" ; "n [имя файла для сохранения]", и "w" — таким образом создаем .com файл, куда сохранятся коды команд и коды наших данных. Проблема решена .
AWW> Вот прогресс... К 2008 году....
Просто я неожиданно вспомнил про это сообщение, глянул, а никто так и не ответил.
Ну, думаю, лучше поздно, чем никогда
Здравствуйте, Epsilon, Вы писали:
AWW>> Вот прогресс... К 2008 году....
E>Просто я неожиданно вспомнил про это сообщение, глянул, а никто так и не ответил.
Нет-нет. Не воспринимайте мои смайлики и ахи-охи негативно на ваш счет. Я просто хотел сказать что ДОСовская прога DEBUG позволяющая создавать бинарники их исходных текстов, существующая еще наверное с конца 80-ых... Пролежала в виндах аж 20 лет. Причем нужность её равна нулю. Если кто помнит про первого значимого червяка, который компилил себя сам на таргете из-за невозможности бинарной совместимости, то ситуация с DEBUG в 2008 году покажется смешной. Дело в том, через эту его возможность можно делать вирусы которые могут размножаться в виде исходных текстов, например. Но в 64-битоной висте это уже на актуально.