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

汇编语言编程编写一程序,使得计算机屏幕上每隔五秒显示一行字符"Goodmorning",按任意键结束... 汇编语言编程
编写一程序,使得计算机屏幕上每隔五秒显示一行字符"Good morning",按任意键结束
展开
 我来答
136071715
2013-11-13 · TA获得超过126个赞
知道小有建树答主
回答量:109
采纳率:0%
帮助的人:101万
展开全部
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
追问
还有一个问题:
汇编语言编程
编写一程序统计学生的数学成绩,分别归类90~99分,80~89分,70~79分,60~69分及60分以下,并将各段的人数送入内存单元中.
麻烦了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sfc0907
2013-11-12 · 超过22用户采纳过TA的回答
知道答主
回答量:60
采纳率:0%
帮助的人:58.3万
展开全部

#include <iostream>

#include <windows.h>

using namespace std;

void main()

{

for (;;)

{

cout<<"Good morning"<<endl;

Sleep(5000);

}

}

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

记得采纳哦

更多追问追答
追问
谢谢,可是这个不是汇编语言程序
追答
这个我就不太清楚了,汇编现在很少用了!不好意思,我也帮不了你了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式