?? 8255.asm
字號(hào):
data segment
ioport equ 0c400h-0280h
io8255a equ ioport+28ah
io8255b equ ioport+28bh
portc1 db 24h,44h,04h,44h,04h,44h,04h ;六個(gè)燈可能
db 81h,82h,80h,82h,80h,82h,80h ;的狀態(tài)數(shù)據(jù)
db 0ffh ;結(jié)束標(biāo)志
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov dx,io8255b
mov al,90h
out dx,al ;設(shè)置8255為C口輸出
mov dx,io8255a
re_on: mov bx,0
on: mov al,portc1[bx]
cmp al,0ffh
jz re_on
out dx,al ;點(diǎn)亮相應(yīng)的燈
inc bx
mov cx,0ffffh ;參數(shù)賦初值
test al,21h ;是否有綠燈亮
jz de1 ;沒(méi)有,短延時(shí)
mov cx,0ffffh ;有,長(zhǎng)延時(shí)
de1: mov di,0ffffh ;di賦初值
de0: dec di ;減1計(jì)數(shù)
jnz de0 ;di不為0
loop de1
push dx
mov ah,06h
mov dl,0ffh
int 21h
pop dx
jz on ;沒(méi)有,轉(zhuǎn)到on
exit: mov ah,4ch ;返回
int 21h
code ends
end start
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -