汇编语言编程 编写一程序,使得计算机屏幕上每隔五秒显示一行字符"Good morning",按任意
汇编语言编程编写一程序,使得计算机屏幕上每隔五秒显示一行字符"Goodmorning",按任意键结束...
汇编语言编程
编写一程序,使得计算机屏幕上每隔五秒显示一行字符"Good morning",按任意键结束 展开
编写一程序,使得计算机屏幕上每隔五秒显示一行字符"Good morning",按任意键结束 展开
展开全部
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
(注意,字符串应该以$结束),代码如下:
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
追问
还有一个问题:
汇编语言编程
编写一程序统计学生的数学成绩,分别归类90~99分,80~89分,70~79分,60~69分及60分以下,并将各段的人数送入内存单元中.
麻烦了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询