24439

Отладчики программ

Контрольная

Информатика, кибернетика и программирование

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

Русский

2014-10-12

43.5 KB

30 чел.

1. Отладчики программ.

Существует множество отладчиков такие, как DEBUG, SYMDEB, CODEVIEW, NTiceSET, SUPER TRACER, TRW, Soft-ICE.

В данном разделе рассматривается отладчик Turbo Debugger.

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

Turbo Debugger позволяет отлаживать программы для Microsoft Windows, Windows 32s, Windows NT и DOS. Многочисленные перекрывающие друг друга окна, а также сочетание спускающихся и раскрывающихся меню обеспечивают быстрый, интерактивный пользовательский интерфейс. Интерактивная, контекстно-зависимая справочная система обеспечит подсказкой на всех стадиях работы. Кроме того, Turbo Debugger имеет полный набор средств отладки:

  •  Вычисление любых выражений языка Си, C++, Pascal и Assembler.
  •  Полное управление выполнением программы, включая программную анимацию.
  •  Доступ на нижнем уровне к регистрам процессора и системной памяти.
  •  Полные средства проверки данных.
  •  Развитые возможности задания точек останова и регистрации.
  •  Трассировка сообщений Windows, включая точки останова по сообщениям.
  •  Обратное выполнение.
  •  Поддержка удаленной отладки, в том числе для Windows.
  •  Полная поддержка объектно-ориентированного программирования, включая просмотр классов и проверку объектов.
  •  Макрокоманды в виде последовательности нажатий клавиш, ускоряющие выполнение команд.
  •  Копирование и вставка между окнами и диалогами.
  •  Контекстно-зависимые меню.
  •  Возможность отладки больших программ.
  •  Диалоговые окна, позволяющие вам настроить параметры отладчика.
  •  Возможность отладки 16- и 32-разрядных программ Windows (для 32-разрядной отладки имеется отладчик TD32).
  •  Обработка исключительных ситуаций операционной системы, а также С и С++.
  •  Сохранение сеанса.
  •  Поддержка нитей для мультинитевого программирования Windows NT.
  •  Возможность подключения готовых к выполнению в Windows процессов.

Запуск отладчика После компиляции и компоновки программ с включением отладочной информации можно начать процесс отладки, запустив Turbo Debugger и загрузив с ним программу. При этом можно использовать один из трех отладчиков: TD.EXE для отладки 16-разрядных приложений DOS, TDW.EXE для отладки 16-разрядных приложений Windows и TD32.EXE для отладки 32-разрядных приложений Windows.
При запуске Turbo Debugger из командной строки можно задать параметры запуска и режимы отладки. Эта командная строка имеет следующий синтаксис:

TD  TDW  TD32 [параметры] [имя_программы [аргументы]]

При выполнении TDW (или TD32 в Windows 32s) отладчик открывает полноэкранное текстовое окно. Однако, в отличие от других приложений, вы не можете использовать в Turbo Debugger клавиши Windows Alt+Esc или Ctrl+Esc, то есть смена задач здесь запрещена. Однако в Windows NT TD32 активизирует окно с командной подсказкой, и доступны все обычные средства приложения Windows.

В процессе отладки управление периодически передается между программой и отладчиком. Когда управление передается Turbo Debugger, он может использовать свои средства для поиска по исходному коду и структурам данных программы и выявления причины неправильного выполнения программы. Для этого можно использовать меню и окна отладчика. Отладчик предоставляет много способов управления выполнением программы:

  •  выполнять программу по шагам (по одной машинной инструкции или строке исходного кода);
  •  выполнять как один шаг вызовы функций;
  •  выполнять программу до заданного места;
  •  выполнять программу до возврата из текущей функции;
  •  трассировать программу;
  •  выполнять программу в обратном направлении;
  •  выполнять программу до точки останова;
  •  выполнять программу до появления определенного сообщения Windows;
  •  приостанавливать программу при возникновении исключительной ситуации С++ или Си.

