《微机原理及应用》课后答案(黄冰 覃伟年 著)习题参考答案

《微机原理》习题参考答案

第一章 绪论 1.2

① [+65]10=01000001B [+65]补=[+65]原=01000001B ② [+115]10=01110011B [+115]补=[+115]原=01110011B ③ [-65]10=11000001B [-65]补=10111111B [-115]10=11110011B [-115]补=10001101B 方法:正数的原码、反码、补码相同

负数的补码在原码的基础上除过符号外,先取反,再加1。

1.3

①[+120]10=0000000001111000B [+120]补=[+120]原=000000001111000B ② [-120]10=1000000001111000B [-120]补=1111111110001000B

③[+230]10=0000000011100110B [+230]补=[+230]原=0000000011100110B ④[-230]10=1000000011100110B [-230]补=1111111100011010B 方法:与上题相同,只是扩展了位数,用16位表示 1.4

①55 (00110111) ②89 (01011001) ③-115 (11110011) ④-7 总结:知道补码,求原码(或数值)的方法:

如果是正数,直接转换。如果是负数用以下三种方法: ① 根据[[X]补]补=X 求得

例如10001101 各位取反 11110010 加一 11110011转换 -115 ② 求补的逆运算

例如:11111001 先减一 11111000 各位取反 10000111 转换 -7 ③-(模+补码转换结果) 例如:10001101转换 -13模+补码转换结果 128-13=115 加负号 –115 1.9

本题问题不太明确

例如:如果手边有手册或是知道产品的型号,就可从手册中查到微处理器的处理位数。 也可以根据系统总线得知。因为系统总线是公共的数据通道,表现为数据传输位数和总线工作时钟频率。

第二章 intel 8086 微处理器

2.2 75422H 字节单元:9CH 字单元:249CH 75424H 字节单元:5DH 字单元:0E65Dh 2.3根据物理地址=段地址*10H+偏移地址得到: 段地址 1000H 1025H 1109H 偏移地址 117AH 0F2AH 00EAH 物理地址 1117AH 1117AH 1117AH 我们可以看到不同段的段地址,在不同的偏移地址下,可以对应相同的物理地址,也就相同的存储空间。说明在分配段时是重叠的.

2.4 每个段区最大可占用64KB的地址范围,因为寄存器都是16位的,216B=64KB。不允

许重叠,则最多可分16个段区,因为8086CPU有20条地址线,寻址范围1MB,1MB/64KB =16个。 2.6 指令 MOV ARRAY, BX ADC CX, ALPHA[BX][SI] AND GAMMA[DI],11011000B INC BL TEST ES:[SI], DX SBB SI, [BP] 目的操作数寻址方式 直接寻址 寄存器寻址 带位移的变址寻址 寄存器寻址 寄存器间接寻址 寄存器寻址 源操作数寻址方式 寄存器寻址 带位移的基址变址寻址 立即数寻址 隐含寻址 寄存器寻址 寄存器间接寻址 2.7 ① 源操作数是立即数寻址,AX=1200H ② 源操作数是寄存器寻址,AX=BX=0100H

③ 源操作数是直接寻址,将2000H×10H+1200H=21200H和21201H的内容取出,赋给

AX=4C2AH

④ 源操作数是寄存器间接寻址,将2000H×10H+0100H=20100H和20101H的内容取出,赋给

AX=3412H

⑤ 源操作数是寄存器相对寻址,将2000H×10H+0100H+1100H=21200H和21201H的内容取

出,赋给AX=4C2AH

⑥ 源操作数是基址变址寻址,将2000H×10H+0100H+0002H=201002和201003H的内容取

出,赋给AX=7856H

⑦ 源操作数是基址变址相对寻址, 将2000H×10H+0100H+0002H+1100H=21202H和

21203H的的内容取出,赋给AX=65B7H 2.8 指令 MOV AX, 00ABH MOV AX,BX MOV AX,[100H] MOV AX,[BX] MOV AX,[BP] MOV AX,[BX+10]注意是十进制 MOV AX,[BX][SI] MOV AX,VAL MOV AX,ES:[BX] MOV AX,[SI] MOV AX,VAL[BX] MOV AX,VAL[BX][SI] 2.9 指令 PUSH CX Sp 1FFAH 1FFBH 值 66H 55H 源操作数寻址方式 立即数寻址 寄存器寻址 直接寻址 寄存器间接寻址 寄存器间接寻址 带位移的基址寻址 基址变址寻址 直接寻址 寄存器间接寻址 寄存器间接寻址 带位移的基址寻址 带位移的基址变址寻址 物理地址 跟随在指令后,有cs:ip决定 在寄存器中 2000H×10H+100H=20100H 2000H×10H+0100H=20100H 1500H×10H+0010H=15010H 2000H×10H+0100H+0AH=2010AH 2000H×10H+0100H+00A0H=201A0H 2000H×10H+0050H=20050H 2100H×10H+0100H=21100H 2000H×10H+00A0=200A0H 2000H×10H+0100H+0050H=20150H 2000H×10H+0100H+00A0H+0050H=201F0H PUSH BX PUSH AX

指令 POP AX POP CX 2.10

指令 MOV AX,0 DEC AX ADD AX,7FFFH ADD AX,2 NOT AX SUB AX,0FFFFH ADD AX,8000H OR AX,0BFDFH AND AX,0EBEDH XCHG AH,AL SAL AX,1 RCL AX,1 2.11

sp 1FFCH 1FFDH 1FFEH 1FFFH 44H 33H 22H 11H 值 AX=5566H BX=3344H CX=3344H SP=1FFEH 1FFCH 1FFEH AX 的值 AX=0000H AX=0FFFFH AX=7FFEH AX=8000H AX=7FFFH AX=8000H AX=0000H AX=0BFDFH AX=0ABCDH AX=0CDABH AX=9B56H (CF=1) AX=36ADH (AF=1) 0110 0010 1010 0000B + 1001 1101 0110 0000B

1 0000 0000 0000 0000B (0000H) AF=0,SF=0,ZF=1,CF=1,OF=0,PF=1

0110 0010 1010 0000B + 0100 0011 0010 0001B

1010 0101 1100 0001B (0A5C1H) AF=0,SF=1,ZF=0,CF=0,OF=1,PF=0 2.12

0001 0010 0011 0100B

- 0100 1010 1110 0000B [1011 0101 0010 0000B]补码形式

1100 0111 0101 0100B(0C754H) AF=0 SF=1 ZF=0 CF=1 OF=0 PF=0

1001 0000 1001 0000B

- 0100 1010 1110 0000B [1011 0101 0010 0000B]补码形式

0100 0101 1011 0000B (45B0H) AF=0 SF=0 ZF=0 CF=0 OF=1 PF=1

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4