Программирование на языке ассемблер микроконтроллера с ядром AVR в информационных технологиях
Заказать уникальную курсовую работу- 9 9 страниц
- 0 + 0 источников
- Добавлена 31.08.2018
- Содержание
- Часть работы
- Список литературы
- Вопросы/Ответы
Из заданного массива чётные числа – 22, 44, 66, 88, AA, CC, EE, DE. Из них попадают в диапазон (6C … FE) – 88, AA, CC, EE, DE. Минимальное из них – 88. То есть программа работает правильно.
Приложение А
Программа на языке Ассемблер
.DEF V=R16; Определение регистров
.DEF Min=R17
.DEF YL=R28
.DEF YH=R29
.ORG 0x00; Настройка вектора прерываний
RJMP Program
RETI
RETI
RETI
RETI
RETI
RETI
RETI
RETI
RETI
RETI
RETI
RETI
RETI
RETI
RETI
RETI
RETI
Program:; Основная программа
LDI YH, 0x01; Загрузка адреса начала массива
LDI YL, 0xAC
LDI Min, 0xFF; Инициализация регистра минимального значения
Cycle:; Начало чикла проверки
LD V, Y+; Загрузка значения элемента массива
CPI V, 0x6C; Сравнение с нижней границей диапазона
BRLO Next; Пропуск, если значение вне диапазона
CPI V, 0xFE; Сравнение с верхней границей диапазона
BRSH Next; Пропуск, если значение вне диапазона
SBRC V, 0; Проверка чётности
RJMP Next; Пропуск, если значение нечётно
CP V, Min; Сравнение элемента массива с минимальным значением
BRSH Next; Пропуск, если элемент не минимален
MOV Min, V; Корректировка минимального значения
Next:
CPI YL, 0xBD; Определение условия достижения конца массива
BRLO Cycle; Переход проверке следующего элемента массива
STS 0x0195, Min; Сохранении минимального значения
Начало
YH = 0x01
YL = 0xAC
Min = 0xFF
V
V < 0x6C
нет
да
V < 0xFE
да
V чётное
Min = V
да
X < Min
да
нет
нет
нет
1
2
3
4
6
7
8
9
10
9
11
YL = YL+1
5
11
8
6
нет
да
YL ≥ 0xBD
4
11
12
Min
Конец
Вопрос-ответ:
Какой язык программирования используется в данной статье?
В данной статье используется язык ассемблера для программирования микроконтроллера с ядром AVR.
Какие числа попадают в заданный диапазон?
Из заданного массива чисел 22 44 66 88 AA CC EE DE, в диапазон попадают числа 88, AA, CC, EE, DE.
Какой алгоритм используется в программе на языке ассемблера?
В данной программе на языке ассемблера используется алгоритм поиска минимального числа в заданном массиве.
Какие регистры используются в данной программе?
В данной программе используются следующие регистры: R16, R17, R28, R29.
Зачем нужна настройка вектора прерываний в программе?
Настройка вектора прерываний в программе необходима для определения реакции микроконтроллера на внешние события и обработки прерываний в процессе выполнения программы на ассемблере.
Каким языком программирования написана программа, описанная в статье?
Программа написана на языке ассемблер.
Какой микроконтроллер используется в программе?
В программе используется микроконтроллер с ядром AVR.
Для чего в программе используются регистры?
Регистры используются для хранения промежуточных значений и для работы с данными.
Какой диапазон чисел попадает в массив в программе?
В массив попадают числа из диапазона от 6C до DE.
Какое число является минимальным из чисел в массиве в программе?
Минимальное число в массиве равно 88.
Какая программа написана на языке ассемблера для микроконтроллера с ядром AVR?
Программа на языке ассемблера для микроконтроллера с ядром AVR называется "DEF".
Какие регистры используются в программе на языке ассемблера для микроконтроллера с ядром AVR?
В программе используются следующие регистры: R16, R17, R28, R29.