汇编语言 中断程序代码

编写一个中断处理程序,要求在主程序运行过程中,每隔10秒响铃一次,同时在屏幕上显示信息“Thebellisring”。... 编写一个中断处理程序,要求在主程序运行过程中,每隔10秒响铃一次,同时在屏幕上显示信息“The bell is ring”。 展开
 我来答
知狂
推荐于2018-03-19 · TA获得超过169个赞
知道答主
回答量:68
采纳率:0%
帮助的人:68.5万
展开全部
还是找到了以前写的,拿分来
;***************************
;purpose:ring and display a message every 10 seconds
;***************************
.model small
.stack 100h
.data
count dw 1
msg db 'The bell is ringing!',0dh,0ah,'$'
.code
main proc far
start:
mov ax,@data
mov ds,ax
mov al,1ch
mov ah,35h ;get interrupt vector
int 21h
push es
push bx
push ds

mov dx,offset ring
mov ax,seg ring
mov ds,ax
mov al,1ch
mov ah,25h
int 21h

pop ds
in al,21h
and al,11111110b
out 21h,al
sti
mov di,2000
delay:
mov si,3000
delay1:
dec si
jnz delay

pop dx
pop ds
mov al,1ch
mov ah,25h
int 21h
mov ah,4ch
int 21h
main endp
;---------------------
;purpose:ring every 10 seconds when substituted for interrupt 1ch
ring proc near
push ds
push ax
push cx
push dx
mov ax,@data
mov ds,ax
sti
dec count
jnz exit
mov dx,offset msg
mov ah,09h
int 21h

mov dx,100
in al,61h
and al,0fch
sound:
xor al,02
out 61h,al
mov cx,1400h
wait1:
loop wait1
dec dx
jne sound
mov count ,182
exit:
cli
pop dx
pop cx
pop ax
pop ds
iret
ring endp
end start
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式