教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 资格考试 >

《汇编语言》练习册答案

来源:网络收集 时间:2026-03-26
导读: 《汇编语言练习册答案》 第一套 一、填空题: 1、 MOV AX,BX 设(AX)=3064H,(BX)=1234H 指令执行后(AX)=_ 1234H _,(BX)=_ 1234H _ 2、 ADD CL,BH 设(CL)=29H,(BH)=4DH 指令执行后(CL)=___76H______,(BH)=__4DH _______ 3、 XCHG BX,(BP+SI) 设(BX)= 6F3

《汇编语言练习册答案》

第一套

一、填空题:

1、 MOV AX,BX 设(AX)=3064H,(BX)=1234H

指令执行后(AX)=_ 1234H _,(BX)=_ 1234H _

2、 ADD CL,BH 设(CL)=29H,(BH)=4DH

指令执行后(CL)=___76H______,(BH)=__4DH _______

3、 XCHG BX,(BP+SI)

设(BX)= 6F30H,(BP)=0200H,(SI)=0046H,(SS)=2F00H, (2F246H)=4154H,OPR2的物

理地址=2F000+0200+0046=2F246

则指令执行后(BX)=4154H ,(2F246H)= 6F30H

4、LES DI,[BX]设(DS)=B000H, (BX)=080AH,(0B080AH)= 05AEH, (0B080CH)=4000H 则指令执行后 (DI)= 05AEH ,(ES)= 4000H 5、LDS SI,[10H]设(DS)=C000H, (C0010H)=0180H,(C0012H)=2000H, 则指令执行后 ,(DS)=6、MUL AL, BL

AAM

如指令执行前,(AL)=07H, (BL)=09H 执行AAM后,(AH)= 06H ,(AL)= 03H

7、MOV AX,[BX][DI] 如(DS)=2100H,(BX)=0158H,(DI)=10A5H 则物理地址= 221FDH

8、MOV AX, MASK[BX][SI]

如果(DS)=3000H,(BX)=2000H,(SI)=1000H,MASK=0250H, 则物理地址9、在一个程序开始执行以前(CS)=0A7F0H,(如16进制数的最高位为字母,则应在其

前加一个0)(IP)=2B40H,

试问该程序的第一字的物理地址是 AAA40H 10、MOV AL,11H XOR AL,3

上述指令执行后(AL)= 12H

11、MOV CL,5 SAR [DI],CL

设指令执行前:(DS)=0F800H,(DI)=180AH,(0F980AH)=0064H 则指令执行后:(0F980AH)= 0003H ,CF= 0

12、已知(BCDI)=1834,(BCD2)=2789, BCD1和BCD2均为用压缩的BCD码表示的十进制数,由于它们都是4位数,所以每个数占有2个字节,高位数占有高位字节,其存放方式为

(BCD1)=34, (BCD1+1)=18 (BCD2)=89, (BCD2+1)=27

欲使以下指令序列实现,的功能(请在横线上添上适当的

语句)

MOV AL, BCD1

DAA

MOV BCD3, AL MOV AL, BCD1+1 DAA

MOV BCD3+1, AL

二、试根据以下要求写出相应的汇编语言指令

1、 把BX寄存器和DX寄存器的内容相加,结果存入DX寄存器中。 ADD DX,BX

2、用寄存器BX和SI的基址变址寻址方式把存储器中的一个字节与AL寄存器的内容相加,并把结果送到AL寄存器中。

ADD AL,[BX+SI]

3、 用寄存器BX和位移量0B2H的寄存器相对寻址方式把存储器中的一个字和(CX)相

加,并把结果送回存储器中。 ADD

[BX+0B2H],CX

4、 用位移量为0524H的直接寻址方式把存储器中的一个字与数2A59H相加,并把结

果送回该存储单元中。 ADD

[0524H],2A59H

5、把数0B5H与(AL)相加,并把结果送回AL中。ADD

AL,0B5H

三、图示题:(第1题10分,第2、3题,每题5分,共20分)

1、已知堆栈寄存器SS的内容是0FFA0H,堆栈指针寄存器SP的内容是00B0H,先执行两条把8057H和0F79H分别进栈的PUSH指令,再执行一条POP指令,试画出堆栈区和SP的内容变化,过程示意图(标出存储单元的物理地址)。

执行PUSH前

2

DATA_BYTE DB 10 , 4 , 10H DATA_WORD DW 100,100H,-5 DATA-DW DD 3*20 , 0FFFDH

DATA_BYTE

3、画出以下指令汇编后存储情况示意图

