📄 中断数码管二.txt
字号:
assume cs:code
code segment public
org 100h
start: mov cx,0
jmp start1
segcod db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h,5eh,79h,71h
start1: cli
mov dx,04a0h
mov ax,13h
out dx,ax ;ICW1, ICW4 NEEDED
mov dx,04a2h
mov ax,80h
out dx,ax ;ICW2 中断类型80h
mov ax,01h;
out dx,ax ;ICW4
mov ax,00h
out dx,ax ;OCW1, 开放所有中断
nop ;以上为8259初始化
mov ax,0
mov ds,ax
mov di,200h
mov ax,offset int0
mov ds:[di],ax
add di,2
mov ds:[di],100h
add di,2
mov ax,offset int1
mov ds;[di],ax
add di,2
mov ds:[di],100h
sti
main: mov ax,7fh
mov dx,04b0h
out dx,ax
jmp main
int0: sti
nop
mov si,offset segcod
mov bx,0
circle1:mov ax,100h
mov ds,ax
mov ax,[si+bx]
mov dx,04b0h
out dx,al
mov cx,50000
lop1: loop lop1
inc bx
cmp bx,10h
jne circle1
mov dx,04a0h
mov ax,20h
out dx,al
iret
int1: sti
nop
mov si,offset segcod
mov bx,0fh
circle2:mov ax,100h
mov ds,ax
mov ax,[si+bx]
mov dx,04b0h
out dx,al
mov cx,50000
lop2: loop lop2
dec bx
cmp bx,0ffh
jne circle2
mov dx,04a0h
mov ax,20h
out dx,al
iret
code ends
end start
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -