146 08AD 0E FA reset2: mvi c,povdr ; *7 тактов - ожидание отпускания клавиши
147 08AF DB 82 povt4: in portc ; *10 тактов - опрос клавиатуры
148 08B1 A7 ana a ; *4 такта - ни одна клавиша не нажата ?
149 08B2 C2 AD 08 jnz reset2 ; *10 тактов - нет, что-то нажато
150 ; защита от дребезга при отпускании клавиши
151 08B5 0D dcr c ; *10 тактов - ничего не нажато, уменьшение счетчика при защ. от дребезга
152 08B6 C2 AF 08 jnz povt4 ; *10 тактов - дребезг еще не окончен
153 08B9 7B mov a,e ; *5 тактов - сохранение аккумулятора
154 08BA E1 pop h ; *если да, то коррекция стека перед аврийным выходом из подпрограммы
155 08BB C3 07 08 jmp circl ; *переход в начало программы
156 08BE C9 exit: ret ; 10 тактов - Выход из подрограммы
157 ;
158 ;!!!-----------------РАССЧЁТ ВРЕМЕННОЙ ЗАДЕРЖКИ----------------------!!!
159 ;
160 ; Длительность в тактах подпрограммы задержки на 1 секунду (* не считается):
161 ; 10+time*[10+5+5+5+4+10+5+7+10]+10=2,22*10exp6
162 ; 20+time*61=2,22*10exp6
163 ; time*61=2219980
164 ; time=36393
165 ; остаток=2219980-61*36393=7 обеспечивается выполнением одной пустой команды (ani)
166 ;------------------------------------------------------------------------------------
167 ;
168 end ; директива ассемблера, означающая конец текста программы
Ассемблировано строк - 168
Всего байт - 191
Обнаружено ошибок - 0
Таблица символов
PORTA 0080 PORTB 0081
PORTC 0082 PORCRL 0083
POVDR 00FA KODKL 0015
KODKL0 0001 KODKL4 0010
KODKL2 0004 TIME 8E29
CIRCL 0807 TUKI 080D
POVT 080F RESET1 081D
POVT1 081F DALEE 0832
SET 083A RETI 083C
POVT7 0845 RESET7 084C
POVT8 084E DVIGAI 086B
MOIKA 0880 SEC 0889
UMEN 088E POVT3 089F
RESET2 08AD POVT4 08AF
EXIT 08BE
Кросс-ассемблер 80/85 *** Объектный файл v1.obj
Входной файл > v1.asm
Файл листинга > v1.lst
0800 31 00 09 3E 89 D3 83 3E 60 D3 80 16 60 0E FA DB
0810 82 E6 15 CA 0D 08 0D C2 0F 08 DB 82 5F 0E FA DB
0820 82 A7 C2 1D 08 0D C2 1F 08 7B FE 10 C2 32 08 C3
0830 80 08 FE 01 C2 3A 08 C3 07 08 16 1E DB 82 E6 10
0840 CA 6B 08 0E FA 0D C2 45 08 DB 82 5F 0E FA DB 82
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.