ARRAY1 DB 2 DUP(0,1,2,?)

ARRAY2 DB 100 DUP(?)

ARRAY1

ARRAY2

四、请设置一个数据段DATASG,其中定义以下字符变量或数据变量。 (1) FLD1B为字符串变量:‘personal computer’: (2) FLD2B为十进制数字节变量:32:

(3) FLD3B为十六进制数字节变量:20: (4) (5) (6) (7)

FLD4B为二进制数字节变量:01011001; FLD5B为数字的ASCII字符节变量:32654; FLD6B为10个零的字节变量;

FLD7B为零件名(ASCII码)及其数量(十进制)的表格:

PART1 20

PART2 50

(8) FLD1W为十六进制数字节变量:FFF0; (9) FLD2W为二进制数字变量:01011001;

(10) LD4W为包括5个十进制数的字节变量:5,6,7,8,9; (11) LD5W为5个零的字变量

DATASG SEGMENT

FLD1B DB ‘personal computer’ FLD2B DB 32 FLD3B DB 20H FLD4B DB 01011001B FLD5B DB ‘32654’ FLD6B DB 10 DUP(0) FLD7B DB ‘20’,50 FLD1W DB F0H,FFH FLD2W DW 01011001B LD4W DB 5,6,7,8,9

LD5W DW 5 DUP(0) DATASG ENDS 五、写出框架: 1、按下面的要求写出程序的框架。

(1)、数据段的位置从0E000H开始,数据段中定义一个100字节的数组,其类型属性既是字又是字节;

(2)、堆栈段从小段开始,段组名为STACK;

(3)、代码段中指定段寄存器,指定主程序从1000H开始,给有关段寄存器赋值; (4)、程序结束。 ORG 0E000H data_seg SEGMENT

arr1 DW 100 DUP(?)

arr2 EQU WORD PTR arr1

ENDS SEGMENT ENDS SEGMENT

PATA

STACK

data_seg stack_seg

stack_seg code_seg

main PROC FAR ASSUME CS: code_seg,DS: data_seg,SS: stack_seg ORG 1000H

start:

PUSH DS

SUB PUSH MOV MOV MOV MOV RET

AX,AX AX

AX, data_seg DS,AX AX, stack_seg SS,AX

main code_seg ENDP ENDS

END start

2、 写出“调用程序和子程序不在同一代码段中”框架 segx sebt

sebt

SEGMENT PROC FAR

RET ENDP

CALL

sebt

segx segy

ENDS SEGMENT

CALL

sebt

segy ENDS

六、编程题:

1、 编一个程序,对键盘输入的小写字母用大写字母显示出来。 BEGIN: MOV AH,1

INT CMP JB CMP JA SUB MOV MOV INT JMP

21H AL,’a’ STOP AL,’z’ STOP AL,20H DL,AL AH,2 21H BEGIN

STOP: RET 第二套

一、填空题:

1、MOV CX,DX 设(CX)=1064H,(DX)=6789H

指令执行后(CX)=__ 6789H _______,(DX)=__6789H _______

2、ADD AL,CH 设(AL)=34H,(CH)=0D4H

指令执行后(AL)=__08H_____,(CH)=___0D4H ______

3、XCHG AX,(BP+SI)

设(AX)=2030H,(BP)=0200H,(SI)=0023H,(SS)=2F00H, (2F223H)=5A21H,OPR2的物理地址=2F000+0200+0023=2F223H

则指令执行后(AX)=

5A21H

,(2F223H)= 2030H

4、LES SI,[BX]设(DS)=C000H, (BX)=0300H,(0C0300H)=0123H, (0C0302H)=5410H 则指令执行后 (SI)= 0123H,(ES)= 5410H

5、LDS SI,[30H]设(DS)=B000H, (B0030H)=5620H,(B0032H)=4500H, 则指令执行后 6、ADD AL, BL

AAA

如指令执行前,(AX)=0535H, (BL)=39H 执行ADD AL, BL后,执行AAA后,(AX)= 0604H

7、MOV AX,[BX][DI] 如(DS)=3000H,(BX)=3145H,(DI)=1FC0H 则物理地址= 35105H 8、MOV AX, MASK[BX][DI]

如果(DS)=C000H,(BX)=1200H,(DI)=5600H,MASK=0360H, 则物理地址9、在一个程序开始执行以前(CS)=0BB00H,( …… 此处隐藏:3464字,全部文档内容请下载后查看。喜欢就下载吧 ……

《汇编语言》练习册答案.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/97827.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)