第一范文网 - 专业文章范例文档资料分享平台

IBM_PC汇编语言程序的设计课后习题答案(第二版沈美明))

来源:用户分享 时间:2025/5/26 4:00:48 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

;--------------------------------------------------------------------------

CSEG SEGMENT

MAIN PROC FAR

ASSUME CS: CSEG, DS: DSEG

START: PUSH DS ;设置返回DOS

SUB AX, AX

PUSH AX

MOV AX, DSEG

MOV DS, AX ;给DS赋值

BEGIN: LEA SI, ARRAY

MOV DX, 0 ;(DX)用于存放所求的结果

MOV AX, [SI]

MOV BX, [SI+2]

CMP AX, BX ;比较第一和第二两个数是否相等

JNE NEXT1

INC DX

NEXT1: CMP [SI+4], AX ;比较第一和第三两个数是否相等

JNE NEXT2

INC DX

NEXT2: CMP [SI+4], BX ;比较第二和第三两个数是否相等

JNE NUM

INC DX

NUM: CMP DX, 3

JL DISP

DEC DX

DISP: ADD DL, 30H ;转换为ASCII码

MOV AH, 2 ;显示一个字符

INT 21H

RET

MAIN ENDP

CSEG ENDS ;以上定义代码段

;--------------------------------------------------------------------------

END START

5.22 从键盘输入一系列字符(以回车符结束),并按字母、数字、及其它字符分类计数,最后显示出这三类的计数结果。

答:程序如下:

DSEG SEGMENT

ALPHABET DB ‘输入的字母字符个数为:’, ‘$’

NUMBER DB ‘输入的数字字符个数为:’, ‘$’

OTHER DB ‘输入的其它字符个数为:’, ‘$’

CRLF DB 0DH, 0AH, ‘$’

DSEG ENDS

;--------------------------------------------------------------------------

CSEG SEGMENT

MAIN PROC FAR

ASSUME CS: CSEG, DS: DSEG

START: PUSH DS ;设置返回DOS

SUB AX, AX

PUSH AX

MOV AX, DSEG

MOV DS, AX ;给DS赋值

BEGIN: MOV BX, 0 ;字母字符计数器

MOV SI, 0 ;数字字符计数器

MOV DI, 0 ;其它字符计数器

INPUT: MOV AH, 1 ;输入一个字符

INT 21H

CMP AL, 0DH ;是回车符吗?

JE DISP

CMP AL, 30H ;<数字0吗?

JAE NEXT1

OTHER: INC DI ;是其它字符

IBM_PC汇编语言程序的设计课后习题答案(第二版沈美明)).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c4r46t44sfx7u3cm9b9nu86wqu5roxb0035s_12.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top