微机原理-虚拟仿真实验-LED显示电路汇编代码

微机原理-虚拟仿真实验-LED显示电路汇编代码

data   segment
portA  equ 400H        ; PA口地址
s      db "twenty four LEDs flicker circularly. Press any key to exit ...",0dh,0ah,"$"   ;程序功能提示
data   ends
code   segment
        assume cs:code,ds:data
go:    mov ax,data
       mov ds,ax
      mov dx,offset s    ;显示提示
      mov ah,9
      int 21h
       mov dx,porta+3
       mov al,80h
       Out dx,al         ; 三端口均初始化为方式0输出
L0:    mov si,24
       mov bx,7         ;  低16位初始值设为1(一个灯亮)
       mov cl,0          ;  高8位初始值设为0
L1:    mov ah,0bH
        Int 21h         ; 有无按键
        Cmp al,0ffH
        Jz  exit       
        mov dx,porta   ; 输出24位数
        mov al,bl
        Out dx,al  
        Inc  dx
        mov al,bh
        Out dx,al  
        Inc  dx
        mov al,cl
        Out dx,al  
        Call delay05    ; 延时
        SHL  bx,1       ;  低16位左移一位
        Rcl  cl,1         ;  高8位左移一位
        dec si       
        jnz  L1
        Jmp  L0         ; 重新开始
Exit:   mov ah,4ch
        Int 21h
delay05 proc near        ; 循环延时子程序
        push cx
        push bx
        mov cx,0020H
d1:     mov bx,1200h
d2:     dec bx
        jnz d2
        loop d1
        pop bx
        pop cx
        ret
delay05 endp
Code   ends
        End go

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

亓官劼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值