Отчет 3

advertisement
Поволжский Государственный Университет
Телекоммуникаций и Информатики
Архитектура ЭВМ и систем
Отчёт по лабораторной работе №3
Изучение основ работы с турбо отладчиком
Выполнил студент группы ИТ-71
Горцунов В.В.
Самара 2008
Оглавление
1. Ответы на контрольные вопросы. ..................................................... 3
2. Выполнение работы ............................................................................ 4
2.1. Заполнение таблицы ...................................................................... 4
2.2. Определение начальных и конечных адресов сегментов ......... 5
Использованная литература ................................................................... 6
2
1. Ответы на контрольные вопросы.
1. Для чего предназначен отладчик?
Отладчик позволяет отлаживать программы на уровне исходного текста, и
отслеживания изменения данных, в процессе выполнения программы.
2. Объясните смысл пунктов Главного меню в верхней строке отладчика?
Пункты File, View, и т.д. предназначены для управления отладчиком.
3. Как загрузить отлаживаемую программу?
File  Open  *.exe
4. Сколько окон можно открыть из пункта Главного меню View?
Это окна: Breakpoints, Stack, Log, Watches, Variables, Module, File, CPU, Dump,
Registers, Numeric Processor, Execution history, Hierarchy, Windows Message, Clipboards,
Another.
5. Из каких фрагментов состоит окно CPU?
Это фрагменты: сегмента кодов, сегмента данных, сегмента стека, регистров и
флагов.
8. Каким образом можно редактировать ассемблерную программу?
Встроенного редактора в TD нет, но можно задать редактор по умолчанию в
настройках TD, или редактировать исходный текст программы отдельно.
9. Как осуществляется изменение содержимого оперативной памяти и регистров
средствами отладчика?
В окне CPU можно непосредственно изменять значения регистров, значения в
областях сегментов данных и стека
10. Как через меню отладчика запустить программу на выполнение?
Через меню Run в главном меню или с помощью горячих клавиш.
можно посмотреть через User Screen (Alt+F5).
Результат
11. В каком окне можно наблюдать результат выполнения программы?
User Screen (Alt+F5).
12. Что такое трассировка программы и как она осуществляется в отладчике?
Трассировка программы – выполнение программы пошагово, позволяющее
отслеживать состояние регистров и сегментов после выполнения каждой строки
программы. Трассировка может быть выполнена из меню Run главного меню командой
Trace Over либо с помощью горячей клавиши F7.
3
2. Выполнение работы
2.1. Заполнение таблицы
Вариант 4
№
Команда
строки Ассемблер
а
Машинн
ый код
Длина
машинног
о кода
байт
Логическ
ий адрес
в памяти
Физиче
ский
адрес в
памяти
Hello_1
4
mov
DX,OFFS
ET Greet
BA0000
3
5495:
0007
54957
Hello_1
5
int 21h
CD21
2
5495:
000A
5495A
Hello_2
6
Mov AH,
09h
B409
2
5496:
000C
5496C
Hello_2
7
mov DX,
OFFSET
Greet_2
BA1600
3
5496:
0011
54971
4
Состояние
регистров и
флагов
AX=,0983
BX=0000,
CX=0000,
DX=0000,
SP=0100,
BP=0000,
SI=0000,
DI=0000,
IP=000A,
DS=5483,
SS=5485,
CS=5495,
ES=5472.
CF=0 ZF=0, SF=,0
OF=0, PF=0, AF=0
AX=0924,
BX=0000,
CX=0000,
DX=0000,
SP=0100,
BP=0000,
SI=0000,
DI=0000,
IP=000C,
DS=5483,
SS=5485,
CS=5495,
ES=5473.
CF=0, ZF=0, SF=0,
OF=0, PF=0, AF=0
AX=0924,
BX=2680,
CX=00BA,
DX=0000,
SP=0100,
BP=0100,
SI=0000,
DI=957A,
IP=000E,
DS=5483,
SS=5486,
CS=5496,
ES=5473.
CF=0 ZF=0, SF=,0
OF=0, PF=0, AF=0
AX=,0924
BX=2680,
CX=00BA,
DX=0016,
SP=0100,
BP=0100,
SI=0000,
DI=957A,
IP=0011,
DS=5483,
SS=5486,
CS=5496,
ES=5473.
CF=0 ZF=0, SF=,0
OF=0, PF=0, AF=0
2.2. Определение начальных и конечных адресов сегментов
Определение начальные и конечные адреса сегментов кодов и сегментов данных, в
программах hello_1.exe и hello_2.exe
hello_1.exe
Сегмент кодов.
Начальный адрес
Конечный адрес
Длина
Сегмент данных
Начальный адрес
Конечный адрес
5316:0000
5316:0010
10
5473:0000
5473:0110
Длина
hello_2.exe
Сегмент кодов.
Начальный адрес
Конечный адрес
Длина
Сегмент данных
Начальный адрес
Конечный адрес
5496:0000
5496:0017
17
5473:0000
5473:0120
Длина
Дата выпуска ПЗУ BIOS в формате месяц/число/год, в трех ячейках памяти,
начиная с F000:FFF5
В памяти по адресу F000:FFFE однобайтовый идентификатор модели
5
Использованная литература
Assembler. Учебник для вузов. 2-е изд. /В. И. Юров – СПб.: Питер, 2004. с.121…141.
К. Г. Финогенов. Основы языка Ассемблера. – М.: Радио и связь, 2000. с. 22…31.
Абель П. Язык Ассемблера для IBM PC и программирования /Пер. c англ.- М.:Высш.шк.,
1992.с 51…75.
6
Download