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

answer4

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

START: SKIP1: SKIP2: SKIP3:

;测试CF SKIP4: ;输出标志位状态 CODE START

4.24 编写程序,从键盘上输入一个字符串,统计其中数字字符,小写字母,大写字母,空

格的个数并显示。 答:

PUSH POP LEA CALL MOV LEA CALL ADD PUSHF LEA CALL POP MOV TEST JZ INC MOV MOV TEST JZ INC MOV MOV TEST JZ INC MOV MOV TEST JZ INC MOV LEA MOV INT MOV INT ENDS END

CS DS

DX, MESS1 READDEC CX, AX DX, MESS1 READDEC AX, CX DX, MESS2 WRITEDEC BX AL, ?0?

BX, 100 0000B SKP1 AL ZF, AL AL, ?0?

BX, 1000 0000 0000B SKP2 AL OF, AL AL, ?0?

BX, 1000 0000B SKP3 AL SF, AL AL, ?0? BX, 1 SKP4 AL CF, AL

DX, MESS3 AH, 9 21H AX, 4C00H 21H

;输入X

;输入Y ;求和

;保留标志位状态

;输出两个数的和

;标志寄存器内容转存入BX ;测试ZF

;测试OF

;测试SF

INCLUDE YLIB.H CODE SEGMENT ASSUME CS: CODE MESS1 DB 0DH, 0AH, ?Input a string please : $? BUFFER DB 81, ?, 81 DUP(?)

MESS2 DB 0DH, 0AH, ?Digits: $? MESS3 DB 0DH, 0AH, ?Uppercase alphabet: $? MESS4 DB 0DH, 0AH, ?Lowercase alphabet: $? MESS5 DB 0DH, 0AH, ?Space : $? START: PUSH POP LEA MOV INT LEA MOV INT XOR XOR MOV MOV LEA ONE: MOV CMP JNE L1: INC JMP L2: CMP JB CMP JA L3: INC JMP L4: CMP JB CMP JA L5: INC JMP L6: CMP JB CMP JA CS DS DX, MESS1 AH, 09H 21H DX, BUFFER AH, 0AH 21H DX, DX BX, BX CL, BUFFER+1 CH, 0 SI, BUFFER+2 AL, [SI] AL, ? ? L2 DL NEXT AL, ?0? NEXT AL, ?9? L4 DH NEXT AL, ?A? NEXT AL, ?Z? L6 BH NEXT AL, ?a? NEXT AL, ?z? NEXT

CX

;输出提示信息;输入字符串;各计数器清零;字符个数送;设置字符指针;取出一个字符;空格字符计数;数字字符计数;大写字符计数

NEXT:

;输出空格个数 CODE START

4.25 编写程序,从键盘输入一个无符号字整数,判断它是否为素数,输出判断结果。

答:

INCLUDE YLIB.H

CODE SEGMENT ASSUME CS: CODE MESS1 DB 0DH, 0AH, ?Input a unsigned number please : $?

YES DB 0DH, 0AH, “It?s a prime number . $” NO DB 0DH, 0AH, ?It isn?t a prime number . $? START:

PUSH CS POP DS LEA DX, MESS1 CALL READDEC ;输入一个无符号整数 MOV CX, AX SHR CX, 1 ;测试最大值装入CX MOV BX, 2 ;第一个测试值 TST: CMP BX, CX JA L_YES ;测试完成,转L_YES

INC

INC LOOP PUSH MOV LEA MOV CALL LEA MOV MOV CALL LEA MOV MOV CALL POP MOV MOV LEA CALL MOV INT ENDS END

BL SI ONE DX AL, DH DX, MESS2 AH, 0

WRITEDEC DX, MESS4 AL, BL AH, 0

WRITEDEC DX, MESS3 AL, BH AH, 0

WRITEDEC DX AL, DL AH, 0

DX, MESS5 WRITEDEC AX, 4C00H 21H

;小写字母计数 ;循环控制

;输出数字字符个数

;输出小写字母个数

;输出大写字母个数

AH, 09H 21H AX, 4C00H 21H START

4.26 编写程序,按学号(1~40)输入一个班的汇编语言考试成绩,统计每个学生成绩在班

内的排名,按学号顺序输出这个排名。(提示:排名等于成绩高于他/她的人数加1) 答: DATA SEGEMNT SCORE DB 40 DUP(?) ORDER DB 40 DUP(?) MESS1 DB 0DH, 0AH, ?Input a score of NO. $? MESS2 DB 0DH, 0AH, ?NO. = $? MESS3 DB 0DH, 0AH, ?Order= $? DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS: DATA START: MOV AX, DATA MOV DS, AX LEA SI, SCORE MOV CX, 40 MOV BX, 1 INPUT: LEA DX, MESS1 MOV AX, BX CALL WRITEDEC ;输出提示信息和学号 MOV DX, -1 CALL READDEC ;输入一名学生的成绩 MOV [SI], AL ;保存成绩 INC BX

PUSH CWD DIV POP CMP JZ INC JMP L_YES: LEA JMP L_NO: LEA OUTPUT: MOV INT MOV INT CODE ENDS END

AX

BX AX DX, 0 L_NO BX TST DX, YES OUTPUT DX, NO

;测试:是否整除?

;已整除,转L_NO ;形成下一个测试数据 ;继续测试

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