ImageVerifierCode 换一换
格式:DOC , 页数:17 ,大小:157KB ,
资源ID:2241008      下载积分:15 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-2241008.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微计算机原理(第2版)第三章课后习题答案--潘名莲-马争-丁庆生-编著.doc)为本站会员(sk****8)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

微计算机原理(第2版)第三章课后习题答案--潘名莲-马争-丁庆生-编著.doc

1、第 3 章 80x86 指令系统3-1 指令由 操作码 字段和 操作数 字段组成。8086 的指令长度在 16 字节 范围。3-2 分别指出下列指令中源操作数和目的操作数的寻址方式。若是存储器寻址,使用表达式表示出 EA=? PA=?(1) MOV SI, 2100H (2) MOV CX, DISPBX (3) MOV SI, AX (4) ADC ZX, BXSI (5) AND AX, DX (6) MOV AX, BX+10H(7) MOV AX, ES:BX (8)MOV AX, BX+SI+20H (9) MOV BP, CX(10) PUSH DS解:源操作数寻址 目的操作数寻址

2、 EA PA1) MOV SI, 2100H 立即数寻址 寄存器 (2) MOV CX, DISPBX 寄存器相对寻址 寄存器 BX+SISP (DS)*16+(BX+DISP)(3) MOV SI, AX 寄存器寻址 寄存器间接 SI (DS)*16+(SI)(4) ADC ZX, BXSI 基址变址寻址 寄存器 BX+SI (DS)*16+(BX)+(SI)(5) AND AX, DX 寄存器寻址 寄存器 (6) MOV AX, BX+10H 寄存器相对寻址 寄存器 BX+DISP (DS)*16+(BX)+10H(7) MOV AX, ES:BX 带段超越寄存器寻址 寄存器 BX (ES

3、)*16+(BX)(8)MOV AX, BX+SI+20H 相对基址变址寻址 寄存器 BX+SI+20H (DS)*16+(BX)+(SI)+20H(9) MOV BP, CX 寄存器寻址 寄存器间接 BP (SS)*16+(BP)(10) PUSH DS 固定寻址 寄存器 SP (SS)*16+(SP)3-3 已知 8086 中一些寄存器的内容和一些存储器单元的内容如图 3-1 所示,试指出下列各条指令执行后,AX 中的内容。(1) MOV AX, 2010H (2) MOV AX, BX (3) MOV AX, 1200H(4) MOV AX, BX (5) MOV AX, 1100HBX

4、 (6) MOV AX, BXSI(7) MOV AX, 1100HBX+SI (8) MOVLEA AX, SI 解:(1) (AX)=2010H (2) (AX )=0100H (3) (AX )=4C2AH (4) (AX )=3412H(5) (AX)=4C2AH (6) (AX)=7856H (7) (AX )=65B7H (8) (AX)=0002H图 3-1 3-4 已知(AX)=2040H,(DX)=380H,端口(PORT)=(80H)=1FH, (PORT+1)=45H,执行下列指令后,指出结果等于多少?解:(1)OUT DX, AL (0380H)=40H(2)OUT D

5、X, AX (380H)=40H (381h)=20H(3)IN AL, PORT (AL)=1FH (4)IN AX, 80H (AX)=451FH(5)OUT PORT1, AL (PORT1)=40H(6)OUT PORT1, AX (PORT1)=2040H3-5 已知:(SS)=0A2F0H,(SP)=00C0H,(AX)=8B31H,(CX)=0F213,试画出下列指令执行到位置 1 和位置 2 时堆栈区和 SP 指针内容的变化示意图。图中应标出存储单元的实际地址PA。PUSH AXPUSH CX ;位置 1POPF ;位置 2解:已知(SS)=0A2F0H,指令顺序依次编号为、

