1. Нужны если требуется гарантированная совместимость с любыми системами. Наиболее частая проблема которая встречается - многотерминальная система разрешает прерывания автоматом и половина ввода попадает в систему вместо программы, а также система генерит эхо для этого ввода. Получается каша.
2. Проскоков быть не должно если прерывания от клавиатуры запрещены. Если они разрешены, см проблему в п. 1
Как минимум нужно сделать CLR @#177560 - в однотерминальной системе этого достаточно.
Насчет выскакивания сразу: а ты собственно код клавиши нажатой извлекаешь из регистра данных?
---------- Post added at 23:12 ---------- Previous post was at 23:02 ----------
Вот для примера подпрограмма POLL которая либо возвращает код нажатой клавиши в R0 либо устанавливает бит C если ничего нажато не было
По метке 10$ о бите C не заботимся - он уже очищен командой TST выше.Код:POLL: TSTB @#177560 ;ЧТО-НИБУДЬ НАЖАТО? BMI 10$ ;MI -> ДА SEC ;УСТАНАВЛИВАЕМ ПРИЗНАК ОТСУТСТВИЯ НАЖАТИЯ RETURN ;ВОЗВРАТ 10$: MOVB @#177562,R0 ;ДА, ПОЛУЧАЕМ КОД RETURN ;ВОЗВРАТ






Ответить с цитированием
Размещение рекламы на форуме способствует его дальнейшему развитию 
