Ассемблер и программирование для IBM PC


          

и поэтому размер программы будет


хххх:0106 C3 RET
Эта команда однобайтовая и поэтому размер программы будет равен 106 (конец) минус 100 (начало), т.е. 6. ъ запросить регистр CX командой: R CX [Return] ъ отладчик выдаст на этот запрос CX 0000 (нулевое значение) ъ указать длину программы - 6, ъ записать измененную программу: W [Return]
В обоих случаях DEBUG выдает сообщение "Writing nnnn bytes." (Запись nnnn байтов). Если nnnn равно 0, то произошла ошибка при вводе длины программы, и необходимо повторить запись cнова.
ОСНОВНЫЕ ПОЛОЖЕНИЯ НА ПАМЯТЬ ------------------------------------------------------------
Отладчик DOS DEBUG это достаточное мощное средство, полезное для отладки ассемблерных программ. Однако следует быть осторожным с ее использованием, особенно для команды E (ввод). Ввод данных в неправильные адреса памяти или ввод некорректных данных могут привести к непредсказуемым результатам. На экране в этом случае могут появиться "странные" символы, клавиатура заблокирована или даже DOS прервет DEBUG и перезагрузит себя с диска. Какие либо серьезные повреждения вряд ли произойдут, но возможны некоторые неожиданности, а также потеря данных, которые вводились при работе с отладчиком.
Ассемблер для IBM PC. Глава 2 43
Если данные, введенные в сегмент данных или сегмент кодов, оказались некорректными, следует, вновь используя команду E, исправить их. Однако, можно не заметить ошибки и начать трассиpовку программы. Но и здесь возможно еще использовать команду E для изменений. Если необходимо начать выполнение с первой команды, то следует установить в регистре командного указателя (IP) значение 0100. Введите команду R (register) и требуемый регистр в следующем виде:
R IP [Return]
Отладчик выдаст на экран содержимое регистра IP и перей дет в ожидание ввода. Здесь следует ввести значение 0100 и нажать для проверки результата команду R (без IP). 0тладчик выдаст содержимое регистров, флагов и первую выполняемую команду. Теперь можно, используя команду T, вновь выполнить трассировку программы. Если ваша программа выполняет какие-либо подсчеты, то возможно потребуется очистка некоторых облостей памяти и регистров. Но yбедитесь в сохранении содержимого регистров CS, DS, SP и SS, которые имеют специфическое назначение. Прочитайте в руководстве по DOS главу о программе DEBUG. В настоящий момент рекомендуется: вводный материал и следующие команды oтладчика: дамп (D), ввод (E), шестнадцатиричный (H), имя (N), выход (Q), регистры (R), трассировка (T) и запись (W). Можно oзнакомиться также и с другими командами и проверить как они работают.

Содержание  Назад  Вперед