6、,示意图如图所示:(SS)=0A2F0H0A2FBCH 13H (SP)-4=00BCH (位置 1)F2H0A2FBEH 31H (SP)-2=00BEH (SP)+2=00BCH +0002H=00BEH (位置2)8BHM30100H 12H30101H 34H30102H 56H30103H 78H 31200H 2AH31201H 4CH31202H B7H31203H 65HCPUBX 0100HSI 0002HDS 3000H0A2FC0H (SP)=00C0H3-6 识别下列指令的正确性,对错误的指令,说明出错的原因。(1) MOV DS, 100(2) MOV 1000H,

7、23H(3) MOV 1000H,2000H(4) MOV DATA, 1133H(5) MOV 1020H, DX(6) MOV AX, 0100H+BX+BP(7) MOV CS, AX(8) PUSH AL(9) PUSH WORD PTRSI(10) IN AL, 80H(11) OUT CX, AL(12) IN AX, 380H(13) MOV CL, 3300H(14) MOV AX, 2100HBP(15) MOV DS, ES(16) MOV IP, 2000H(17) PUSH CS(18) POP CS(19) LDS CS, BX(20) MOV GAMMA, CS解:

8、(1),不能对段寄存器送立即数(2),存储单元类型不正确(3),MOV 不能实现两个存储单元间直接传送(4),段名不能作目的操作数(5),立即数不能作目的操作数(6),基址寄存器 BX 和 BP 只能使用其中一个(7),CS 不能用作目的操作数(8),堆栈操作作为字操作 AL 应改为AX(9)(10),80H 为输入端口号不加方括号(11),应输出到端口而不是通用寄存器(12),用 DX 做间址寄存器 380H 应存DX(13),类型不匹配(14)(15),两个段寄存器间不能直接传送(16),IP 不能直接用作目的操作数(17)(18),CS 不能做目的操作数(19),目的操作数应是通用寄存器

9、而不能是段寄存器 CS(20),符号名不能作为目的操作数3-7 已知存储器数据段中的数据如图 3-3 所示。阅读下列的两个程序段后,回答:1. 每个程序段的运行结果是什么?2. 两个程序段各占多少字节的内容,执行时间是多少?(1) LES SI, NUM1MOV AX, SIADD AX, 4SIMOV 8SI, AXADD SI, 2MOV AX, SIADC AX, 4SIMOV 8SI, AX(2) MOV AX, NUM1ADD AX, NUM2MOV SUM, AXMOV AX, NUM1+2ADC AX, NUM2+2MOV SUM+2, AX解:1、运行结果如下:(1) 0AC6

10、863A0H (2) 0AC6863A02、 时钟周期 字节数 (1) LES SI, NUM1 2+EA 24MOV AX, SI 10 3ADD AX, 4SI 9+EA 24MOV 8SI, AX 10 3ADD SI, 2 4 34MOV AX, SI 10 3 ADC AX, 4SI 9+EA 24MOV 8SI, AX 10 24(2) MOV AX, NUM1 10 3ADD AX, NUM2 9+EA 24MOV SUM, AX 9+EA 24MOV AX, NUM1+2 9+EA 24ADC AX, NUM2+2 9+EA 24MOV SUM+2, AX 9+EA 24图 3

11、-33-8 已知数据如图 3-3 所示,数据的低位在前,按下列要求编写程序段:1. 完成 NUM1 和单元 NUM2 两个字数据相加,和存放在 NUM1 中。2. 完成 NUM1 单元开始的连续 4 个字节数据相加,和不超过一字节,存放 SUM 单元。3. 完成 NUM1 单元开始的连续 8 个字节数据相加,和 16 位数,放在 SUM 和 SUM+1 两个单元(用循环) 。4. 完成 NUM1 和 NUM2 的双倍精度字数据相加,和放在 NUM2 开始的字单元中。解:1、CLCLEA SI, NUM1MOV AX, WORD PTR SIADD AX, WORD PTR NUM2MOV WO