При выполнении программы можно получить доступ к отладчику. Это полезно использовать, когда в программе не установлены точки останова. Если при возврате в Turbo Debugger вы увидите окно CPU без соответствующих программе инструкций, то возможно вы находитесь в коде ядра Windows. При этом следует установить точку останова в том месте, где должна выполняться ваша программа.

Отладчик SoftIce SoftIce - это универсальный отладчик, которым можно отладить любой код, включая подпрограммы прерывания и драйверы ввода-вывода. SoftIce состоит из отладчика уровня ядра (kernel mode debugger) и утилиты загрузки отладочной информации (Symbol Loader). SoftIce имеет следующие возможности:

  •  Символьная отладка 32-битных приложений, отладка драйверов устройств для WIN NT, драйверов для WIN95, VxD, 16-битных программ для DOS и Windows.
  •  Отладка фактически любого кода, включая подпрограммы прерывания и внутренние подпрограммы WIN 95 и WIN NT.
  •  Установка точек останова на сообщения Windows, операции чтения/записи в память, чтения/записи портов ввода-вывода, прерываний.
  •  Установка точек останова, срабатывающих при определенных условиях (условных точек останова), и действий, которые должны произойти при срабатывании точки останова.

Способен распознавать функции api с перечислением необходимых параметров.  И многое другое

2. Параллельный и последовательный порты ЭВМ.

Порты P0-P3 являются двунаправленными портами ввода-вывода и предназначены для обеспечения обмена информацией ОМЭВМ с внешними устройствами, образуя 32 линии ввода – вывода. Каждый из портов содержит фиксатор-защелку который представляет собой 8-разрядный регистр, имеющий байтовую и однобитовую адресацию. Для установки(сброса) разрядов с помощью программного обеспечения.

Физические адреса фиксаторов P0-P3 составляют для:

Р0   -80Н, при битовой адресации 80Н-87Н;

Р1   -90Н, при битовой адресации 90Н-97Н;

Р2   -A0Н, при битовой адресации А0Н-А7Н;

Р3   -B0Н, при битовой адресации B0Н-B7Н;

Последовательный порт ОМЭВМ может использоваться в виде регистра сдвига для расширения ввода-вывода или в качестве универсального приемопередатчика с фиксированной или переменной скоростью последовательного обмена и возможностью дуплексного включения. Последовательный порт может принимать очередной байт, даже если принятый до этого  байт не был прочитан из регистра приемника.

Последовательный порт может работать в 4-х режимах:

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

В режиме 1 информация передается через выход передатчика TxD и принимается через вход приемника RxD

В режиме 2 информация передается через выход передат-TxD принимается через вход приемника RxD. Формат посылкики – 11 бит. Частота приема и передачи в режиме 2 задается программно и может быть равна fBQ/32 или fno/64.

Режим 3 полностью идентичен режиму 2 за исключением параметров частоты приема и передачи, которые в режиме 3 задаются Т/С 1. Схема синхронизации и временные диаграммы, иллюстрирующие работу последовательного порта, показаны на рис. 40.

Регистр управления (SCON) предназначен для приема и хранения кода 8-битного слова, управляющего последовательным интерфейсом. Обозначение разрядов регистра SCON приведено в табл. 24. Все разряды регистра SCON программно доступны по записи («0» и «1») и чтению.


 

А также другие работы, которые могут Вас заинтересовать

35276. Тема: Використання бібліотечних функцій для роботи із символьними даними Ціль роботи: виробити практичні н. 54 KB
  Лабораторна робота № 24 Тема: Використання бібліотечних функцій для роботи із символьними даними Ціль роботи: виробити практичні навички в написанні програм з використанням бібліотечних функцій для роботи із символьними даними. Обладнання: ПКПО Borlnd C Хід роботи ТБ КОТ 1.Підготуватися до захисту лабораторної роботи вивчивши питання по даній темі.Який заголовний файл необхідний для роботи з бібліотечними функціями обробки символьних даних 2.
