汇编语言编程如何输出A~Z并将显示结果重复5次后退出 5

 我来答
groundhappy
2011-10-22 · TA获得超过722个赞
知道答主
回答量:146
采纳率:0%
帮助的人:110万
展开全部
.386
.model flat,stdcall
option casemap:none
includelib msvcrt.lib
printf PROTO C :DWORD,:vararg
system PROTO C :DWORD
.data
str1 BYTE "%c",0aH,0 ;输出字符串
str2 BYTE "pause",0aH,0 ;系统函数system停下来的调用字符串
letter DWORD 65 ;字符A
cout1 DWORD 26 ;计数器共26个字母
cout2 DWORD 6 ;循环5次的计数器。。这里为什么是6往下看
.code
start:
a1:
MOV EDX,1
SUB cout2,EDX ;6-1=5次循环,这里是便于跳转
MOV EDX,26
MOV cout1,EDX ;循环后初始化cout1
MOV EDX,65
MOV letter,EDX ;循环后初始化letter
MOV EDX,0
CMP EDX,cout2 ;5次循环完了?
JE ending
a2:
MOV EDX,0 ;小循环26次完了?
CMP EDX,cout1
JE a1
INVOKE printf,offset str1,letter ;输出字符
MOV EAX,1
ADD letter,EAX ;字符自加一
SUB cout1,EAX ;计数器自减1
JMP a2
ending:
invoke system,offset str2 ;暂停,观察结果
ret
end start
;程序写的有点小麻烦,其实可以写的更简单的,
;比如比较时直接比较字符是否为“Z”,而不是比较计数器cout1
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式