Реферат: Лабораторные работы по программированию
Лабораторная работа №1.
Тема: Обучение работе на УМК.
Цель: Научиться работать на УМК.
Приборы: Учебный микропроцессорный комплекс (УМК).
Ход работы.
Панель прибора:
В левой части расположены функциональныеклавиши. За каждой клавишей закреплена определённая функция системной программыМОНИТОР. На них выгравированы соответствующие идентификаторы функции:
П– просмотр и модификация содержимого ячейки памяти;
РГ— просмотр и модификация содержимого ячейкирегистров;
СТ– старт программы;
КС– подсчёт контроля суммы;
ЗК– заполнение массива памяти константой;
ПМ– перемещение массива памяти;
- />разделитель;
ВП – выполнить.Первая часть клавиш предназначена для ввода параметровв шестнадцатеричной форме. В дальнейшем предусмотрено, что все вводимые ивыводимые данные имеют шестнадцатеричный формат. На них выгравированы символы:0, 1, 2, 3, 4, 5, 6, 7, 8, 9, А, В, С, D, Е, F.Кроме этого на клавишах 4, 5, 6, 7, 8, 9, под цифрами выгравированыидентификаторы регистров микропроцессора.
РН– ст. байт счётчика команд;
РL– мл. байт счётчика команд;
SH– ст. байт указателя стёка;
SL– мл. байт указателя стёка;
Н– регистр Н;
L– регистр L;
Дляидентификации остальных регистров микропроцессора используются клавиши:
А– регистр А;
В– регистр В;
С– регистр С;
D -регистр D;
E– регистр Е;
F– регистр признаков;
Кнопка включения (выключения) УМК СЕТЬ расположена влевой нижней части лицевой панели. На самой кнопке выгравирован символ «~».Эта кнопка служит для включения (нажатое состояние кнопки) и выключения(отжатое состояние кнопки) УМК.
КнопкаСБРОС расположена в правой средней части лицевой панели УМК. На кнопкевыгравировано СБ. Эта кнопка служит для инициализации системной программыМОНИТОР, и в левой позиции шестисигментного дисплея появляется символ « – «.УМК готов к приёму команд.
Управление пошаговымрежимом работы УМК производится с помощью кнопок, на которых выгравированынадписи: РБ / ШГ, КМ /ЦК иШГ. С помощью этих кнопок может быть установлен один из двух режимов работы УМКпо шагам. Первый режим – командный. Для установки этого режима нажать кнопку РБ/ ШГ (она останется в нажатом состоянии).
Для выполнения команднеобходимо нажать кнопку ШГ. Каждое нажатие кнопки ШГ вызовет выполнениетекущей команды. При этом на светодиодах индикации состояния шин данных, адресаи управляющих сигналов, расположенных в центре лицевой панели УМК, будутвысвечиваться в двоичном коде, (каждый светодиод отражает соответствующийразряд), соответственно адрес и код выполненной команды, а также управляющиесигналы микропроцессора.
Лабораторнаяработа №2.
Тема: Изучение работы УМК в пошаговом режиме.
Цель: Научиться работать на УМК в пошаговом режиме.
Ходработы:
Задание:
Для последовательности команд запишите машинные коды.
Команда ША ШД № шага LXI B, 940H800
801
802
01
40
09
1
2
LXI D, 960H803
804
805
11
60
09
3
4
5
MYI L, 10H806
807
2E
10
6
7
LDAX B808
940
0A
3D
8
9
STAX D809
960
12
3D
10
11
INX B 80A 03 12 INX D 80B 13 13 DCR L 80C 2D 14 JMP 800H80D
80E
80F
C3
00
08
15
16
17
Задание:
Записать следующие команды коды для последовательности команд:
Команда ША ШД № шага LXI H, 900H 800 21 LXI B, 920H 803 01 1 LXI D, 940H 806 11 2 LDAX B 809 0A 3 SUB M 80A 96 4 STA 950H 80B 32 5 LDAX D 80E 1A 6 ANA M 80F A6 7 RAL 810 17 8 STA 951H 811 32 9 LDA 950H 814 3A 10 MOV L,A 817 6F 11 LDA 951H 818 3A 12 MOY H,A 81B 67 13 SHCH 952H 81C 22 14 JMP 800H 81F C3 15Лабораторная работа №3.
Тема:Регистрымикропроцессора. Команды загрузки регистров.
Командыпересылки.
Цель: Изучить регистры микропроцессора, команды загрузкии команды пересылки.
Ход работы
MOV рег1, рег2 – команда пересылки, эта команда осуществляетпересылку с рег2 в регистр рег1.
MVI рег, знач – команда загрузки регистра, эта команда загружаетзначение знач в регистр рег.
800 MVI A, 00H 2E00
802 MVI B, 01H0601
804 MVI C, 02H0E02
806 MVI D, 03H1603
808 MVI E, 04H1E04
80A MVI H, 05H2605
80C MVI C, 06H2E06
800 MOV A, FFH 3EFF
802 MOV B, A 47
804 MOV C, B 48
806 MOV D, C 51
808 MOV E, D 5A
80A MOV H, E 63
80C MOV L, H 6C
B)
800 MVI B, BBH 06BB
801 MVI C,CCH 0ECC802 MVI D, DDH 16DD
803 MVI E, EEH 1EEE
804 MVI H, 12H 2612
805 MVI L, 34H 2E34
806 MVI A, AAH 3EAA
800 LXI B, BBCCH01CCBB
803 LXI D, DDEEH11EEDD
806 LXI H, 1234H 213412
800 LXI B,3132H 0132H803 LXI D,3334H 113433806 LXI H, 3636H213635
Лабораторная работа №4.
Тема:Методыадресации памяти. Команды работы с памятью.
Цель: Изучить методы адресации памяти и команды работы сними.
Ход работы
800 MVI A, 00
801 STA 900
802 MVI A, 01
803 STA 905
804 MVI A, 02
805 STA 90C
800 MVI A, 00
801 STA 900
802 LDA 900
803 MOV B, S
800 LXI H, 3231
802 SHLD 920
804 LHLD 920
806 MOV H, B
808 MOV L, C
800 LXI H 32,31
802 SHLD 920
800 LXI H, 0100
803 SHLD 940
805 MVI A, 03
807 STA 943
800 MVI A, 00
801 STA 900
802 LDA 900
803 MOV B, A
Лабораторная работа №5.
Тема: Арифметические команды.
Ход работы.
Записать в память, начиная с адреса 800Н, кодыпрограммы реализации:
A = A+B+M+1800 MVIA, 00 3E00802 MVIB, 02 06 02 A = 56804 ADD B 80 F = 0,6
805 LXI H, 900 210009
808 MVI M, 03 3603
80A ADD M 86
80B ADI 1 C601
/>
C = 0 – не возникает переполнения
Р = 1 – количество единиц в байте, чётное
Ас = 0 – не возникает переноса
Z = 0– результат выполнения операции не равен нулю
S = 0 – результат операции положительный
НL =DE+BC
Записатьв память, начиная с адреса 800Н, коды программы сложения шестнадцатиразрядныхчисел, используя команды восьмиразрядного сложения:
НL = DE+BC
800 MVI C,01802 MOV A, C
803 MVI E,02
805 ADD E
806 MOV L, A
807 MVI B, 02
808 MOV A, B
80A MVI D, 04
80C ADD D
80D MOV H,A
Написать и выполнить программу реализующую: C = D+E .
MVI D,FFMVI E, 01
MOV A, D
ADD E
MOV C,A
Написать и выполнитьпрограммусложения двух ячеек памяти: M1= M2 + M3 .
LXI M, 901HMVI M2, 01
MOV A, M2LXI H, 902H
MVI M3, 02ADD M3LXI H, 900H
MVI M1,A
Написать и выполнитьпрограммусложения: HL = BC+E+4000H
MVI C,01MOV A, C
MVI E,02
ADD E
ADI 00
MOV L, A
MVI B, 03
MOV A, 0ADI 40
MOV H, AКоманды вычитания восьмиразрядных чисел.
Записать в память, начиная с адреса 800Н, кодыпрограммы реализующей:
A = A – B – M – IMVI A,01MVI B, 01
SUB B
LXI 900H
MVI M, 00
SUB MSBI 01
Записать в память, начиная с адреса 800Н, кодыпрограммы 16- ти разрядных чисел: HL = DE – BC.
MVI E,FCMOV A, E
MVI C, F0
SUB C
MOV L, A
MVI B, 0F
MVI D, FF
MOV A, D
SUB B
MOV A, H
Написать и выполнитьпрограммувычитания двух ячеек памяти: M1= M2 — M3 .
LXI H, 901H MVI M2,01MOV A, M2
LXI H, 902HMVI M3, 02
SUB M3
LXI H, 900MVI M1, A
Написать и выполнитьпрограммувычитания: HL = BC – I –0FFFH
MVI C,01MOV A, C
MVI I, 02
SUB I
SVI FF
MOV L, A
MVI B, 03
MOV A, B
SVI 0F
MOV H, A
Команды констремента.
Записать в память, начиная с адреса 800Н код команды:
MVI E,00INR E
Записать в память, начиная с адреса 800Н коды команд:
LXI H, 900H MVI M,00INR M
Записать в память по адресу 800Н код команды:
LXI D, 00 01 INX D
Выполнить команду для следующих исходных значений парырегистров DE.
MVI E,00MVI D, 01
INX D
Написать и выполнитьпрограммузаполнения массива памяти (900Н = 904Н), соответствию данными (00 – 04),используя команды инскремента пары регистров и регистра.
LXI H, 900H MVI M,00 INX, HMVI M, 01
INX, HMVI, 03
INX HMVI, 04
Команды дискрента.
Записать в память по адресу 800Н код команды:
MVI C, 00DCR, C
Записать в память, начиная с адреса 800Н коды команд:
LXI H, 900HMVI M, 00DCR, M
Записать в память по адресу 800Н код команды:
MVI H, 00MVI L, 01DCR, H
Лабораторная работа №8.
Тема:Командысравнения.
Ход работы
Сравним содержимое Ви С:
MVI C, 01
MOV A, C
MVI B, 01
CMP B
MVI C, 01
MOV A, C
MVI B, 09
CMP B
MVI C, FF
MOV A, C
MVI B, 00
CMP B