Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ПМСУ1(5)

.doc
Скачиваний:
24
Добавлен:
13.05.2015
Размер:
348.67 Кб
Скачать

Российская Федерация

Ханты-Мансийский автономный округ – ЮГРА

Департамент образования и науки

Сургутский государственный университет ХМАО

Инженерно-физический факультет

Кафедра автоматики и компьютерных систем

ОТЧЕТ

по лабораторной работе № 6

по дисциплине «Вычислительные машины, системы и сети»

Выполнили:

Принял: Запевалов А. В.

Сургут

Цель работы: исследование работы контролера приоритетных прерываний.

1. Задание к работе.

Разработать программу, которая в основной подпрограмме выводит на дисплей слово – НОГА. При нажатии на кнопку соответствующую, входам IRQ КПр на дисплей выводятся слова:

4 - ПЕЧЕНЬ

5 - ЧЕРЕП

1 - РЕБРО

Рис. 1 Блок схема основной подпрограммы.

Рис. 2 Блок схема подпрограммы прерывания

Таблица 1.

Адрес

Метка

М. код

Асс. Код

Комментарии

0810

 

3E

MVI A,74

КИ 1

0811

 

74

 

0812

 

D3

OUT 98

0813

 

98

 

0814

 

D3

OUT 9C

0815

 

9C

 

0816

 

3E

MVI A,08

КИ 2

0817

 

08

 

0818

 

D3

OUT 99

0819

 

99

 

081A

 

D3

OUT 9D

081B

 

9D

 

081C

 

3E

MVI A,81

КИ 3 MASTER

081D

 

81

 

081E

 

D3

OUT 99

081F

 

99

 

0820

 

3E

MVI A,07

КИ 3 SLAVE

0821

 

07

 

0822

 

D3

OUT 9D

0823

 

9D

 

0824

 

3E

MVI A,CD

КO 1 MASTER

0825

 

CD

 

0826

 

D3

OUT 99

0827

 

99

 

0828

 

3E

MVI A,FF

КO 1 SLAVE

0829

 

FF

 

082A

 

D3

OUT 9D

082B

 

9D

 

082C

 

3E

MVI A,C3

КO 2

082D

 

C3

 

082E

 

D3

OUT 98

082F

 

98

 

0830

 

D3

OUT 9C

0831

 

9C

 

0832

3E

MVI A,00

0833

00

0834

D3

OUT B3

0835

B1

0836

D3

OUT B2

0837

B2

0838

D3

OUT B1

0839

B3

083A

 

FB

EI

Разрешение прерываний

083B

M2

11

LXI D,0906

Инициализация указателя на массив букв

083C

 

06

 

083D

 

09

 

Инициализация указателя на ячейки 0BFA - 0BFF

083E

 

21

LXI H, 0BFA

083F

 

FA

 

0840

 

0B

 

Перенос буквы в аккумулятор

Перенос буквы в в ячейку

0841

M1

1A

LDAX D

0842

 

77

MOV M,A

0843

 

13

INX D

Инкремент указателя 1

Инкремент указателя 2

Проверка указателя 2

0844

 

2C

INR L

0845

 

C2

JNZ M1

0846

 

41

 

0847

 

08

 

0848

 

CD

CALL 01C8

Вывод

0849

 

C8

 

084A

 

01

 

084B

 

C3

JMP M2

Переход

084C

 

3B

 

084D

 

08

 

084E

 

 

 

084F

 

 

 

0850

 

 

 

0851

 

 

 

0852

 

 

 

0853

 

 

 

0854

 

 

 

0855

 

 

 

0856

 

 

 

0857

 

 

 

0858

 

 

 

0859

 

 

 

085A

 

 

 

085B

 

 

 

085C

 

 

 

085D

 

 

 

085E

 

 

 

085F

Начало таблицы векторов прерываний

0860

IRQ 0

 

 

0861

 

 

 

0862

 

 

 

0863

 

 

 

0864

IRQ1

C3

JMP M3

Вывод РЕБРО

0865

 

80

 

0866

 

08

 

0867

 

 

 

0868

IRQ 2

 

 

0869

 

 

 

086A

 

 

 

086B

 

 

 

086C

IRQ 3

086D

 

086E

 

086F

 

0870

IRQ 4

C3

JMP M9

Вывод ПЕЧЕНЬ

0871

 

CC

 

0872

 

08

 

0873

 

 

 

0874

IRQ 5

C3

JMP M6

Вывод ЧЕРЕП

0875

 

A4

 

0876

 

08

 

0877

 

 

 

0878

IRQ 6

 

 

0879

 

 

 

087A

 

 

 

087B

 

 

 

087C

IRQ 7

 

 

087D

 

 

 

087E

 

 

 

087F

 

 

 

0880

M3

FB

EI

Разрешение прерываний

0881

 

F5

PUSH PSW

Сохранение текущей информации в стек

0882

 

C5

PUSH B

0883

 

D5

PUSH D

0884

 

E5

PUSH H

0885

 

0E

MVI C,F0

Инициализация счетчика

0886

 

F0

 

0887

M5

11

LXI D,0900

Инициализация указателя на массив букв

0888

 

00

 

0889

 

09

 

088A

 

21

LXI H, 0BFA

Инициализация указателя на ячейки 0BFA - 0BFF

088B

 

FA

 

088C

 

0B

 

