第4章习题解答(给同学参考).doc_第1页
第4章习题解答(给同学参考).doc_第2页
第4章习题解答(给同学参考).doc_第3页
第4章习题解答(给同学参考).doc_第4页
第4章习题解答(给同学参考).doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本答案经本人简单作答 整理 修改 并是标准答案 仅供同学参考 欢迎同 学提出宝贵意见 4 10 给定 BX 637DH SI 2A9BH 位移量 D 7237H 试确定在以下各种寻址方式下 的有效地址是什么 答案 1 立即寻址 没有 IP 的内容 2 直接寻址 7237H MOV AX 7237H 3 使用 BX 的寄存器寻址 没有 MOV AX BX 4 使用 BX 的间接寻址 637DH MOV AX BX 5 使用 BX 的寄存器相对寻址 0D5B4H MOV AX D BX 6 基址变址寻址 8E18H MOV AX BX SI 7 相对基址变址 004FH MOV AX D BX SI 4 11 求执行两条指令后 各标志位的状态 MOV AL 91 执行后 AL 91 5BH ADD AL 0BAH 加法执行如下 0BAH1011 1010 05BH0101 1011 115H 1 0001 0101 CF 显然最高位产生了进位 两个加数都是两位的 和却有三位 CF 1 AF 低四位向高四位产生了进位 A B 产生进位 AF 1 ZF 运算结果不为 0 ZF 0 SF 运算结果最高位为 0 高四位 1H 0001B SF 0 OF 负 正 正 两个加数的符号位不同 没有溢出 OF 0 4 12 1 MOV AL 0F5H 正确 2 ADD BX BP BX 错误 不能同时使用 BX BP 进行寻址 3 CMP AL 100H 错误 AL 为 8 位 100H 大于 8 位 类型不匹配 4 TEST BP DL 正确 5 ADC 15 CL 错误 目的操作数不能是立即数 6 SUB DI DA WORD 错误 两个操作数不能同时是存储器操作数 7 OR CH CL 正确 8 MOV AL 1000H 错误 AL 为 8 位 1000H 为 16 位 类型不匹配 9 SAR 10H DI 2 错误 AL 为 8 位 移位多次必须 CL 中 10 NOT AL BL 错误 逻辑非操作是单操作指令 11 DEC CX 1 错误 逻辑非操作是单操作指令 12 LEA ES TAB BX 错误 目的寄存器只能是通用寄存器 4 13 根据下列要求 写出相应的汇编指令 答案 1 ADD AL BX SI 3 ADD BX 0B2H CX 4 MOV AX 2A59H ADD 0524H AX 5 ADD AL 0B5H 4 14 答案 1 寄存器间接寻址 MOV BX OFFSET TABLE ADD BX 08H MOV DX BX 2 寄存器相对寻址 MOV SI O8H MOV DX TABLE SI 3 基址变址寻址 MOV BX TABLE MOV SI O8H MOV DX BX SI 4 15 15 假设 DS 091DH SS 1E4AH AX 1234H BX 0024H CX 5678H BP 0024H SI 0012H DI 0032H 09226H 00F6H 09228H 1E40H 1E4F6H 091DH 试给出下列各指令或程序段的分别 执行的结果 答 1 MOV CL 20H BX SI 有效地址 EA 20H BX SI 20H 0024H 0012H 0056H 逻辑地址 DS 0056H 物理地址 091D0H 0056H 09226H 逻辑地址左移 1 为加有效地址 CL 09226H 0F6H 2 MOV BP DI CX 有效地址 EA BP DI 0024H 0032H 0056H 逻辑地址 SS 0056H 物理地址 1E4A0H 0056H 1E4F6H 1E4F6H CX 5678H 3 LEA BX 20H BX SI MOV AX 2 BX 有效地址 EA 20H BX SI 20H 0024H 0012H 0056H BX 0056H 有效地址 EA 2H BX 2H 0056H 0058H 逻辑地址 DS 0058H 物理地址 091D0H 0058H 09228H AX 09228H 1E40H 4 LDS SI BX DI MOV SI BX 有效地址 EA BX DI 0024H 0032H 0056H 逻辑地址 DS 0056H 物理地址 091D0H 0056H 09226H SI 09226H 00F6H DS 09226H 2H 09228H 1E40H 有效地址 EA SI 00F6H 逻辑地址 DS 00F6H 物理地址 1E400H 00 F6H 1E4F6H 1E4F6H BX 0024H 5 XCHG CX 32H BX XCHG 20H BX SI AX 有效地址 EA 32H BX 32H 0024H 0056H 逻辑地址 DS 0056H 物理地址 091D0H 0056H 09226H CX 09226H 00F6H 09226H 5678H 有效地址 EA 20H BX SI 20H 0024H 0012H 0056H 逻辑地址 DS 0056H 物理地址 091D0H 0056H 09226H 09226H 1234H AX 5678H 4 16 01400 1234H 应改为 01410 1234H 分析 有效地址 EA 10H SI 10H 0400H 0410H 逻辑地址 DS 0100H 物理地址 01000H 0410H 01410H MOV AX 10H SI 传送的是源操作数的内容 AX 1234H LEA AX 10H SI 传送的是源操作数的有效地址 AX 0410H 4 17 mov ax 1234h 将 1234h 这个 16 进制数放到 ax 寄存器中 mov bx 5678h 同理 将 5678h 这个 16 进制数放到 bx 这个寄存器中 push ax 将 ax 压栈 即将 1234h 放到栈顶 push bx 将 bx 压栈 即将 5678h 放到 1234h 上面 即栈顶 pop cx 弹出当前栈顶元素 5678h 并将其传送给 cx 即 cx 5678h 4 18 写出执行以下计算的指令序列 其中 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 双字单元中 超出范围 请参考下题 试编制一程序 计算下列公式的值 将商存放在试编制一程序 计算下列公式的值 将商存放在 Z Z 单元 余数放在单元 余数放在 R R 单元内中 单元内中 X X Y Y Z Z R R W W 分别为存放分别为存放 1616 位带符号数单元的地址 计算过程中中间结果和最后结果在位带符号数单元的地址 计算过程中中间结果和最后结果在 1616 位二进制数范围内位二进制数范围内 Z W Z 5 Y 2 MOV AX W 把 W 送到 AX 中 SUB AX X W X MOV BX 2 把 2 送到 BX 中 MUL BX 先乘以 2 PUSH AX 保存中间结果 W Z 2 MOV AX 5 把 5 送到 AX 中 MUL Y 5 再乖以 Y 乘机在 AX 中 MOV BX AX 5 Y 再放到 BX 中 POP AX 返回中间结果 W Z 2 XOR DX DX DIV BX 实现 W Z 2 5 Y 商在 AX 中 余数在 DX 中 MOV Z AX MOV R DX 4 19 给了一定初始寄存器条件 问执行一段程序后 几个寄存器中应该是什么内容 遇到这种题目 应当把所有寄存器列一个表格 每一条指令分析完后 填上新的一行寄 存器内容 这样才不容易出错 逐条指令分析 每条指令都使用上条指令执行完后新的寄 存器内容 下面我们按照这种思路来分析这段程序 DS 1234H SI 124H 12464H 30ABH 12484H 464H 考试时可以用自己的方式简写寄存器状态 提高速度 1 LEA SI SI 分析 EA SI 124H 指令执行完后 SI SI 124H 注意 LEA 指令的功能 不要搞成 MOV 指令了 引起的寄存器内容变化 无 仅列出当前变化了的 能提高解题速度 2 MOV AX SI 分析 EA SI 124H默认使用 DS 物理地址 12340H 124H 12464H 执行后 寄存器变化为 AX 12464H 30ABH 3 MOV SI 22H 1200H 分析 SI 22H 22H SI EA 22H SI 22H 124H 146H默认使用 DS 物理地址 12340H 146H 12486H 执行后 寄存器没有变化 存储单元变化为 12486H 1200H 4 LDS SI SI 20H 分析 SI 20H 20H SI EA 20H SI 20H 124H 144H默认使用 DS 物理地址 12340H 144H 12484H 当前 12484H 464H 12486H 1200H 执行后 变化 SI 12484H 464H DS 12486H 1200H 5 ADD AX SI 分析 EA SI 464H默认使用 DS 物理地址 12000H 464H 12464H 执行后 变化 AX AX 12464H 30ABH 30ABH 6156H 4 20 假定了一些寄存器初始内容 问执行一段程序后某些寄存器和标志位的内容 初始 AX 0A5C6H CX 0F03H 1 STC 执行后 CF 1 2 RCL AX CL 当前 CL 03H AX 1010010111000110B CF 1 执行后 AX 0010111000110110B 2E36H CF 1 3 AND AH CH 当前 AH 02EH 00101110B CH 0FH 00001111B 功能为提取低 4 位 执行后 AH 0EH CF 0 强制清 0 4 RCR AX CL 当前 CL 03H CF 0 AX 0E36H 0000111000110110B 执行后 CF 1 AX 1000000111000110B 81C6H 4 21 初始 AX 0FC77H CX 504H 1 CLC 执行后 CF 0 2 SAR AX CL 当前 CL 04H AX 0FC77H 1111110001110111B 算术右移 4 位 记得最高位补充符号 执行后 AX 1111111111000111B 0FFC7H CF 0 3 XCHG CH CL 当前 CH 05H CL 04H 执行后 CH 04H CL 05H 4 SHL AX CL 当前 CL 05H AX 0FFC7H 1111111111000111B 逻辑左移 5 位 执行后 AX 1111100011100000B 0F8E0H CF 1 4 22 初始 AX 0FFFFH INC AX 执行后 AX 0000H NEG AX 执行后 AX 0000H DEC AX 执行后 AX 0FFFFH NEG AX 执行后 AX 0001H 4 23 初始 BX 12FFH 1 MOV CL 8 执行后 CL 8 2 ROL BX CL 循环左移 8 位 相当于低 8 位和高 8 位交换 CF 中保存高 8 位的最低位 执行后 BX 0FF12H CF 0 3 AND BX 0FFH 提取低 8 位 执行后 BX 0012H CF 0 4 CMP BX 0FFH 执行后 BX 不变 BX 0012H 因为作为无符号数 0012H C MOV

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论