35277. Вкладені цикли. Багатомірні масиви. Масиви покажчиків 54.5 KB
  Показати використання різних видів синтаксичних конструкцій включаючи індексні вираження і покажчики на тип елементів масиву для доступу до елементів масиву. Поясните організацію збереження елементів масиву.Як відбувається масштабування при послідовному разіменування покажчика імені масиву у процесі доступу до елементів Які синтаксичні конструкції можна використовувати для доступу до елементів масиву 3.Приведіть загальну формулу для масиву Тип Ім'я [N][M][K] при доступі до заданого елемента Ім'я [i][j][k] і поясните її.
35278. Тема: Розробка програм зі складеними типами даних Ціль: виробити практичні навички в написанні програм з ви. 77 KB
  Як виробляється ініціалізація данчленів структури Які особливості ініціалізації масивів і структурчленів структури вкладених структур 6.Чи можна робити неповну ініціалізацію структури не для всіх членів структури 7.У чому відмінність об'єднання від структури 13.Як здійснюється доступ до данчленів структури об'єднання 14Як здійснюється доступ до данчленів структури розташованої в масиві структур.
35279. Тема: Використання покажчиків для роботи зі складеними типами даних Ціль роботи: виробити практичні навичк. 79 KB
  Використовувати покажчики як члени структури а також для доступу до членів структури і роботи з ними.Чи можна використовувати масиви і структури як данчлени структур вкладені оголошення 3.Чи можна використовувати в якості вкладені структури що повідомляється свого типу а також покажчики на структури свого типу 4.Як оголосити покажчик на структуру масив покажчиків на структури Чи існують різні варіанти оголошення 5.
35280. Тема: Використання покажчиків для роботи з функціями Ціль роботи: виробити практичні навички в написанні п 56.5 KB
  Використовувати покажчики для виклику відповідних функцій.Чи можна використовувати покажчики для передачі даних у функції 2.Чи можна використовувати покажчики для роботи з функціями різного типу 7.Як використовувати покажчики для виклику функції 10.
35281. Тема: Розробка програм з використанням класів Ціль роботи: вивчити синтаксичні конструкції для оголошення. 66.5 KB
  Відповідно до індивідуального завдання розробити структуру класу зробити визначення функційчленів класу clss розробити алгоритм використання об'єктів і покажчиків на об'єкти класу для доступу до даних і функцій членам. Перевірити можливість доступу до членів класу в розділах privte public protected.Дайте визначення поняттям: об'єкт клас данчлени класу функціїчлени класу.У чому відмінність між класом і об'єктом класу 3.
35282. Тема: Використання конструкторів і деструкторів Ціль роботи: вивчити і навчитися використовувати механізм. 64.5 KB
  Лабораторна робота № 31 Тема: Використання конструкторів і деструкторів Ціль роботи: вивчити і навчитися використовувати механізм роботи з конструкторами і деструкторами. Відповідно до індивідуального завдання для попередньої лабораторної роботи розробити конструктори і деструктор для заданого класу. Здійснити ініціалізацію об'єктів класу різними конструкторами. 7 Базовий клас Похідний клас Похідний клас транспортний засіб літак дельтоплан Контрольні запитання Навіщо використовуються конструктори і деструктори Яке ім'я має конструктор і...
35283. Використання спадкування для створення ієрархії класів 71.5 KB
  Відповідно до індивідуального завдання розробити структуру базового класу і спадкоємців не менш 3х похідних класів на двох рівнях ієрархії.Скільки базових класів може бути в похідного класу 6.Чи можна задавати специфікатори для базових класів при спадкуванні оголошення довільного класу 8.Як змінюється доступ до елементів базового класу при спадкуванні з різними специфікаторами доступу: з розділів класу із програми з інших класів 9.
35284. Використання віртуальних і покажчиків для роботи з обєктами класів 60.5 KB
  Відповідно до індивідуального завдання на базі лабораторної роботи №22 розробити алгоритм роботи з обєктами базових і похідних класів з використанням покажчиків на базові і похідні класи. 3.При необхідності довести ієрархію класів до 3-4-х рівнів.