📄 6.asm
字号:
stack segment
sta dw 20 dup(?)
top equ length sta
stack ends
data segment
csreg dw ?
ipreg dw ?
flag db 00
mess db'ret',0ah,0dh
db'8255 pa pb',0ah,0dh,'$'
data ends
code segment
assume cs:code,ds:data,ss:stack
start:
mov ax,data
mov ds,ax
mov dx,offset mess
mov ah,09h
int 21h
cli
mov dx,213h
mov al,90h
out dx,al
mov ax,350fh
int 21h
mov ax,es
mov csreg,ax
mov ipreg,bx
push ds
mov dx,seg int_proc
mov ds,dx
mov dx,offset int_proc
mov ax,250fh
int 21h
pop ds
in al,21h
push ax
and al,7fh
out 21h,al
sti
wait_in:
mov ax,01h
int 16h
jz wait_in
mov dx,ipreg
mov ax,csreg
mov ds,ax
mov ax,250fh
int 21h
in al,21h
or al,10000000b
out 21h,al
mov ax,4c00h
int 21h
int_proc:
cli
mov dx,210h
in al,dx
mov dx,211h
not al
out dx,al
mov al,20h
out 20h,al
sti
iret
code ends
end start
;线路:
;8259.IRQ7 ------------- 单脉冲
;8255.CS --------------- 210-217H
;8255.A0-A7 ------------ 8个开关
;8255.B0-B7 ------------ 8个LED
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -