Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная МПТ 5.doc
Скачиваний:
4
Добавлен:
14.09.2019
Размер:
81 Кб
Скачать
☆

4 Задание

    1. Используя команды условного перехода и РОН напишите программу задержки длительностью 1 сек.

MOV BX,10

M1:DEC BX

JNZ M1

65534*16+4=1048548

65535*2=131068

65535*2=131068

1310684

1000000=(Х-1)*16+4=Х*2+2

    1. Напишите программу задержки длительностью 1 сек., используя микросхему системного таймера.

MOV AX,0

INT 1AH

MOV BX,DX

ADD BX,100

M1: INT 1AH

CMP BX,DX

JA M1

    1. Составить программу-секундомер (от 60 до 0) с выводом на LED дисплей. Для работы с дисплеем в эмуляторе Emu8086 имеется готовая процедура, обращение к которой идет при записи данных в порт 199. Выводимые на дисплей цифры задаются в виде десятичного двухбайтного числа и должны хранится в регистре AX.

JMP START

M2:

PUSH AX

PUSH CX

MOV AX,0

INT 1AH

MOV BX,DX

ADD BX,13

M1: INT 1AH

CMP BX,DX

JA M1

POP CX

POP AX

RET

START:

MOV CX,60

BEGIN:

MOV AX,CX

OUT 199,aX

CALL M2

LOOP BEGIN

MOV AX,0

OUT 199,AX

7.Контрольные вопросы

7.1 Какие виды команд переходов вы знаете?

Ответ:JA,JAE,JB,JE,JG,JGE,JL,JLE,JNP,JNE,JNS,JO,JS,JP

7.2 С какой целью используется стек при организации подпрограмм?

Ответ:При вызове подпрограммы или возникновении прерывания, в стек заносится адрес воз врата — адрес в памяти следующей инструкции приостановленной программы и управление передается подпрограмме или подпрограмме-обработчику. При последующем вложенном или рекурсивном вызове, прерывании подпрограммы или обработчика прерывания, в стек заносится очередной адрес возврата и т. д.

7.3 Какие из следующих команд и как влияют на регистр флагов:

Ответ:JL - Переход, если первое знаковое число меньше, чем второе. (SF  OF).

JLE- Переход, если первое знаковое число меньше или равно второму. (SF  OF или ZF = 0).

JZ- Переход, если числа равны (ZF = 1).

JNZ- Переход, если числа не равны (ZF = 0).

LOOPE- Цикл: CX  CX – 1 и переход, если CX  0 и ZF = 1.