|
MAS2: DS N; Резервирование памяти в памяти данных
CSEG AT 0C000H
ORG 0C100H; Установка программного счетчика
JMP MAIN
MAS1: DB 0,1,2,3,4,5,6,7,8,9; Массив в памяти программ
MAIN: MOV DPTR,#MAS1; Загрузка регистра-указателя данных
MOV R0,#MAS2; Загрузка регистра косвенного адреса R0
MOV R1,#N; Загрузка регистра R1– установка счетчика
L: CLR A; Очистка аккумулятора А
MOVC A,@A+DPTR; Загрузка аккумулятора очередным элементом массива
ADD A,#CONST; Сложение аккумулятора с константой
MOV @R0,A;Сохранение результата в памяти данных
INC DPTR; Увеличение DPTR на 1
INC R0; Увеличение R0 на 1
DJNZ R1,L; Уменьшение R1 на 1 и переход на метку L, если R1<>0
SETB P3.5;Зажечь светодиод
JMP $; Зациклить
END; Конец программы
Задания.
Создать файл с программой на языке ассемблер:
ORG 0С100H
MOV A,#21H
INC A
ADD A,#11H
MOV B,#5
MUL AB
END
1. Запустить транслятор и проверить программу на наличие ошибок.
2. Выполнить пошаговую трассировку и убедиться в ее работоспособности.
3. После выполнения программы в регистре А должно быть число FFh, в В – 00h.
Контрольные вопросы
1. Какими типами информационных объектов может оперировать АЛУ ИК51.
2. Дать описание формата слова состояния программы (PSW).
3. Охарактеризовать флаги PSW.
4. Какую емкость имеют резидентные ПЗУ и ОЗУ микроконтроллера МК51.
5. Для каких целей используется аккумулятор при работе контроллера.
6. Дать общую характеристику регистров специальных функций МК51.
7. Охарактеризуйте основные этапы программирования и отладки программного обеспечения для МК51.
Дата добавления: 2015-07-11; просмотров: 114 | Нарушение авторских прав