Turbo Debugger 5.0: Руководство по применению, при выполнении лабораторных работ, страница 2

3. Режим непрерывного исполнения до заданного положения

                                     курсора.

Этот режим позволяет начать пошаговую отладку, начиная с любого заданного места программы. Адрес команды, с которого пользователь желает начать пошаговую отладку отмечается маркерной полосой. После этого программа запускается нажатием клавиши F4 или опцией Gotocursor. При этом программа исполняется  в непрерывном режиме до команды, отмеченной маркерной полосой, не выполняя ее. Дальше пользователь осуществляет пошаговую отладку. Использовать этот режим очень удобно в случае, когда приходится прерывать отладку достаточно большой программы, и в дальнейшем продолжать отладку частично уже отлаженной программы.

4. Режим исполнения программы под управлением контрольных

                                             точек.

В общем случае, под контрольными точками понимаются заранее заданные пользователем адреса команд программы, по достижении которых, при выполнении программы, выполняются некоторые заданные действия при выполнении также заранее заданных условиях.

Следовательно, рассматриваемый режим исполнения программы позволяет выполнять программу с остановкой ее в заранее заданных контрольных точках. Эти точки задаются пользователем перед запуском программы на исполнение. Простейший способ задания контрольных точек с выполнением останова выполнения программы заключается в том, что маркерная полоса (или маркер, при установке контрольных точек в исходном файле программы) устанавливается на выбранных командах и нажимается клавиша F2. Выбранные строки выделяются другим цветом.

Ликвидация установленных контрольных точек осуществляется путем повторной установки маркерной полосы на этих командах и также нажатия управляющей клавиши F2.

Запуск программы на исполнение после расстановки контрольных точек осуществляется путем нажатия управляющей клавиши F9.  После остановки программы по достижении контрольной точки, анализируется состояние регистров процессора и ячеек оперативной памяти, после чего программа снова запускается на исполнение либо в непрерывном режиме до следующей контрольной точки, либо в режиме пошагового исполнения.

Более сложные режимы работы исполнения программы с использованием контрольных точек можно осуществить, используя возможности опции Breakpoint глобального меню.

Действия (Action), которые, в общем случае, реализуются при срабатывании контрольных точек, могут быть заданы следующие:

- Break (прекращение выполнения программы);

- Execute (вычисление заданного выражения);

- Log   (регистрация    значения   переменной  или  результата вычисления заданного выражения в окне регистрации (Log Window);

- Enablegroup (разрешение   функционирования  заданной группы контрольных точек);

- Disablegroup  (запрещение  функционирования  заданной группы контрольных точек).

При этом могут быть заданы следующие условия срабатывания (Conditions) контрольных точек:

- Always (безусловное срабатывание контрольной точки);

- Changedmemory       (срабатывание   при условии   изменения заданной области памяти);

- Expressiontrue (срабатывание при реализации истинности заданного выражения).

Кроме того, контрольная точка может быть задана как глобальная (Global). Это означает, что она может встретиться на каждой строке исходного файла (модуля) программы (или по адресу каждой инструкции исполнительного файла). Это позволяет вам следить за значением переменной при исполнении каждой строки исходного файла программы, или останавливать выполнение программы, когда переменная или область памяти изменяет свою величину.

Контрольные точки могут быть заданы еще и как проходные (PassCount) и тогда они характеризуются еще и тем, что срабатывают не сразу после первого их достижения, а должны быть пройдены заданное число раз, прежде чем они сработают. Это условие совместимо с любым другим условием, которое может быть задано. При этом счетчик проходов такой контрольной точки декрементируется только при выполнении этого другого условия.

Прервать выполнение программы, при любом из указанных четырех режимах работы, можно нажав клавиши Ctrl-F2 (опция ProgramReset).

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

Информация на экране отладчика TD отображается в окнах и выделенных в них панелях. В каждый момент времени активным может быть только одно из них. Активирование любого окна (панели) осуществляется щелчком левой кнопки мыши в любой видимой точке панели.

Управление работой отладчика осуществляется с помощью системы  меню. В TD используется два типа меню: Глобальное меню и Локальное меню.

- Глобальное меню представлено в виде строки в верхней части экрана и доступно все время.  При клавишном управлении переход в глобальное меню осуществляется путем нажатия клавиши F10. После этого продвижение по опциям меню производится клавишами- стрелками, а активирование опции – клавишей Enter. Можно, также, одновременно нажать клавишу F10 и клавишу с первой буквой элемента меню (F,V,R,B,D,O,W,H). Например, для активирования меню File нажимаются клавиши Alt-F. Меню Ё (System) будет активировано при нажатии клавиш Alt-пробел.

При использовании манипулятора «мышь», выбирается требуемая опция глобального меню и активируется щелчком левой кнопки мыши.

- Локальное меню. Для каждой панели в окнах отладчика можно вызвать ее собственное, локальное меню. Для этого надо сначала активировать данную панель и после этого вызвать его меню. При клавишном управлении, последовательное активирование (инициирование) панелей в каком либо окне осуществляется нажатием клавиши Tab, а вызов меню этой панели – нажатием клавиш Alt-F10. Ликвидация меню в данной панели происходит при нажатии клавиши Esc.