汇编语言编程 编写一程序,使得计算机屏幕上每隔五秒显示一行字符"Good morning",按任意

2025-03-18 23:41:09
推荐回答(2个)
回答1:

1.调试通过 ,用MASM编译,其实逻辑很简单,用中断21H的9号中断服务程序显示字符串Good morning
(注意,字符串应该以$结束),代码如下:

MOV DX,OFFSET CONTENT
MOV AH,9
INT 21H
2。然后调用延时子程序延时5s,我的延时不一定精确,只是象征性的延时,你可以根据延时时间具体计算,很容易的,延时子程序在DELAY,你只需改变BX,CX的值即可改变延时时间

3.最后用中断16H的1号中断服务程序判断是否有按键按下,若有键盘按下,该功能置ZF = 0,否则 ZF = 1,代码如下:

MOV AH,01H
INT 16H
4.判断ZF是否为1 ,为1 ,证明无按键按下,跳转A1继续输出字符串,否则结束程序

以上就是我的程序的思路,是不是很简单啊,具体程序如下,如果有什么问题可以继续问,一定为你解答!

DATA SEGMENT

CONTENT DB 'Good morning ','$'
DATA ENDS

CODE SEGMENT
ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA
MOV DS,AX
A1:
MOV DX,OFFSET CONTENT
MOV AH,9
INT 21H
CALL DELAY
MOV AH,01H
INT 16H
JZ A1
MOV AH,4CH
INT 21H

DELAY PROC NEAR
MOV BX,25000
A2:MOV CX,20000
LOOP $
DEC BX
JNZ A2
RET
DELAY ENDP

CODE ENDS
END START

回答2:

#include

#include

using namespace std;

void main()

{

for (;;)

{

cout<<"Good morning"<

Sleep(5000);

}

}

运行结果每五秒显示一次:

记得采纳哦