Скачиваний:
36
Добавлен:
18.12.2018
Размер:
171.58 Кб
Скачать

4.18. Как через меню отладчика запустить программу на выполнение?

Для того, чтобы отладить программу, нужно предварительно загрузить ее в TD. Программа должна быть предварительно оттранслирована ассемблером (TurboAssembler, Macro Assembler и др.) и преобразована в файл типа COM или EXE при помощи редактора связей (LINK, TLINK или других).

Войдите в меню FILE и выберите в нем пункт OPEN (нажмите[F10]; с помощью клавиш курсора влево/вправо выберите пункт File; нажмите [ENTER] - на экране появится подменю, содержащее команды; выберите в нем пункт OPEN, и нажмите [ENTER]). На экране появится окно загрузки файла, содержащее в верхней части строку для ввода

имени файла. Наберите в ней имя Вашего файла, например: C:\WORK\ASM\PROGRAM.EXE ,и нажмите [ENTER]

4.19. В каком окне можно наблюдать результат выполнения программы?

окно CPU

4.20. Что такое трассировка программы и как она осуществляется в отладчике?

Трассировкой называют процесс пошагового выполнения программы. В Turbo Debugger это осуществляется при помощи клавиш [F7] и [F8]. По нажатию любой из них происходит выполнение текущей (помеченной символом треугольника в окне CPU) ассемблерной команды, после чего отображается новое содержимое регистров, областей данных, вершины стека и TD возвращается к ожиданию нажатия клавиши. А ресурсы ,участвующие в выполнении команды, выделяются цветом.

  1. Листинг prog_3

Data SEGMENT

A DB ?

B DB ?

C DB ?

D DB ?

Data ENDS

Ourstack SEGMENT Stack

DB 100h DUP (?)

Ourstack ENDS

ASSUME CS:Code, DS:Data, SS:Ourstack

Code SEGMENT

Start: mov AX, Data

mov DS, AX

mov A, 5

mov B, 2Eh

mov C, 18h

mov D, 11

mov AL, A

mov AH, B

xchg AL, AH

mov BX, 3E10h

mov CX, BX

push BX

push CX

lea SI, C

mov AX, SI

lea DI, D

mov BX, DI

pop CX

pop BX

pop AX

mov A, AL

mov B, AH

mov C, 0

mov AX, 4C00h

int 21h

Code ENDS

END Start

Команда XCHG (Exchange Data, или Обмен данными) позволяет обменять содержимое двух операндов. 

  1. Создание prog_3.Exe

Вариант 8

строки

Команда

Ассембл-ера

Машин-ный код

Длина машин-ного кода

Логичес-кий адрес в памяти

Физический адрес в памяти

Состояние регистров и флагов

Prog_3

1

Mov DS, AX

8ED8

2

534C:0003h

534C3h

2

Mov A,5

C606000005

5

534C:0005h

534C5h

23

Mov AX 4C00h

B8004C

3

534C:0042h

53502h

24

Int 21h

CD21

2

534C:0045h

53505h

Hello_2

7

Mov AL, 0

B000

2

534E:0013h

534F3h

8

Mov AH, 4C

B44C

2

534E:0015

534F5h

Соседние файлы в предмете Автоматизированные информационные системы