?? jtd.asm
字號:
;***********************************;
;* 十字路口紅綠燈模擬演示程序 *;
;* 端口各燈的設置: *;
;* 1紅 1黃 1綠 0 0 2紅 2黃 2綠 *;
;***********************************;
data segment
ioport equ 0d400h-0280h
io8255a equ ioport+28ah
io8255b equ ioport+28bh
portc1 db 24h,44h,04h,44h,04h,44h,04h ;六個燈可能
db 81h,82h,80h,82h,80h,82h,80h ;的狀態數據
db 0ffh ;結束標志
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 ;設置8255為C口輸出
mov dx,io8255a
re_on: mov bx,0
on: mov al,portc1[bx]
cmp al,0ffh
jz re_on
out dx,al ;點亮相應的燈
inc bx
mov cx,20 ;參數賦初值
test al,21h ;是否有綠燈亮
jz de1 ;沒有,短延時
mov cx,2000 ;有,長延時
de1: mov di,5000 ;di賦初值5000
de0: dec di ;減1計數
jnz de0 ;di不為0
loop de1
push dx
mov ah,06h
mov dl,0ffh
int 21h
pop dx
jz on ;沒有,轉到on
exit: mov ah,4ch ;返回
int 21h
code ends
end start
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -