云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > IBM-PC汇编语言程序设计课后习题答案第二版沉美明资料

IBM-PC汇编语言程序设计课后习题答案第二版沉美明资料

  • 62 次阅读
  • 3 次下载
  • 2025/5/1 22:40:19

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 ;是其它字符 JMP SHORT INPUT

NEXT1: CMP AL, 39H ;>数字9吗?

JA NEXT2

INC SI ;是数字字符 JMP SHORT INPUT

NEXT2: CMP AL, 41H ;<字母A吗? JAE NEXT3

JMP SHORT OTHER ;是其它字符 NEXT3: CMP AL, 5AH ;>字母Z吗? JA NEXT4

INC BX ;是字母字符A~Z JMP SHORT INPUT

NEXT4: CMP AL, 61H ;<字母a吗? JAE NEXT5

JMP SHORT OTHER ;是其它字符 NEXT5: CMP AL, 7AH ;>字母z吗? JA SHORT OTHER ;是其它字符 INC BX ;是字母字符a~z JMP SHORT INPUT DISP: LEA DX, ALPHABET CALL DISPLAY LEA DX, NUMBER MOV BX, SI CALL DISPLAY LEA DX, OTHER MOV BX, DI

CALL DISPLAY RET MAIN ENDP

--------------------------------------------------------------------------

DISPLAY PROC NEAR

MOV AH, 09H ;显示字符串功能调用 INT 21H

CALL BINIHEX ;调把BX中二进制数转换为16进制显示子程序 LEA DX, CRLF

MOV AH, 09H ;显示回车换行 INT 21H RET

DISPLAY ENDP

--------------------------------------------------------------------------

BINIHEX PROC NEAR ;将BX中二进制数转换为16进制数显示子程序 MOV CH, 4

ROTATE: MOV CL, 4 ROL BX, CL MOV DL, BL AND DL, 0FH ADD DL, 30H

CMP DL, 3AH ;是A~F吗? JL PRINT_IT ADD DL, 07H

PRINT_IT: MOV AH, 02H ;显示一个字符 INT 21H DEC CH JNZ ROTATE RET

BINIHEX ENDP

CSEG ENDS ;以上定义代码段

-------------------------------------------------------------------------- END START

5.23 已定义了两个整数变量A和B,试编写程序完成下列功能: (1) 若两个数中有一个是奇数,则将奇数存入A中,偶数存入B中; (2) 若两个数中均为奇数,则将两数加1后存回原变量; (3) 若两个数中均为偶数,则两个变量均不改变。 答:程序如下: DSEG SEGMENT A DW ? B DW ? DSEG ENDS

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

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, 30

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com