Тема 3.6 Программы отладчики. Debug — КиберПедия 

Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Тема 3.6 Программы отладчики. Debug

2017-06-11 153
Тема 3.6 Программы отладчики. Debug 0.00 из 5.00 0 оценок
Заказать работу

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

Для отладки программ написанных на ассемблере применяют программу отладчик – DEBUG, которая поставляется с операционной системой.

 

Основные команды DEBUGa

Запуск программы Debug производится debug.exe из командной строки. После запуска программы на экране монитора появится - и мигающий курсор _. Программа готова к выполнению. Список основных команд DEBUGa можно получить введя символ?, который приведен на рис.3.6.1., для выхода из отладчика DEBUGa вводится Q.

 

рис. 3.6.1.

Для просмотра всех регистров процессора необходимо набрать r и на экране монитора отобразится текущее содержимое регистров процессора рис.3.6.2, где отображены содержимое общих регистров, состояние регистра флагов (nu up ei pl nz na po nc), адрес команды, которая будет выполняться 0aed:0100 (cs:ip cs=0aed ip=0100), машинный код команды 74d0, символьный код, мнемонический код команды JZ (условный переход по флагу Z) и величина изменения содержимого ip 00d2

 

рис. 3.6.2

 

При работе с DEBUGом могут возникать ошибки в синтаксисе написание команд, проверьте правильность написания и исправьте. В данном случае пропущено =

Нужно написать – t=0aed:0100,4

Команда r (register – регистр) без расширения отображает содержимое всех регистров процессора, с указанием регистра изменяет его содержимое рис.3.6.3

 

рис.3.6.3

 

В нашем случае содержимое регистра DX поменяли с 0000 на 3456.

Команда A (ассемблировать) позволяет писать (изменять) команды по указанному адресу (полный логический адрес памяти). ¯ - ввод (enter)

-A 0aed:0100 ¯

-0aed:0100 JZ 00d2 ¯

Команда U (деассемблировать) выводит содержимое памяти в виде команд указывается полный логический адрес начала и конца выводимой памяти рис.3.6.4

 

рис.3.6.4

 

Команда D (dump) выводит на экран монитора содержимое памяти 16 виде, указывается полный логический адрес начала и конца отображаемой памяти рис.3.6.5

 

0 1 2 3 4 5 6 7 8 9 a b c d e f

номер байта

содержимое ячеек памяти

адрес памяти содержимое ячеек памяти в 16 виде в коде ASCII

рис.3.6.5

 

Команда T (trace) пошаговое выполнение программы с распечаткой содержимого регистров процессора. При вводе t без расширения, выполняется только одна команда текущая. Расширение Т: Т=сссс:дддд, нн где сссс: дддд – полный адрес команды с которой начнётся трассировка (сссс- сегмент, дддд- смещение), нн- количество шагов, выполняемых команд рис. 3.6.6

 

рис. 3.6.6

 

Команда G (go) – выполняет команды с (полный адрес команды) по полные адреса команд останова, их может быть несколько до10

-g=0aed:0100,0aed:0121,0aed:00da

 

ВНИМАНИЕ!!! Неправильная адресация останова может привести к зависанию машины и перезагрузки.

 

Команда m (move) перемещает данные в памяти с адреса (полный) по адрес (полный) в область памяти определяемым адресом (полный).

 

- m 0aed:0100, 0aed:0400,1000:0700

 

Команды L, N, W предназначены для работы с внешней памятью (hdd, fdd и т.д)

Команда L– загружает из внешней памяти по адресу (полный адрес) оперативной памяти, указывается объём в байтах.

Команда N- присваивает области памяти (начальный, конечный адрес) имя для создания файла.

Команда W – загружает из оперативной памяти (полный адрес), количество (объем в байтах) во внешнюю память.

Команды XA, XD, XM, XS используются для работы с оперативной памятью в защищенном режиме.

 


Поделиться с друзьями:

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.011 с.