输入一个字符串,字符串长度大于6,让黄灯长亮,否则一直闪烁
程序员文章站
2024-02-02 15:42:10
...
DATA SEGMENT
BUF DB 30
DB 0 ;可以看看书,这个地方是可以自动得到长度的
DB 30 DUP(0)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
DELAY PROC NEAR ;延迟程序
PUSH CX
PUSH DI
MOV CX,1000H
Y1:MOV DI,1000H
X1:DEC DI
JNZ X1
LOOP Y1
POP DI
POP CX
RET
DELAY ENDP
START: LED:MOV AL,80H ;设置输出方式,跟交通灯一样的
MOV DX,28BH ;28BH是控制字寄存器
OUT DX,AL ;初始化8255
MOV AX,DATA
MOV DS,AX
LEA DX,BUF ;输入字符串,系统功能调用,
MOV AH,0AH
INT 21H
MOV AL,BUF+1 ;获得字符串长度
CMP AL,6
JA SHAN
CHANG_LIANG: MOV AL,80H ;这里的80H,跟上面的含义不一样,可以从LED灯的图片看出
MOV DX,28AH ;这个地方采用了C口方式输出,可以根据自己的需要改为别的方式
OUT DX,AL ;点亮黄灯
CALL DELAY ;使用延迟程序
JMP CHANG_LIANG ;死循环,表示常亮
SHAN: MOV AL,80H ;这里的80H,跟上面的含义不一样,可以从LED灯的图片看出
MOV DX,28AH ;这个地方采用了C口方式输出,可以根据自己的需要改为别的方式
OUT DX,AL ;点亮黄灯
CALL DELAY ;使用延迟程序
MOV AL,00H ;熄灭黄灯
MOV DX,28AH ;这个地方采用了C口方式输出,可以根据自己的需要改为别的方式
OUT DX,AL ;熄灭黄灯
CALL DELAY ;使用延迟程序
LOOP SHAN
CODE ENDS
END START
上一篇: zzuli OJ 1045: 数值统计
下一篇: 王爽《汇编语言》实验十10.3数值显示