第一章
一.思考题(略)
二.综合题
1 设机器字长为8位,写出下列用真值表示的二进制数的原码、补码和反码。答:
真值
原码
反码
补码
1+0010101B
00010101
00010101
00010101
2+1110001B
01110001
01110001
01110001
3+1010011B
01010011
01010011
01010011
4-0010101B
10010101
11101010
11101011
5-1111011B
11111011
10000100
10000101
6-1001010B
11001010
10110101
10110110
2 下列各数均为十进制数,试用8位二进制补码计算下列各题,将运算结果用两位十六进制数表示。 答:   
原题
X+Y
X+Y
X+Y)真值
1
17+7
=0001 0001B+0000 0111B=0001 1000B= 18H
18H
18H
2
8+18
=00001 000B+0001 0010B=0001 1010B= 1AH
1AH
1AH
3
9-6
=00001 001B+1111 1010B=0000 0011B= 03H
03H
3H
4
-26+7
=1110 0110B+00000111B=11101101B= EDH
93H
-13H
5
8-18
=0000 1000B+1110 1110B=1111 0110B= F6H
8AH
-0AH
6
19--17
=0001 0011B+0001 0001B=0010 0100B= 24H
24H
24H
7
-25-6
=1110 0111B+1111 1010B=1110 0001B= E1H
9FH
-1FH
8
87-15
=0101 0111B+1111 0001B=0100 1000B= 48H
48H
48H
3. 已知以十六进制数形式给出的补码,求出其相应的真值,真值用十进制数表示:答:
补码
真值
48H
72  1001000B
9DH
-99  -110 0011B
B2H
-78  -100 1110B
5C10H
23568  101110000010000B
F2A1H
-3423  -1101 0101 1111 B
4 下列各数均为十进制数,试用8位二进制补码计算下列各题,判断说明运算结果是否溢出。答:
原题
X+Y
对应的真值
溢出否
43+18
=0010 1011B+0001 0010B=0011 1101B
61
未溢出
-52+17
=1100 1100B+0001 0001B=1101 1101B
-35
未溢出
72-8
=0100 1000B+1111 1000B=0100 0000B
64
未溢出
50+87
=0011 0010B+0101 0111B=1000 1001B
-119
溢出
(-33)+(-47)
=1101 1111B+1101 0001B=1011 0000B
-48
未溢出
(-91)+(-75)
=1010 0101B+1011 0101B=0101 1010B
90
溢出
-127+64
=1000 0001B+0100 0000B=1100 0001B
-63
未溢出
5 设机器字长为8位。根据给出的不同形式的机器数,如下表,计算其对应的十进制表示的真值。答: 
二进制机器数
(若为)无符号数
(若为)原码
(若为)反码
(若为)补码
01101 1110
110
110
110
110
0101 1001
89
89
89
89
1000 1101
141
-13
-114
-115
1111 1001
249
-121
-6
-7

第二章
一.思考题(略)
二.综合题
1 设当前SS=C000HSP=2000HAX=2355HBX=2122HCX=8788H,则当前栈顶的物理地址是多少?若连续执行PUSH AXPUSH BXPOP CX 3跳指令后,堆栈的内容发生了什么变化?AX BXCX中的内容是什么?
答:物理地址=C0000H+2000H=C2000H
执行指令后,地址C000H1FFFH内容是23H
            地址C000H1FFEH内容是55H
            地址C000H1FFDH内容是21H
            地址C000H1FFCH内容是22H
AX=2355H,(BX=CX=2122H
2 假设某CPU的时钟频率是8MHz,如果在进行存储器写操作时插入了一个等待周期,完成该写操作的总线周期所需要的时间是多少ns 答:
时钟周期=1/8MHz=125ns
所以所需时间=时钟周期*5=625ns
3 设存储器内数据段中存放了两个字2FE5H3EA8H,已知DS=3500H,数据存放的偏移地址为4B25H3E5AH,画图说明两个字在存储器中的存放情况。若要读取这两个字,需要对存储进行几次总线读操作?答:
 
A8H
38E5AH
3EH
38E5BH
E5H
39B25H
2FH
39B26H
2个字共需要3次总线操作。
4 8086中的标志寄存器FR中有哪些状态标志和控制标志?这些标志位各有什么含义?假设(AH=03H,(AL=82H,试指出将ALAH中的内容相加和相减后,标志位CFAFOFSFIFPF的状态。答:
  6个状态标志:
      CF:进位标志;
      PF:奇偶标志;
      AF:辅助进位标志;
      ZF:零标志;
b总001
      SF:符号标志;
      OF:溢出标志;
  3个控制标志:
      IF:中断允许标志;
      DF:方向标志;
      TF:单步标志。
03H+82H=85H计算后:CF=0PF=0AF=0ZF=0SF=OF=0
03H-82H=81H计算后:CF=1PF=1AF=0ZF=0SF=OF=1
82H-03H=7FH计算后:CF=0PF=0AF=1ZF=0SF=0OF=1
5 有一个22个字的数据组成的数据区,起其实地址为6101H1CE7H。试计算出该数据区首末存储单元的物理地址?答:
起始物理地址为:62CF7H
数据区末的物理地址为:62CF7H+22*2-12 = 62D22H
堆栈必须为字操作只有PUSH  BX 是正确的
此时,BX中的高8BH不能确定,但不影响压栈操作,不影响SP的变化
6 假设(SS=20A0H,(SP=0032H,将(CS=0A5BH,(IP=0012H,(AX=0FF42H,(SI=537AHBL=5CH依次压入堆栈保存。要求: