




已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
汇编语言沈美明答案汇编语言第3章答案沈美明 第三章 80X86的指令系统和寻址方式 1、给定 (BX )=637DH,(SI )=2A9BH,位移量D=7237H,试确定在以下各种寻址方式下的有效地址是什么 答案: (1)立即寻址 没有 (2)直接寻址 7237H (3)使用BX 的寄存器寻址 没有 (4)使用BX 的间接寻址 637DH (5)使用BX 的寄存器相对寻址 0D5F0H (6)基址变址寻址 8E18H (7)相对基址变址 004FH 2、根据下列要求,写出相应的汇编指令 (1)把BX 寄存器和DX 寄存器的内容相加,结果存入DX 寄存器中。 (2)用寄存器BX 和SI 基地址变址寻址方式把存储器中的一个字节与AL 寄存器的内容相加,并把结果送到AL 寄存器中。 (3)用寄存器BX 和位移量0B2H 的寄存器相对寻址方式把存储器中的一个字和(CX )相加,并把结果送回存储器中。 (4)用位移量为0524H 的直接寻址方式把存储器中的一个字与数2A59H 相加,并把结果送回该存储单元中。 (5)把数0B5H 与(AL )相加,并把结果送回AL 中。 答案: (1)ADD DX,BX (2)ADD AL,BXSI (3)ADD BX0B2H, CX (4)MOV AX,2A59H ADD 0524H ,AX (5)ADD AL ,0B5H 3、写出把首地址为BLOCK 的字数组的第6个字送回到DX 寄存器的指令。要求使用以下几种寻址方式: (1)寄存器间接寻址 (2)寄存器相对寻址 (3)基址变址寻址 答案: (1)寄存器间接寻址 MOV BX,OFFSET BLOCK0AH MOV DX ,BX (2)寄存器相对寻址 MOV SI,OAH MOV DX,BLOCKSI (3)基址变址寻址 MOV BX ,BLOCK MOV SI,OAH MOV DX,BXSI 4、现有 (DS ) =2000H,(BX)=0100H,(SI)=0002H,(xx0)=12H,(xx1)=34H,(xx2)=56H,(xx3)=78H, (21200)=2AH,(20201)=4CH,(21202)=B7H,(21203)=65H,试说明下列各条指令执行完后,AX 寄存器的内容。 答案: (1)MOV AX,1200H 1200H (2)MOV AX,BX 0100H (3)MOV AX,1200 4C2AH (4)MOV AX,BX 3412H (5)MOV AX, 1100BX 4C2AH (6)MOV AX,BXSI 7856H (7)MOV AX,1100BXSI 65B7H 5、给定 (IP )=2BC0H,(CS )=0200H,位移量D=5119H,(BX )=1200H,(DS )=212AH,(224A0)=0600H,(275B9)=098AH,试为以下的转移指令找出转移的偏移地址。 (1)段内直接寻址 (2)使用BX 及寄存器间接寻址方式的段内间接寻址 (3)使用BX 及寄存器相对寻址方式的段内间接寻址 答案: (1)7CD9H (2)1200H (3)6319H 7、在0624单元内有一条二字节JMP SHORT OBJ 指令,如其中位移量为(1)27H ,(2)6BH , (3)0C6H ,试问转向地址OBJ 的值是多少? 答案: 转向地址OBJ 的值分别为:(1)064DH (2)0691H (3)05E0H 注意有符号数的符号位 8、假定(DS )=2000H,(ES )=2100H,(SS )=1500H,(SI )=00A0H,(BX )=0100H,(BP )=0010H,数据段中变量名VAL 的偏移地址值为0050H ,试指出下列源操作数字段的寻址方式是什么?其物理地址值是多少? (1)MOV AX,0ABH (2)MOV AX,BX (3)MOV AX,100 (4)MOV AX,VAL (5)MOV AX,BX (6)MOV AX,ES:BX (7)MOV AX,BP (8)MOV AX,SI (9)MOV AX,BX+10 (10)MOV AX,VALBX (11)MOV AX,BXSI (12)MOV AX,VALBXSI 答案: (1)MOV AX,0ABH 立即数寻址 无物理地址 (2)MOV AX,BX 寄存器寻址 同上 (3)MOV AX,100 直接寻址 xx0H (4)MOV AX,VAL 直接寻址 xx0H (5)MOV AX,BX 寄存器间接寻址 xx0H (6)MOV AX,ES:BX 直接寻址 21100H (7)MOV AX,BP 寄存器间接寻址 xx0H (8)MOV AX,SI 同上 200A0H (9)MOV AX,BX+10 寄存器相对寻址 xx0H (10)MOV AX,VALBX 同上 xx0H (11)MOV AX,BXSI 基址变址寻址 201A0H (12)MOV AX,VALBXSI 相对基相变址寻址 201F0H 10、如TABLE 为数据段中0032单元的符号名,其中存放的内容为1234H ,试问以下两条指令有什么区别?指令执行完后AX 寄存器的内容是什么? 答案: MOV AX,TABLE 是把符号地址TABLE 里的内容送到AX 里,指令执行完后,(AX)=1234H LEA AX,TABLE 是把符号地址TABLE 的有效地址(这里是偏移量)送到指定寄存器AX 里,指令执行完后,(AX )=0032H 11、执行下列指令后,AX 寄存器中的内容是什么? TABLE DW 10,20,30,40,50 ENTRY DW 3 MOV BX,OFFSET TABLE ADD BX,ENTRY MOV AX,BX 答案: 执行完指令后,(AX )=1E00H 15、求出以下各十六进制数与十六进制数62A0之和,并根据结果设置标志位SF ,ZF ,CF ,和OF 的值。 答案: 运算结果 SF,ZF,CF,OF各位的值(从左至右依次往下) (1)74D4H 0 0 0 0 (2)A5C1H 1 0 0 1 (3)4240H 0 0 1 0 (4)0000H 0 1 1 0 17、写出执行以下计算的指令序列,其中X ,Y ,Z ,R 和W 均为存放16位带符号数单元的地址。 (1) Z W+(Z-X ) (2) Z W-(X+6)-(R+9) (3) Z (W*X)/(Y+6),R 余数 (4) Z (W-X )/5*Y)*2 答案: (1).MOV AX,Z ;把Z 送到AX SUB AX,X ;Z-X ADD AX,W ;W+(Z-X) MOV Z,AX ;结果保存在Z 中 (2).MOV AX,R ;R 送到AX 中 ADD AX,9 ;R+9 MOV BX,X ;X 送到BX 中 ADD BX,6 ;X+6 ADD AX,BX ;(R+9)+(X+6),结果保存在AX 中 MOV BX,W ; W送到BX 中 SUB BX,AX ; W-(R+9)-(X+6),连续减去两个数,相当于减去这两个数的和 MOV Z,BX ;最终结果送到Z 中 (3) MOV AX,W ;把W 送到AX IMUL X ;W*X 注意:低十六位保存在AX 里,高十六位保存在DX 里 MOV BX,Y ;把Y 送到BX 里 ADD BX,6 ;Y+6 IDIV BX ;(W*X)/(Y+6) 注意:商保存在AX 里,余数保存在DX 里 MOV Z,AX ;把商送到Z 中, MOV R,DX ;把余数 送到R 中 (4) MOV AX,W ;把W 送到AX 中 SUB AX,X ;W-X CWD ;把AX 中的十六位带符号数扩展成为32位,低十六位保存在AX 中,高十六位保;在DX 中 MOV BX,5 ;把5送到BX 中 IDIV BX ;(W-X )/5 被除数为32位,除数为16位商为16位 IMUL Y ;上一步结果再乖以Y ,积为32位 MOV BX,2 ;把2送到BX 中 IMUL BX ;上一步乘法所得的积再乘以2,各为64位 MOV Z,EAX ;把结果中低32位放入Z 双字单元中 MOV Z+4,EDX ;把结果中高32位放入Z+4双字单元中 18、已知程序段如下: MOV AX,1234H MOV CL,4 ROL AX,CL DEC AX MOV CX,4 MUL CX INT 20H 试问: (1) 每条指令执行完后,AX 寄存器的内容是什么? (2) 每条指令执行完后,进位、符号和零标志的值是什么? (3) 程序结束时,AX 和DX 的内容是什么? 答案: 指令 本条指令执行完后AX 的内容 执行完后CF,SF,ZF 的值 MOV AX,1234H 1234H 0 0 0 MOV CL,4 1234H 0 0 0 ROL AX,CL 2341H 1 0 0 DEC AX 2340H 1 0 0 MOV CX,4 2340H 1 0 0 MUL CX 8918H 0 0 0 INT 20H 程序结束后,(AX )=8918H (DX)=0000H 21、写出对存放在DX 和AX 中双字长数求补的指令序列。 答案: NEG DX NEG AX SBB DX,0 22、试编写一个程序求出双字长数的绝对值。双字长数在A 和A+2单元中,结果存放在B 和B+2单元中。 答案: MOV AX,A ;把双字長数的低字放到AX 中 MOV DX,A+2 ;把双字長数的高字放到DX 中 TEST DX,8000H ;字長数的符号 JZ RIGHT ;如果是非负数,则直接保存 NEG DX ;如果是负数,则求补 NEG AX SBB DX,0 RIGHT : MOV B,AX MOV B+2,DX 25、试用移位指令把十进制数+53和-49分别乘以2。它们应该用什么指令?得到的结果是什么?如果要除以2呢? : (1)把53D 乘以2的程序: MOV AX,35H ;53D=35H SHL AX ,1 (2)把53除以2 的程序: MOV AX,35H SHR AX,1 其他的同理 28、下列程序段执行完后,BX 寄存器中的内容是什么? MOV CL,3 MOV BX,0B7H ROL BX,1 ROR BX,CL 答案: 该程序段执行完后,BX 寄存器的內容是:C02DH 30、编写程序段,把字符串STRING 中的&字符用空格符代替。 STRING DB The data is FEB&03 答案: MOV CX,12H ;把重复次数放到CX 中。这里用十六進制表示 MOV SI,0 ;初始化SI MOV AX,26H ;把字符的ASCII 值放入AX CHECK : CMP AX,STRINGSI ;依次查找 INC SI LOOPNE CHECK ;找到了就退出 MOV AX,20H ;把空格符的ASCII 值勤放入AX 中 MOV STRINGSI-1,AX ;用空格符代替 32、编写一程序段,比较两个5字节的字符串OLDS 和NEWS ,如果OLDS 字符串不同于NEWS 字符串则执行NEW_LESS;否则顺序执行程序。 答案: 程序实现: LEA SI,OLDS LEA DI,NEWS MOV CX,5 REPZ CMPSB JNZ NEW_LESS 42、说明下列指令的操作 (1) PUSH AX (2) POP ESI (3) PUSH BX (4) PUSH AD (5) POP DS (6) PUSH 4 答案: (1)PUSH AX (SP) (SP+1) (SP) (2)POP ESI (ESI) (ESP) (3)PUSH BX (SP) (SP+1) (SP) (4)PUSHAD (ESP) (ESP-4) (ESP-8) (ESP-12) (ESP-16) (ESP-20) (ESP-24) (ESP-28) (ESP) (5)POP DS (DS) (SP) (6) PUSH 4 (SP) (SP+1) (SP ) 45、请给出下列指令序列执行完后EAX 和EBX 的内容。 MOV ECX,307F455H BSF EAX,ECX BSR EBX,ECX 答案: (EAX )=0 (EBX )=25D 49、试编写一程序段,要求把BL 中的数除以CL 中的数,并把其商乘以2,最后的结果存入DX 寄存器中。 答案: 程序实现: MOV AL,BL CBW IDIV CL IMUL 2 MOV DX,AX 51、试编写一程序段,要求在长度为100H 字节的数组中,找出大于42H 的无符号数的个数并存入字节单元UP 中,找出小于42H 的无符号数的个数并存入字节单元DOWN 中。 答案: 假设数组名为NUMBERS ,程序如下 MOV BX,0 ;后面用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 顺普培训考试题库及答案
- 2025年新疆农作物制种合作合同协议
- 2025年物业管理人员考核合同
- 机电维修班考试题及答案
- 招募管理师考试题及答案
- 工会职工技能考试题库及答案
- 青协组织笔试题目及答案
- 中国近代史事件历史基础知识试题及答案
- 城乡发展差异地理基础知识试题及答案
- pvc采购合同(标准版)
- 茶百道授权协议书
- 科技公司员工管理规章制度范文
- 院感相关知识课件
- 2025-2030中国网络直播行业市场深度调研及前景趋势与投资研究报告
- 糖尿病基础知识课件
- 《中国脑卒中防治报告(2023)》
- 项目经理转正述职报告
- 葡萄胎完整课件
- 2025年事务所年度工作总结(3篇)
- 代办离职委托书模板文档
- 急性颈髓损伤病情观察护理
评论
0/150
提交评论