Изучение системы команд микро ЭВМ семейства МК51
Запишите в ячейки ОЗУ с 30Н по 40Н числа 1−16 соответственно, использую команду пересылки в резидентную память данных из аккумулятора. Прочитайте в аккумулятор ячейку ОЗУ с номером 35Н, используя команду с прямоадресуемым байтом. Рисунок 7 — Состояния регистров после выполнения программы Рисунок 8 — Состояния внутренней памяти после выполнения программы Значение 25h ячейки принимало значение… Читать ещё >
Изучение системы команд микро ЭВМ семейства МК51 (реферат, курсовая, диплом, контрольная)
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ СУМСЬКИЙ ДЕРЖАВНИЙ УНІВЕРСИТЕТ КАФЕДРА ЕЛЕКТРОННОЇ ТА КОМП’ЮТЕРНОЇ ТЕХНІКИ Лабораторна робота № 1
по дисципліні
«Мікропроцесорні системи»
Виконав Гоженко В.В.
студент групи ЕС-01/1
Перевірив Викладач Скордіна О.М.
Суми 2014
Изучение системы команд микро ЭВМ семейства МК51
Цель работы — изучение функциональных возможностей программы ISIS Proteus, системы команд и способов адресации данных в микро ЭВМ семейства МК51.
Ход работы
1. В файл с расширением *.asm впишите программу, реализующую следующую задачу:
· Запишите в R0 0-го банка памяти число 51;
· Запишите в R4 1-го банка памяти число 30;
· Загрузите в аккумулятор число 35Н;
· Переслать содержимое аккумулятора в регистр R4 2-го банка памяти.
Программа на языке assembler 51:
jmp start
start: CLR RS0
CLR RS1
MOV @R0,#51
SETB RS0
MOV R4,#30
MOV A,#35H
CLR RS0
SETB RS1
MOV R4, A
jmp start
end
Состояния регистров и внутренней памяти данных после выполнения программы:
Рисунок 1 — Состояния регистров после выполнения программы Рисунок 2 — Состояния внутренней памяти после выполнения программы программа регистр адресация данные
2. В файл с расширением *.asm впишите программу, реализующую следующую задачу:
· Установите указатель стека на ячейку памяти 50Н;
· Поместите в регистр R2 1-го банка памяти число 40;
· Поместите в регистр R3 2-го банка памяти число 10;
· Загрузите в аккумулятор число 20 и сложите с числом, хранящимся в регистре R3 2-го банка памяти;
· Сохраните содержимое в стеке;
· Сложите содержимое регистра R2 1-го банка памяти с числом, хранящимся в ячейке памяти, на которую указывает указатель стека.
Программа на языке assembler 51:
org 0000h
jmp start
start: MOV SP,#50H
SETB RS0
MOV R2,#40
CLR RS0
SETB RS1
MOV R3,#10
MOV A,#20
ADD A, R3
PUSH ACC
SETB RS0
CLR RS1
POP ACC
ADD A, R2
jmp start
end
Состояния регистров и внутренней памяти данных после выполнения программы:
Рисунок 3 — Состояния регистров после выполнения программы Рисунок 4 — Состояния внутренней памяти после выполнения программы
3. В файл с расширение *.asm впишите программу, реализующую следующую задачу:
Запишите в ячейки ОЗУ с 30Н по 40Н числа 1−16 соответственно, использую команду пересылки в резидентную память данных из аккумулятора. Прочитайте в аккумулятор ячейку ОЗУ с номером 35Н, используя команду с прямоадресуемым байтом.
Программа на языке assembler 51:
org 0000h
jmp start
org 0100h
start: MOV R0,#30h
MOV A,#1
m1: MOV @R0,A
INC R0
INC A
cjne A,#17,m1
MOV A, 35h
jmp start
end
Состояния регистров и внутренней памяти данных после выполнения программы:
Рисунок 5 — Состояния регистров после выполнения программы Рисунок 6 — Состояния внутренней памяти после выполнения программы
4. В файл с расширение *.asm впишите программу, реализующую следующую задачу:
Загрузите в ячейку памяти с номером 25H число 0FH. Установите в единицу 6-й и 4-й биты, а в 0 — 1-й и 3-й биты. Проинвертируйте 1-й и 5-й биты.
Программа на языке assembler 51:
org 0000h
jmp start
org 0100h
start: mov 25h,#0Fh
setb 25h.4
setb 25h.6
clr 25h.1
clr 25h.3
cpl 25h.1
cpl 25h.5
jmp start
end
Состояния регистров и внутренней памяти данных после выполнения программы:
Рисунок 7 — Состояния регистров после выполнения программы Рисунок 8 — Состояния внутренней памяти после выполнения программы Значение 25h ячейки принимало значение: 0Fh, 1Fh, 5Fh, 5Dh, 55h, 57h, 77h.
Выводы: на лабораторной работе мы изучили функциональные возможности программы ISIS Proteus, систему команд и способы адресации данных в микро ЭВМ семейства МК51.