Какие функции прерываний используются в обработчике прерываний от клавиатуры? - Assembler
Формулировка задачи:
Под функциями же имеется ввиду int ..h?
Решение задачи: «Какие функции прерываний используются в обработчике прерываний от клавиатуры?»
textual
Листинг программы
mov ah,X <-- X это номер функции int 16h <-- 16h это номер прерывания
Объяснение кода листинга программы
- mov ah,X — Переменная X содержит номер функции, которую необходимо выполнить.
- int 16h — Осуществляет переход в обработчик прерывания с номером 16h.
- retf — Осуществляет возврат в предыдущую подпрограмму после выполнения функции.
- cmp ah,9 — Сравнивает значение регистра AH с 9.
- jne skip_io — Если значение регистра AH не равно 9, то происходит переход к метке skip_io.
- in al,dx — Вход в AL значение порта DX.
- out dx,al — Выход из порта DX значением AL.
- mov ah,0 — Устанавливает значение регистра AH равным 0.
- int 10h — Осуществляет переход в обработчик прерывания с номером 10h.
- retf — Осуществляет возврат в предыдущую подпрограмму после выполнения функции.
- cmp ah,1 — Сравнивает значение регистра AH с 1.
- jne skip_in — Если значение регистра AH не равно 1, то происходит переход к метке skip_in.
- in al,dx — Вход в AL значение порта DX.
- out dx,al — Выход из порта DX значением AL.
- mov ah,2 — Устанавливает значение регистра AH равным 2.
- int 18h — Осуществляет переход в обработчик прерывания с номером 18h.
- retf — Осуществляет возврат в предыдущую подпрограмму после выполнения функции.
- cmp ah,3 — Сравнивает значение регистра AH с 3.
- jne skip_out — Если значение регистра AH не равно 3, то происходит переход к метке skip_out.
- out dx,al — Выход из порта DX значением AL.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д