Составители:
37
080a 00 nop
холостая команда (для совместимости с
другой версией)
indicm 080b 4e mov C, М
переслать рабочий байт в буферный
регистр C из ячейки памяти с адресом в
паре регистров HL
indicc 080c
cd 51
08
call key
вызов подпрограммы вычисления кода
нажатой клавиши
080f fe 04 cpi 04 нажата цифровая клавиша ?
0811
d2 22
08
jnc msba
если нажата директивная клавиша, то
перейти к метке msba
0814 47 mov B, A
если нажата цифровая клавиша, то
сохранить ее тетракод в регистре B
0815 79 mov A, C загрузить рабочий байт в аккумулятор
0816 17 ral
0817 17 ral
сдвинуть влево рабочий байт в
аккумуляторе на два бита,
0818
00 00
00
nop nop
nop
3 холостых команды (для совместимости с
другой версией)
081b e6 fc ani fc
освободить (обнулить) два крайних левых
бита в аккумуляторе под тетракод
нажатой клавиши (маска fc = 1111 1100)
081d b0 ora B
и записать тетракод из регистра B в два
младших бита аккумулятора
081e 4f mov C, A
сохранить полученный рабочий байт в
регистре C
081f
c3 0c
08
jmp indicc
и высветить его (а также адрес) на
линейках светодиодов
msba 0822 fe 04 cpi 04 нажата клавиша старшего байта адреса ?
0824
c2 2b
08
jnz lsba если нет, то перейти к метке lsba
0827 61 mov H, C
если да, то поместить старший байт
адреса в регистр H
0828
c3 0b
08
jmp
indicm
высветить новый адрес и его содержимое
lsba 082b fe 05 cpi 05 нажата клавиша младшего байта адреса ?
082d
c2 35
08
jnz mod если нет, то перейти к метке mod
0830 00 nop
0831 69 mov L, C если да, то поместить старший байт
Страницы
- « первая
- ‹ предыдущая
- …
- 35
- 36
- 37
- 38
- 39
- …
- следующая ›
- последняя »
