
- •Турбо отладчик
- •1 Вызов отладчика
- •2 Подготовка программы
- •Турбо Си
- •3 Система меню
- •4 Классификация окон
- •5 Перемещение окон
- •Информационные окна
- •6.1 Окно модулей
- •6.2 Окно обзора (наблюдений)
- •6.3 Окно ловушек
- •6.4 Окно вызовов
- •6.5 Окно сообщений
- •6.6 Окно переменных
- •6.7 Окно файлов
- •6.8 Окно процессора
- •6.9 Окно памяти
- •8 Составление выражений
- •Турбо Си
- •Турбо Паскаль
- •Турбо Ассемблер
- •Редактирование
- •9 Опции меню
- •Клавиши Функции
- •10 Главное меню
- •Локальное меню
- •Локальное меню
- •Локальное меню
- •Logging Включение/выключение регистрации сообщений Add comment Вывод указанного комментария в окно сообщений.
- •Локальное меню
- •Локальное меню
- •Локальное меню
- •Локальное меню
- •Локальное меню рамки Code
- •Локальное меню рамки Stack
- •Локальное меню рамки Data
- •Локальное меню рамки Register
Турбо отладчик
Существенным расширением возможностей, предлагаемых системой Турбо, является программа отладчика (англ. debugger).
Отладчик Турбо принадлежит к категории символьных отладчиков высокого уровня. Он позволяет, кроме прочего:
- следить за итоговой программой;
- выполнять программу в шаговом режиме (команду за командой, процедуру за процедурой или до останова);
- расставлять ловушки, в том числе ловушки местные и глобальные;
- выявлять значения переменных;
- обозначать значения выражений, содержащих обращения к переменным базовой программы;
- следить за приписыванием данных и вызовами процедур;
- выявлять развитие инструкций ассемблера, содержимое ячеек оперативной памяти и регистров процессора и сопроцессора;
- знакомиться с содержанием текстовых файлов;
- регистрировать и воспроизводить последовательности нажатий клавиш (макроопределения и макровызовы);
- преобразовать конфигурацию расположения окон отладчика;
- использовать расширенную память, а также средства для вспомогательной отладки (дистанционное и техническое оборудование).
1 Вызов отладчика
Вызов отладчика имеет вид
TD opt name args,
где opt являются опциями, name - именем запускаемой программы, а args -ее аргументами.
Опции могут быть указаны явно в директиве TD или приняты по умолчанию из файла конфигурации TDCONFIG. Этот файл можно создать с помощью программы установки TDINST или непосредственно при отладке (Options/Save). Файл конфигурации разыскивается последовательно: 1) в текущем каталоге; 2) в каталоге, определенном с помощью TDINST; 3) в каталоге, содержащем отладчик. Если файл конфигурации не будет найден, то будут использованы предложения по умолчанию.
Пример. Использование программы установки
Поскольку отладчик не имеет встроенного редактора, его можно указать специально. С этой целью необходимо вызвать программу TDINST, в которой после выбора опции Options и Editor можно указать директиву системы DOS, активизирующую выбранную редакторскую программу, например
C:\UTIL\SEE.
Если после выполнения такой установки (ведущей к запоминанию в отладчике имени указанного редактора) требуется осуществление редактирования определенного файла name, то это реализуется с помощью директивы
C:\UTIL\SEE name
и тем самым вызывается редактор.
2 Подготовка программы
Способ подготовки программы, которая должна быть отлажена, зависит от того, используются ли интегрированные средства либо внешние директивы.
В первом случае необходимо выполнить компиляции со следующими опциями:
Турбо Си
Debug/Source debugging On,
во втором - выполнить компиляции с соответственно выбранной опцией.
Турбо Паскаль
Debug/Standalone debugging On
Options/Compiler/Debug Information On
Options/Compiler/Local Symbols On
(последняя из указанных опций необходима только тогда, когда подразумевается символьное обращение к локальным переменным функции и процедур);
Турбо Си: -v
Турбо Паскаль: /v
Турбо Ассемблер: /zi.
Если компиляции подлежит программа на языке ассемблер, то необходимо скомпоновать ее, используя, компоновщик TLINK, вызванный с опцией /v.
Поскольку условием работы отладчика является доступ к базовым модулям, необходимо обеспечить, чтобы эти модули находились в области действия отладчика. Имея это в виду, необходимо помнить, что файлы, содержащие базовые модули, разыскиваются последовательно: 1) в каталоге, в котором находился их компилятор; 2) в каталоге, определенном с помощью опции Options/Path; 3) в текущем каталоге; 4) в каталоге, из которого запускается программа.
Если базовый набор не будет найден, то отладка может происходить только на уровне команд ассемблера. В таком случае непосредственно после вызова отладчика на экране появляется окошко CPU, содержащее команды ассемблера, а не, как обычно, окошко Module, содержащее базовые инструкции.
Остается добавить, что отладчик может быть вызван также и без указания имени файла. Тогда его визитная карточка высвечивается на фоне окна CPU. Такая визитная карточка появляется также тогда, когда запускаемая исполнительная программа не содержит информации, позволяющей осуществить отладку (поскольку, например, компоновка выполнена без опции /v).
Внимание: Поскольку отладчик является универсальной программой, приспособленной для отладки программ, написанных на разных языках программирования, то в приведенном ниже описании будет использована следующая терминология:
- базовые модули языка Си и ассемблера, а также библиотечные модули языка Паскаль будут называться модулями;
- функции языка Си, а также функции и процедуры языка Паскаль будут называться процедурами.