ВУЗ:
Составители:
Рубрика:
Составляем подпрограмму задержки:
TIM1: MOV R1,#28
; Загрузка в R1 числа 40
10
M1: DJNZ R1,M1
; < R1>-1; Если результат не ноль, то перейти на М1.
RET
; Выйти из подпрограммы.
Если нужно сформировать задержку вполовину меньше, то это можно
сделать так:
TIM05: MOV R1,#14
; Загрузка в R1 числа 20
10
M1: DJNZ R1,M1
; < R1>-1; Если результат не ноль, то перейти на М1.
RET
; Выйти из подпрограммы.
Естественно, что приведенные решения по реализации тех или иных
типовых операций не являются единственными. Многообразие команд
однокристального микроконтроллера позволяет одну и ту же процедуру
запрограммировать различными способами. Вопрос лишь заключается в том,
чтобы решение было эффективным. Приведенные решения, естественно, не
претендуют на эффективность, так как здесь была поставлена другая задача –
в наиболее очевидной и понятной форме привязать условия выполнения
типовых процедур к их реализации на ассемблере.
16.3 ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ
16.3.1 Каков алгоритм сложения многобайтовых чисел без знака?
16.3.2 Каким должен быть алгоритм сложения вычитания в ОЭВМ
1816?
16.3.3 Каков алгоритм преобразования чисел со знаком из прямого кода
в дополнительный?
16.3.4 Каков алгоритм сдвига многобайтовых чисел влево?
16.3.5 Каков алгоритм сдвига многобайтовых чисел вправо?
16.3.6 Как выглядит программа на ассемблере сложения 3-х байтовых
чисел?
Составляем подпрограмму задержки:
TIM1: MOV R1,#28 ; Загрузка в R1 числа 4010
M1: DJNZ R1,M1 ; < R1>-1; Если результат не ноль, то перейти на М1.
RET ; Выйти из подпрограммы.
Если нужно сформировать задержку вполовину меньше, то это можно
сделать так:
TIM05: MOV R1,#14 ; Загрузка в R1 числа 2010
M1: DJNZ R1,M1 ; < R1>-1; Если результат не ноль, то перейти на М1.
RET ; Выйти из подпрограммы.
Естественно, что приведенные решения по реализации тех или иных
типовых операций не являются единственными. Многообразие команд
однокристального микроконтроллера позволяет одну и ту же процедуру
запрограммировать различными способами. Вопрос лишь заключается в том,
чтобы решение было эффективным. Приведенные решения, естественно, не
претендуют на эффективность, так как здесь была поставлена другая задача –
в наиболее очевидной и понятной форме привязать условия выполнения
типовых процедур к их реализации на ассемблере.
16.3 ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ
16.3.1 Каков алгоритм сложения многобайтовых чисел без знака?
16.3.2 Каким должен быть алгоритм сложения вычитания в ОЭВМ
1816?
16.3.3 Каков алгоритм преобразования чисел со знаком из прямого кода
в дополнительный?
16.3.4 Каков алгоритм сдвига многобайтовых чисел влево?
16.3.5 Каков алгоритм сдвига многобайтовых чисел вправо?
16.3.6 Как выглядит программа на ассемблере сложения 3-х байтовых
чисел?
Страницы
- « первая
- ‹ предыдущая
- …
- 193
- 194
- 195
- 196
- 197
- …
- следующая ›
- последняя »