12、RD PTR SI, AXMOV AX, WORD PTR SI+2ADC AX, WORD PTR NUM2+2MOV WORD PTR SI+2, AXHLT2、LEA SI, NUM1MOV AL, SIADD AL, 1SIADD AL, 2SIADD AL, 3SIMOV SUM, ALMNUM1 48H DS41H16H28HNUM2 58H22H52H84HSUMHLT3、 CLCCLDLEA SI, NUM1MOV AL, SIMOV AH, 0MOV CX, 7XOR BH, BHAGA: MOV BL, 1SIADC AX, BXINC SIDEC CXJNZ AGAMOV

13、 SUM, AXHLT4、LEA SI, NUM1LEA DI, NUM2MOV AX, SIADD AX, DIMOV DI, AXMOV AX, 2SIADC AX, 2DIMOV 2DI, AX3-9 已知的 BCD 数如图 3-3 所示,低位在前,按下列要求编写计算 BCD 数据(为组合型BCD)的程序段。1.完成从 NUM1 单元开始的连续 8 个组合型 BCD 数相加,和(超过一字节)放在 SUM和 SUM+1 两个单元中。2.完成 NUM1 单元和 NUM2 单元的两个 BCD 数相减,其差存入 SUM 单元,差=?,(CF) =?解:1、 CLCCLDLEA SI, NUM1M

14、OV CX, 7MOV AH, 0MOV AL, SIAGA: INC SIADC AL,SIDAALOOP AGAMOV SUM, ALMOV SUM+1, AHHLT2、 CLCMOV AH, 0MOV AL, NUM1SUB AL, NUM2DASMOV SUM, AL差=0F0H=-10H, CF=13-10 写出下列程序段完成的数学计算公式,并画出数据存放的示意图。MOV AX, XMOV DX, X+2ADD AX, YADC DX, Y+2SUB AX, ZSBB DX, Z+2MOV W, AXMOV W+2, DX解:W=X+Y-Z,数据存放如图所示:3-11 已知数据如图

15、3-3 所示,低位在前,按下列要求编写程序段1. NUM1 和 NUM2 两个数据相乘(均为无符号数) ,乘积放在 SUM 开始的单元。2. NUM1 和 NUM2 两个字数据相乘(均为无符号数) ,乘积放在 SUM 开始的单元。3. NUM1 单元的字节数据除以 13(均为无符号数) ,商和余数依次放入 SUM 开始的两个字节单元。4. NUM1 单元的字节数据除以 NUM2 字单元的字,商和余数依次放入 SUM 开始的两个字节单元。解:1. 为 32 位32 位,极为 64 位2. MOV AX, NUM1IMUL NUM2 ;积在(DX) (AX) 中MOV SUM, AXXX+2YY+

16、2ZZ+2WW+2MOV SUM+2, DX3. MOV AL, NUM1CBWMOV CL, 0DHDIV CLMOV SUM, ALMOV SUM+1, AH4. MOV AX, NUM1CWDIDIV NUM2MOV SUM, AXMOV SUM+2, DX3-12 (L 略)3-13 已知(AL)=0C4H,DATA 单元中的内容为 5AH,写出下列每条指令单独执行后的结果。1. AND AL, DATA2. OR AL,DATA3. XOR AL, DATA4. NOT DATA 5. AND AL, 0FH6. OR AL, 01H7. XOR AL, 0FFH8. TEST AL

17、, 80H解;1. (AL)=01000000B=40H2. (AL)=0DEH3. (AL)=10011110B=9EH4. (DATA)=0A5H5. (AL)=04H6. (AL)=0C5H7. (AL)=3BH8. (AL)=0C4H,OF=0,CF=03-14 用移位循环指令,编写完成以下功能的程序段(结果放回原处)1. 将无符号数 83D 分别乘 2 和处 2.2. 将带符号数-47D 分别乘 2 和除 2.3. 将图 3-3 中 NUM1 双字乘 2 和除 2.4. 将图 3-3 中从 NUM1 开始的 4 个字乘 2.解:1. MOV AL, 53HSHL AL, 1MOV A

