Реферат: Вектор переривань та процедура обслуговування переривань

ret ; Вихід з процедури

ton0 endp ; Кінець універсальної процедури

ton1 endp ; Кінець процедури генерації звука 1

ton2 endp ; Кінець процедури генерації звука 2

kbin proc near ; Ввод з клавіатури з очікуванням

mov ah,0 ; Функція 0

int 16h ; клавіатурного переривання

ret ; Вихід з процедури

kbinendp ; Кінець процедури вводу з клавіатури

code ends ; Кінець сегмента (кодового)

END Start ; Вказівка на точку входа

Завдання 2. Написати програму, що видає різні звуки при натисненні на клавіші '1' і '2'. Для генерації звуку слід використовувати вихід каналу 2 таймера. Вихід з програми повинен здійснюватися по натисненню клавіші 'q'.

Assume CS: Code, DS: Code

Code SEGMENT

org 100h

frequency1 equ 1000 ; Коефіц. ділення 1

frequency2 equ 3000 ; Коефіц. ділення 2

duration equ 50000 ; Тривалість

port_b equ 61h ; Адреса системного порта В

.286

Start proc near ; Основна процедура

movax,cs

movds,ax ; DS = CS

beg1: call kbin ; Опитування клавіатури

cmp al,'1' ; = '1' ?

jnz beg2 ; ͳ

callton1 ; Звуквисоти 1

jmp beg1 ; Перехіднапочаток циклу

beg2: cmp al,'2' ; = '2' ?

К-во Просмотров: 722
Бесплатно скачать Реферат: Вектор переривань та процедура обслуговування переривань