088D

M4

1A

LDAX D

Перенос буквы в аккумулятор

088E

 

77

MOV M,A

Перенос буквы в ячейку

088F

 

13

INX D

Инкремент указателя 1

0890

 

2C

INR L

Инкремент указателя 2

0891

 

C2

JNZ M4

Проверка указетеля 2

0892

 

8D

 

0893

 

08

 

0894

 

CD

CALL 01C8

Вывод

0895

 

C8

 

0896

 

01

 

0897

 

0D

DCR C

Декремент счетчика

0898

 

C2

JNZ M5

Проверка счетчика

0899

 

87

 

089A

 

08

 

089B

 

3E

MVI A,20

KO 2

089C

 

20

 

089D

 

D3

OUT 98

089E

 

98

 

089F

 

E1

POP H

Извлечение информации из стека

08A0

 

D1

POP D

08A1

 

C1

POP B

08A2

 

F1

POP PSW

08A3

 

C9

RET

Возврат

08A4

M6

FB

EI

Разрешение прерываний

08A5

 

F5

PUSH PSW

Сохранение текущей информации в стек

08A6

 

C5

PUSH B

08A7

 

D5

PUSH D

08A8

 

E5

PUSH H

08A9

 

0E

MVI C,F0

Инициализация счетчика

08AA

 

F0

 

08AB

M8 

11

LXI D,08F4

Инициализация указателя на массив букв

08AC

 

F4

 

08AD

 

08

 

08AE

 

21

LXI H,0BFA

Инициализация указателя на ячейки 0BFA - 0BFF

08AF

 

FA

 

08B0

 

0B

 

08B1

M7

1A

LDAX D

Перенос буквы в аккумулятор

08B2

 

77

MOV M,A

Перенос буквы в ячейку

08B3

 

13

INX D

Инкремент указателя 1

08B4

 

2C

INR L

Инкремент указателя 2

08B5

 

C2

JNZ M7

Проверка указетеля 2

08B6

 

B1

 

08B7

 

08

 

08B8

 

CD

CALL 01C8

Вывод

08B9

 

C8

 

08BA

 

01

 

08BB

 

0D

DCR C

Декремент счетчика

08BC

 

C2

JNZ M8

Проверка счетчика

08BD

 

AB

 

08BE

 

08

 

08BF

 

3E

MVI A,00

Обнуление триггера

08C0

 

00

 

08C1

 

D3

OUT B1

08C2

 

B1

 

08C3

 

3E

MVI A,20

КО 2

08C4

 

20

 

08C5

 

D3

OUT 98

08C6

 

98

 

08C7

 

E1

POP H

Извлечение информации из стека

08C8

 

D1

POP D

08C9

 

C1

POP B

08CA

 

F1

POP PSW

08CB

 

C9

RET

Возврат

08CC

M9

FB

EI

Разрешение прерываний

08CD

 

F5

PUSH PSW

Сохранение текущей информации в стек

08CE

 

C5

PUSH B

08CF

 

D5

PUSH D

08D0

 

E5

PUSH H

08D1

 

0E

MVI C,F0

Инициализация счетчика

08D2

 

F0

 

08D3

M11

11

LXI D, 08FA

Инициализация указателя на массив букв

08D4

 

FA

 

08D5

 

08

 

08D6

 

21

LXI H,0BFA

Инициализация указателя на ячейки 0BFA - 0BFF

08D7

 

FA

 

08D8

 

0B

 

08D9

M10

1A

LDAX D

Перенос буквы в аккумулятор

08DA

 

77

MOV M,A

Перенос буквы в ячейку

08DB

 

13

INX D

Инкремент указателя 1

08DC

 

2C

INR L

Инкремент указателя 2

08DD

 

C2

JNZ M10

Проверка указетеля 2

08DE

 

D9

 

08DF

 

08

 

08E0

 

CD

CALL 01C8

Вывод

08E1

 

C8

 

08E2

 

01

 

08E3

 

0D

DCR C

Декремент счетчика

08E4

 

C2

JNZ M11

Проверка счетчика

08E5

 

D3

 

08E6

 

08

 

08E7

 

3E

MVI A,00

Обнуление триггера

08E8

 

00

 

08E9

 

D3

OUT B2

08EA

 

B2

 

08EB

 

3E

MVI A ,20

КО 2

08EC

 

20

 

08ED

 

D3

OUT 98

08EE

 

98

 

08EF

 

E1

POP H

Извлечение информации из стека

08F0

 

D1

POP D

08F1

 

C1

POP B

08F2

 

F1

POP PSW

08F3

 

C9

RET

Возврат

08F4

 

00

 

08F5

 

37

 

П

08F6

 

79

 

Е

08F7

 

73

 

Р

08F8

 

79

 

Е

08F9

 

66

 

Ч

08FA

 

7C

 

Ь

08FB

 

76

 

Н

08FC

 

79

 

Е

08FD

 

66

 

Ч

08FE

 

79

 

Е

08FF

 

37

 

П

0900

 

00

 

0901

 

3F

 

О

0902

 

73

 

Р

0903

 

7D

 

Б

0904

 

79

 

Е

0905

 

73

 

Р

0906

 

00

 

0907

 

00

 

0908

 

37

 

А

0909

 

31

 

Г

090A

 

3F

 

О

090B

 

76

 

Н

090C

 

 

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]