18、L, 53HSHR AL, 12. MOV AL, 0D1HSAL AL, 1MOV AL, 0D1HSAR AL, 13. MOV AX, NUM1MOV DX,NUM1+2SHL AX, 1RCL DX, 1MOV AX, NUM1MOV DX, NUM1+2SAR DX, 1RCR AX, 14. SAL NUM1, 1RCL NUM1+2, 1RCL NUM1+4, 1RCL NUM1+6, 13-15 编写完成以下功能的程序段,并指出运行后,其标志 CF、ZF、SF 和 OF 的状态是什么?1. BCD 数 58322. 无符号数 3AH3AH3. 带符号数 79(57)4. 带符号

19、数32+(42)解:1. MOV AL, 58HSUB AL, 32HDASCF=0,ZF=0,SF=0,OF=02. MOV AL, 3AHSUB AL, 3AHCF=0,ZF=1,SF=0,OF=03. 已知 X=79D,Y=57D 则【 X】补=01001111, 【Y】补=11000111所以X补 Y补=X补+-Y补=10001000MOV AL, 79MOV BL, -57SUB AL, BLCF=0,ZF=0,SF=1,OF=14. MOV AL, 0F3HMOV BL, 2AHADD AL, BL或者MOV AL, 0F3HADD AL, 2AHCF=0,ZF=0,SF=0,OF

20、=03-16 用循环移位指令实现下列功能,设(AX)=0C3H1. 设(CL)=8,移位前、后 AX 内容不变2. 设(CL)=9,移位前、后 AX 内容不变3. 将 AX 中高 4 位和低 4 位交换位置4. 将 AX 中高 4 位放到低 4 位上,而高 4 位置 0解:1. MOV CL, 8ROL AL, CL(或者 ROR AL, CL)2. MOV CL, 9RCL AL,CL(或者 RCR AL, CL)3. MOV BX, AXAND AX, 0FF0HXCHG BH, BLMOV CL, 4ROL BH, CLROL BL, CLAND BH,0F0HAND BL, 0FHOR

21、 AX, BX4. 本小题可以多种解法:解 1:5. MOV BX, AXAND AX, 0FF0HXCHG BH, BLMOV CL, 4ROL BH, CLROL BL, CLAND BH,0AND BL, 0FHOR AX, BX解 2:MOV BX, AXXCHG AH, ALMOV CL, 4 ROR AX, CLSHR AH, CLAND AL, 0FHAND BL, 0FOHOR AL, BL3-17 写出下列程序段执行后的结果:(AL )=?(DL)=?完成的是什么功能?MOV CL,4MOV AL,87MOV DL, ALMOV AL,0FHOR AL,30HSHR DL,C

22、LOR DL,30H解:完成与、或、移位等逻辑运算,运算结果:(AL)=37H;(DL )=35H3-18 用乘法指令和用传送、移位、相加指令分别实现 Y=10X 的运算,设 X=12H,分别编写这两个程序段。解:(1) MOV AL, XMOV CL, 10NUL CL(2) MOV AL, XSAL AL,1 ;(AL)=2*XMOV BL, AL ;(BL)=X*2SAL AL, 1 ;(AL)=4*XSAL AL, 1 ;(AL)=8*XADD AL, BL ;(AL)=8*X+2*X=10*X3-19 写出下面指令序列完成的数学计算是什么?MOV CL, 3SHL AX, CLSHL BL, CLSHL CX, CLSHL DH, CL解:将一多精度数(6 字节)乘以 83-20 写出下列能代替重复串操作指令完成同样功能的指令序列。(1)REP MOVSW(2)REP CMPSB(3)REP SCASB(4)REP LODSW(5)REP STOSB解:(1) LEA SI, AREA1

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。