Основы работы с отладчиком Turbo Debugger, страница 4

В процессе работы Turbo Debugger в нем могут быть открыты несколько окон. Основным из них является окно отладки, показывающее код, выполняемый процессором (окно CPU). Это окно разбито на несколько частей. Большую часть окна занимает дизассемблированный машинный код, представленный в виде последовательности ассемблерных инструкций. В этом листинге собственно коду предшествует его адрес относительно сегмента кода (в виде CS:XXXX, где XXXX – смещение данной инструкции), а также машинный код, соответствующий этой инструкции. Справа от этой части окна находится другая часть, показывающая содержимое регистров процессора. В отдельной колонке представлено содержимое регистра флагов. При изменении значения какого-либо регистра или флага в результате выполнения инструкции соответствующий регистр или флаг выделяется другим цветом. Две других части окна предназначены для отображения содержимого сегмента данных (слева) и сегмента стека (справа).

Посредством пункта меню View могут быть открыты и другие окна, в частности: окно просмотра наблюдаемых значений (Watches), окно просмотра значений переменных в программе (Variables), окно для шестнадцатеричного дампа (просмотра содержимого) памяти (Dump), окно просмотра содержимого стека (Stack). Приемы работы с этими окнами полностью идентичны приемам работы с окнами в других IDE фирмы Borland.

В случае, если отлаживаемая программа содержит отладочную информацию (использовались ключи /zi компилятора Turbo Assembler и /v компоновщика Turbo Link), в отдельном окне будет представлен исходный текст программы. При этом положения курсора в окне CPU и в окне с исходным текстом будут синхронизированы, что позволяет, передвигаясь по исходному тексту, наблюдать в окне CPU соответствующий ему машинный код.

Если имя отлаживаемой программы не было указано в командной строке при запуске Turbo Debugger, то загрузку кода программы следует выполнить явно посредством пункта меню Open в меню File. После загрузки программы в Turbo Debugger в окне CPU курсор будет установлен на инструкцию, находящуюся в точке входа в программу. Начиная с этого момента можно приступать к отладке. Собственно отладка осуществляется двумя способами: трассировкой (пошаговым выполнением) кода программы, либо установкой точек прерывания (breakpoints) в коде программы с последующим выполнением до контрольной точки. В первом случае используются клавиши F7 (Trace) для детальной трассировки программы. В этом случае будет выполнена каждая инструкция программы, включая вызовы процедур и обработчиков прерываний. Для пропуска вызовов процедур можно использовать пошаговое выполнение (Step) посредством клавиши F8. Клавиша F9 (Run) просто запускает код на выполнение, а клавиша F4 (Here) позволяет выполнить код до того места, где в данный момент расположен курсор.