Инфоурок / Информатика / Презентации / Презентация по курсу Архитектура компьютерных систем на тему "Работа в программе Debug"

Презентация по курсу Архитектура компьютерных систем на тему "Работа в программе Debug"



Московские документы для аттестации!

124 курса профессиональной переподготовки от 4 795 руб.
274 курса повышения квалификации от 1 225 руб.

Для выбора курса воспользуйтесь поиском на сайте KURSY.ORG


Вы получите официальный Диплом или Удостоверение установленного образца в соответствии с требованиями государства (образовательная Лицензия № 038767 выдана ООО "Столичный учебный центр" Департаментом образования города МОСКВА).

ДИПЛОМ от Столичного учебного центра: KURSY.ORG


библиотека
материалов
Работа в программе debug
Программа DEBUG DEBUG – это системная программа, позволяющая выполнять просмо...
Программа DEBUG Основное назначение этой программы – отладка программ на уров...
Минимально необходимый набор включает команды: –  (A)SSEMBLE – ассемблировани...
Команда ассемблирования (перевод мнемокода ассемблера в машинный код) Отладчи...
Ассемблирование (продолжение) После введения команды ассемблирования на экран...
Полный логический адрес команды Инструкция ассемблера 0976:0100 MOV AL,2A 097...
Команда дизассемблирования (перевод машинного кода в мнемокод ассемблера) Ком...
Дизассемблирование (продолжение) В командной строке UNASSEMBLE можно не указы...
Дизассемблирование (продолжение) Результатом выполнения команды дизассемблиро...
Полный логический адрес команды Значение составляющих команду байтов в машинн...
Команда ввода данных в память Команды ENTER позволяет побайтно корректировать...
Пример -e DS:0000 20 2A 44 41 54 41 20 'IS' 20 48 45 52 45 2A 20 Команда ввод...
Команда ENTER может использоваться для отображения и, в случае необходимости,...
Команда вывода содержимого участка памяти на экран Команда DUMP (d или D) слу...
Пример -d 0958:0100 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ............
Команда просмотра и изменения содержимого регистров Команда REGISTER (r или R...
Команда пошагового выполнения программы Команда TRACE (t или T) – трассировка...
Команда задания имени файла программы Команда NAME (n или N) присваивает имя...
Команда загрузки файла в память Загрузка файла в память осуществляется, если...
Команда записи области памяти в файл Команда WRITE (w или W) переписывает на...
Команда выхода из отладчика Чтобы выйти из отладчика и передать управление оп...
Задания для самостоятельного выполнения Введите команду: -e DS:0000 40 6A 24...
Средствами Windows cоздайте на диске С: файл my.txt (если не получится сдела...
24 1

Описание презентации по отдельным слайдам:

№ слайда 1 Работа в программе debug
Описание слайда:

Работа в программе debug

№ слайда 2 Программа DEBUG DEBUG – это системная программа, позволяющая выполнять просмо
Описание слайда:

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

№ слайда 3 Программа DEBUG Основное назначение этой программы – отладка программ на уров
Описание слайда:

Программа DEBUG Основное назначение этой программы – отладка программ на уровне машинных кодов и языка ассемблера. DEBUG – это программа, работающая по принципу "команда – действие", т.е., чтобы произвести некоторую операцию отладчик должен получить соответствующую команду. В качестве сигнала о готовности принять команду, отладчик посылает на экран стандартный запрос – дефис (-).

№ слайда 4 Минимально необходимый набор включает команды: –  (A)SSEMBLE – ассемблировани
Описание слайда:

Минимально необходимый набор включает команды: –  (A)SSEMBLE – ассемблирование; –  (U)NASSEMBLE – дизассемблирование; –  (E)NTER – ввод данных в память; –  (D)UMP – вывод содержимого участка памяти на экран; –  (R)EGISTER – просмотр и изменение содержимого регистров; –  (T)RACE – пошаговое выполнение программы; –  (N)AME – задание имени файла программы; –  (L)OAD – загрузки файла в память; –  (W)RITE – запись области памяти в файл; –  (Q)UIT – выход из отладчика.

№ слайда 5 Команда ассемблирования (перевод мнемокода ассемблера в машинный код) Отладчи
Описание слайда:

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

№ слайда 6 Ассемблирование (продолжение) После введения команды ассемблирования на экран
Описание слайда:

Ассемблирование (продолжение) После введения команды ассемблирования на экране появляется начальный адрес. Это сигнал на введение первой команды программы. Если команда введена без ошибок, на экран выдается адрес следующей команды и отладчик опять переходит в режим ожидания. В случае ошибки отладчик обозначает ее месторасположение. Если введены все команды программы, то нажимается Enter – команда ASSEMBLE заканчивает работу и возвращает управление отладчику

№ слайда 7 Полный логический адрес команды Инструкция ассемблера 0976:0100 MOV AL,2A 097
Описание слайда:

Полный логический адрес команды Инструкция ассемблера 0976:0100 MOV AL,2A 0976:0102 MOV DI,0200 0976:0105 MOV CX,001D 0976:0108 CLD 0976:0109 REPNZ STOSB 0976:010B MOV AL,24 0976:010D STOSB 0976:010E PUSH ES 0976:010F POP DS 0976:0110 MOV DX,0200 0976:0113 MOV AH,09 0976:0115 INT 21 0976:0117 INT 20

№ слайда 8 Команда дизассемблирования (перевод машинного кода в мнемокод ассемблера) Ком
Описание слайда:

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

№ слайда 9 Дизассемблирование (продолжение) В командной строке UNASSEMBLE можно не указы
Описание слайда:

Дизассемблирование (продолжение) В командной строке UNASSEMBLE можно не указывать начальный адрес обрабатываемого кода. Если указан короткий адрес, то адрес сегмента выбирается из регистра CS. Если адрес не задан вообще, то машинный код обрабатывается с того места, где закончилась обработка предыдущей командой UNASSEMBLE. Если после старта отладчика команда вводится в первый раз и в командной строке отсутствует начальный адрес, то обработка машинного кода производится с адреса CS:0100.

№ слайда 10 Дизассемблирование (продолжение) Результатом выполнения команды дизассемблиро
Описание слайда:

Дизассемблирование (продолжение) Результатом выполнения команды дизассемблирования является листинг программы, сгруппированный в три колонки. В листинге слева (первая колонка) указывается полный логический адрес команды. Затем (вторая колонка) – значение составляющих команду байтов в машинном коде. В третьей колонке находится соответствующая этому коду инструкция ассемблера.

№ слайда 11 Полный логический адрес команды Значение составляющих команду байтов в машинн
Описание слайда:

Полный логический адрес команды Значение составляющих команду байтов в машинном коде Инструкция ассемблера 0976:0100 B02A MOV AL,2A 0976:0102 BF0002 MOV DI,0200 0976:0105 B91D00 MOV CX,001D 0976:0108 FC CLD 0976:0109 F2 REPNZ 0976:010A AA STOSB 0976:010B B024 MOV AL,24 0976:010D AA STOSB 0976:010E 06 PUSH ES 0976:010F 1F POP DS 0976:0110 BA0002 MOV DX,0200 0976:0113 B409 MOV AH,09 0976:0115 CD21 INT 21 0976:0117 CD20 INT 20

№ слайда 12 Команда ввода данных в память Команды ENTER позволяет побайтно корректировать
Описание слайда:

Команда ввода данных в память Команды ENTER позволяет побайтно корректировать содержимое памяти. Команда состоит из буквы e (или E) и адреса первого байта корректируемого блока. Если указан короткий адрес, то адрес сегмента выбирается в регистре DS. Вводимые данные также включаются в командную строку. Они представляют собой последовательность чисел в шестнадцатеричном представлении и/или символьных значений, разделенных пробелом или запятой. Символьные значения заключаются в апострофы.

№ слайда 13 Пример -e DS:0000 20 2A 44 41 54 41 20 'IS' 20 48 45 52 45 2A 20 Команда ввод
Описание слайда:

Пример -e DS:0000 20 2A 44 41 54 41 20 'IS' 20 48 45 52 45 2A 20 Команда вводит 16 значений. Данные последовательно заполняют память (побайтно), начиная с адреса DS:0000. Четырнадцать байтов занимают числа в шестнадцатеричном формате, два байта отводятся под символьную константу 'IS'.

№ слайда 14 Команда ENTER может использоваться для отображения и, в случае необходимости,
Описание слайда:

Команда ENTER может использоваться для отображения и, в случае необходимости, корректировки значения конкретного байта. В этом случае команда состоит из буквы e (или E) и следующего за ней адреса. При введении команды на экране появляется адрес байта и его значение: -e DS:0000 0958:0000 20 При нажатии на клавишу пробела на экране появляется значение следующего байта: -e DS:0000 0958:0000 20. 2A

№ слайда 15 Команда вывода содержимого участка памяти на экран Команда DUMP (d или D) слу
Описание слайда:

Команда вывода содержимого участка памяти на экран Команда DUMP (d или D) служит для отображения на экране содержимого участка памяти. Полученный кусочек памяти – дамп, представляет собой последовательность значений байтов в шестнадцатеричном представлении, а также – в коде ASCII; Значения, не имеющие символьного представления в коде ASCII, обозначаются символом "точка". В рассмотренном примере изображены только точки, поскольку в коде ASCII не существует печатных символов со значением 00. Дамп отображает содержимое 128 последовательно расположенных байтов. В приведенном выше примере начальный адрес дампа – 0958:0100, конечный – 0958:017F.

№ слайда 16 Пример -d 0958:0100 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 .........
Описание слайда:

Пример -d 0958:0100 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0958:0110 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0958:0120 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0958:0130 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0958:0140 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0958:0150 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0958:0160 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 0958:0170 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ Полный логический адрес команды значения, последовательно содержащиеся в памяти, начиная с этого адреса символьное представление этих значений

№ слайда 17 Команда просмотра и изменения содержимого регистров Команда REGISTER (r или R
Описание слайда:

Команда просмотра и изменения содержимого регистров Команда REGISTER (r или R) выводит на экран и корректирует значения регистров и флагов состояния процессора. Эта команда также выдает информацию о следующей выполняемой команде: -r AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0958 ES=0958 SS=0958 CS=0958 IP=0100 NV UP DI PL NZ NA PO NC 0958:0100 0000 ADD [BX+SI],AL DS:0000=CD

№ слайда 18 Команда пошагового выполнения программы Команда TRACE (t или T) – трассировка
Описание слайда:

Команда пошагового выполнения программы Команда TRACE (t или T) – трассировка осуществляет пошаговое выполнение программы в машинном коде. При трассировке после выполнения каждой команды производится останов работы программы и на экран выводятся регистры и флаги состояния процессора. Полученная картинка аналогична картинке, получаемой с помощью команды REGISTER. Разница заключается только в том, что при введении TRACE перед появлением картинки, выполняется одна команда отлаживаемой программы.

№ слайда 19 Команда задания имени файла программы Команда NAME (n или N) присваивает имя
Описание слайда:

Команда задания имени файла программы Команда NAME (n или N) присваивает имя обрабатываемому файлу. Затем этот файл загружается в память командой LOAD или записывается на диск командой WRITE. (LOAD и WRITE рассматриваются ниже.) Чтобы идентифицировать файл, наберите "n" и, через пробел – имя файла. Пример: -n mytest.pro

№ слайда 20 Команда загрузки файла в память Загрузка файла в память осуществляется, если
Описание слайда:

Команда загрузки файла в память Загрузка файла в память осуществляется, если в командной строке DEBUG указать имя файла. Другой способ – использование команды LOAD (l или L). При использовании команды LOAD необходимо специфицировать файл с помощью команды NAME. В командной строке LOAD можно указать начальный адрес, по которому загружается файл. Если указан короткий адрес, то адрес сегмента выбирается из регистра CS. При отсутствии начального адреса, загрузка производится по адресу CS:0100.

№ слайда 21 Команда записи области памяти в файл Команда WRITE (w или W) переписывает на
Описание слайда:

Команда записи области памяти в файл Команда WRITE (w или W) переписывает на диск данные, выбирая их из памяти. При этом спецификация создаваемого файла должна задаваться с помощью команды NAME. Перед введением команды WRITE в регистры BX и CX записывается размер занимаемой файлом памяти в байтах (шестнадцатеричное число, занимающее 4 байта). Поэтому перед записью необходимо проверить содержимое этих регистров (с помощью REGISTER). В командной строке WRITE можно указать начальный адрес памяти, по которому производится чтение данных с последующей записью их на диск. Если указан короткий адрес, то адрес сегмента выбирается из регистра CS. Если начальный адрес не указан, то запись производится, начиная с адреса CS:0100.

№ слайда 22 Команда выхода из отладчика Чтобы выйти из отладчика и передать управление оп
Описание слайда:

Команда выхода из отладчика Чтобы выйти из отладчика и передать управление операционной системе, на его стандартный запрос вводится команда q: -q

№ слайда 23 Задания для самостоятельного выполнения Введите команду: -e DS:0000 40 6A 24
Описание слайда:

Задания для самостоятельного выполнения Введите команду: -e DS:0000 40 6A 24 81 ‘WES' 10 Просмотрите содержимое участка памяти, начиная с адреса DS:0000 Выведите на экран содержимое участка памяти начиная с адреса DS:0000 побайтно Откорректируйте содержимое участка памяти, начиная с адреса DS:0000 следующим образом: значение 40 измените на 60, 24 на 42 Замените подстроку ‘WES‘ на ‘NOT‘ (остальные символы не менять). Вместо символов необходимо ввести их 16-ричные коды. Чтобы узнать, какие коды соответствуют символам, запишите в ячейки, начиная с адреса DS:1000, строку ‘NOT’. Просмотрите участок памяти, начиная с этого же адреса, чтобы узнать 16-ричные коды символов Повторно откорректируйте строку Выведите на экран значения регистров и флагов состояния процессора Выйдите из отладчика

№ слайда 24 Средствами Windows cоздайте на диске С: файл my.txt (если не получится сдела
Описание слайда:

Средствами Windows cоздайте на диске С: файл my.txt (если не получится сделать это в корневом каталоге, создайте файл в папке PABCWork), запишите в него значения 10 20 30 INF Загрузите файл в память, использовав его полное имя в качестве параметра команды Debug Просмотрите содержимое дампа памяти

Очень низкие цены на курсы переподготовки от Московского учебного центра для педагогов

Специально для учителей, воспитателей и других работников системы образования действуют 65% скидки при обучении на курсах профессиональной переподготовки.

После окончания обучения выдаётся диплом о профессиональной переподготовке установленного образца с присвоением квалификации (признаётся при прохождении аттестации по всей России).

Подайте заявку на интересующий Вас курс сейчас: KURSY.ORG


Общая информация

Номер материала: ДБ-117211

Похожие материалы

Получите наградные документы сразу с 38 конкурсов за один орг.взнос: Подробнее ->>