论坛
门户
内部优惠
喜欢
话题
VIP会员
搜索
新浪微博
登录
注册
100%
100%
首页
>
软件开发
>
汇编语言
>
经典汇编语言教程:10.2 分类统计程序举例
回复
« 返回列表
111111
精灵王
注册日期
2010-12-08
发帖数
640
QQ
火币
1103枚
粉丝
120
关注
75
加关注
写私信
打招呼
阅读:
2993
回复:
0
经典汇编语言教程:10.2 分类统计程序举例
楼主
#
更多
只看楼主
倒序阅读
发布于:2013-01-28 14:20
保存
100%
100%
[]
1
例10.6 用键盘输入任意一字符串,分类统计该字符串中每个数字和字母的出现次数。
解:
.MODEL SMALL
.DATA
N = 80
Buff
DB N, ?, N DUP(?)
Num
DW 36 DUP(0)
;每个字用于存放'0'~'9','A'~'Z'出现的个数
.CODE
.STARTUP
LEA
DX, Buff
MOV
AH, 0AH
INT
21H
;输入一个字符串
XOR
CH, CH
MOV
CL, Buff+1
;CX=输入字符串的个数
LEA
SI, Buff+2
XOR
BX, BX
.REPEAT
MOV
BL, [SI]
;考虑下面的思考题
INC
SI
.IF BL>='0' ;; BL<='9'
;分类统计'0'~'9'中的每个数字的个数
SUB
BL, '0'
ADD
BX, BX
INC
Num[BX]
.CONTINUE
.ENDIF
.IF BL>='a' ;; BL<='z'
SUB
BL, 20H
;小写变大写
.ENDIF
.IF BL>='A' ;; BL<='Z'
;分类统计'A'~'Z'中的每个字母的个数
SUB
BL, 'A'-10
ADD
BX, BX
INC
Num[BX]
.ENDIF
.UNTILCXZ
.EXIT 0
END
思考题:在本例中,用指令“MOV BL, [SI]”来把当前检测的字符存入BL,当然,我们也可以用AL来代替BL,有关指令要作相应的改动,但这样做,会更方便吗?希望读者能知道:为什么要用BL,而不用AL?
喜欢
0
评分
0
最新喜欢:
回复
100%
发帖
回复
« 返回列表
普通帖
您需要登录后才可以回帖,
登录
或者
注册
100%
返回顶部
关闭
最新喜欢