最后改进代码:
.MODELTINY
.STACK100
.DATA
ledshow DB 11111110B ;数据段定义变量按“变量名 数据类型 数据”;DB为字节型
seven DB 07h
zero DB 00h
.CODE
START:A equ 0270H;数码管端口地址
B equ 0271H;0-1开关端口地址
C equ 0272H;控制数码管显示内容
movax,@DATA ;获得当前程序的数据段地址,并传送给数据段DS寄存器保存。
mov ds,ax ;这样,程序中访问存储器操作数时,默认情况下就会从DS指定的数据段进行存取
movdx,273h
moval,10000010H
outdx,al
function:
call delay
movdx,B
inal,dx ;从dx端口地址中将数据读入到al中
andal,00001111B
cmpal,00000001B
jefun1
cmpal,00000010B
jefun2
cmpal,00000100B
jefun3
cmpal,00001000B
jefun4
fun1:movdx,A
moval,00H
outdx,al ;将al中的值读出到dx端口地址中
jmpfunction
fun2:movdx,A
moval,0FFH
outdx,al
movdx,C
moval,01011011B