第1章 习题答案
1.答:
为了区别所使用的数制,一般用以下两种书写格式表示:
① 用括号将数字括起,后面加数制区分,数制用下标的形式给出;
② 用后缀区分,二进制数、十进制数、八进制数、十六进制数的后缀分别为字母B(或b)、D(或d)、O(或o)或Q(或q)、H(或h)。
例如:十六进制数可以表示成16或; 十进制数可以表示成10或。 2.答:
123D采用十进制,0AFH采用十六进制,77Q采用八进制,1001110B采用二进制。 3.答:
字长为8位的二进制数原码表示的最大值:127,最小值:-127;补码表示的最大值:127,最小值:-128。
字长为16位的二进制数原码表示的最大值:32767,最小值:-32767;补码表示的最大值:32767,最小值:-32768。
4.答:
(1)125D=0111 1101B=7DH (2) 255D=1111 1111B=FFH (3)72D=0100 1000B=48H
(4)5090D=0001 0011 1110 0010B=13E2H 5.答:
(1)1111 0000B=240D=F0H
(2) 1000 0000 B =128D =80H (3)1111 1111 B =255 D =FFH (4)0101 0101B=85D=55H 6.答:
(1)FFH=255D=1111 1111B
(2) ABCDH=43947D=1010 1011 1100 1101B (3) 123H=291D=0000 0001 0010 0011B (4) FFFFH=65535D=1111 1111 1111 1111B 7.答:
(1)8位时(16)原=0001 0000 ; (16)补=0001 0000;
16位时(16)原=0000 0000 0001 0000 ; (16)补=0000 0000 0001 0000; (2) 8位时(-16)原=1001 0000 ; (-16)补=1111 0000;
16位时(-16)原=1000 0000 0001 0000 ; (-16)补=1111 1111 1111 0000; (3) 8位时(+0)原=0000 0000; (+0)补=0000 0000;
16位时(+0)原=0000 0000 0000 0000; (+0)补=0000 0000 0000 0000; (4) 8位时(-0)原=1000 0000 ; (-0)补=0000 0000;
16位时(-0)原=1000 0000 0000 0000; (-0)补=0000 0000 0000 0000; (5) 8位时(127)原=0111 1111; (127)补=0111 1111;
16位时(127)原=0000 0000 0111 1111; (127)补=0000 0000 0111 1111; (6) 8位时-128超过原码表示的范围; (-128)补=1000 0000;
16位时(-128)原=1000 0000 1000 0000; (-128)补=1111 1111 1000 0000; (7) 8位时(121)原=0111 1001 ; (121)补=0111 1001;
16位时(121)原=0000 0000 0111 1001; (121)补=0000 0000 0111 1001; (8) 8位时(-9)原=1000 1001 ; (-9)补=1111 0111;
16位时(-9)原=1000 0000 0000 1001; (-9)补=1111 1111 1111 0111;
8.答:
(1) [x]补=1100 0010;(2)[-x]补=0000 1101;(3)[x]原=1100 0010;(4)[x]反=1011 1101。
9.答:
(1)A>B;(2)A<B 10.答:
(1)溢出;(2)13H;(3)溢出;(4)EDH;(5)EDH。 11.答:
(1)1000 1000;(2)1110 1110;(3)0110 0110;(4)1010 1100; (5)0000 0000;(6)1010 1100;(7)=0101 0011。 12.答:
(1)30H=48,字符为‘0’;(2)39H=57,字符为‘9’;(3)42H=66,字符为‘B’; (4)62H=98,字符为‘b’;(5)20H=32,字符为空格;(6)7H=7,字符为报警符; 13、答:
十进制 压缩BCD码 非压缩BCD码 49 0100 1001B 0000 0100 0000 1001B ASCII码 3439H 123 0001 0010 0011B 0000 0001 0000 0010 0000 0011B 313233H 37H 7 0000 0111B 0000 0111B 62 0110 0010B 0000 0110 0000 0010B 3632H
第2章 习题答案
1.(1)答:
物理地址:物理地址(PA)是20位无符号二进制数,是CPU访问存储器的实际地址。每个存储单元对应一个物理地址。8086存储空间的物理地址范围是:00000H~FFFFFH。
逻辑地址:采用分段结构的存储器中,把通过段地址和偏移地址来表示的存储单元的地址称为逻辑地址,记为:段地址:偏移地址。
段地址:8086规定各逻辑段从节的整数边界开始,即段首地址二进制值的低4位是0000,把段首地址的高16位称为段基址或段地址。
偏移地址:把某一存储单元相对于段地址的段内偏移量称为偏移地址(也称有效地址EA)。段地址和偏移地址都是是16位无符号二进制数。 (2)答:
时钟周期:计算机的“时钟”是由振荡源产生的、幅度和周期不变的节拍脉冲,每个脉冲周期称为时钟周期,又称为T状态或T周期,时钟周期是微机系统工作的最小时间单元。
总线周期:当CPU访问存储器或输入/输出端口时,需要通过总线进行读或写操作,这个过程称为总线周期(Bus Cycle)。总线周期是利用总线完成一次读/写所需要的时间。
指令周期:执行一条指令所需要的时间称为指令周期(Instruction Cycle)。指令周期由1个或多个总线周期组成。 (3)答:
最小模式:也称为单处理器模式,是指系统中只有一片8086微处理器,所连接的存储器容量不大、片子不多,所要连接的I/O端口也不多,系统的控制总线就直接由CPU的控制线供给,从而使得系统中的总线控制电路减到最少。最小模式适用于较小规模的系统。
最大模式:相对于最小模式而言,适用于中、大型规模的系统。系统中有多个微处理器,其中一个是主处理器8086,其他的处理器称为协处理器,承担某方面专门的工作。需要增加一片8288来对8086CPU发出的控制信号进行变换和组合,以得到对存储器或I/O端口的
读/写信号和对锁存器、总线收发器的控制信号。 2.答:
EU:负责指令的执行,即从总线接口部件BIU的指令队列取指令,指令执行后向BIU送回运算结果,同时把运算结果的状态特征保存到标志寄存器中。
BIU:负责CPU与存储器、I/O设备之间的数据传送。BIU完成以下操作:取指令送给指令队列、配合执行部件从指定的内存单元或者外设端口中取数据、将数据传送给执行部件或者把执行部件的操作结果传送到指定的内存单元或外设端口中。
8086的BIU和EU在很多时候可以并行工作,使得取指令、指令译码和执行指令这些操作构成操作流水线。
① 当指令队列中有两个空字节,且EU没有访问存储器和I/O接口的要求时,BIU会自动把指令取到指令队列中。
② 当EU准备执行一条指令时,它会从指令队列前部取出指令执行。在执行指令的过程中,如果需要访问存储器或者I/O设备,那么EU会向BIU发出访问总线的请求,以完成访问存储器或者I/O接口的操作。如果此时BIU正好处于空闲状态,那么,会立即响应EU的总线请求;但如果BIU正在将某个指令字节取到指令队列中,那么,BIU将首先完成这个取指令操作,然后再去响应EU发出的访问总线的请求。
③ 当指令队列已满,而且EU又没有总线访问时,BIU便进入空闲状态。
④ 在执行转移指令、调用指令和返回指令时,下面要执行的指令就不是在程序中紧接着的那条指令了,而BIU往指令队列装入指令时,总是按顺序进行的。在这种情况下,指令队列中已经装入的指令就没有用了,会被自动消除。随后,BIU会往指令队列中装入另一个程序段中的指令。 3.答:
地址信号是CPU发送给内存或I/O设备的,所以地址线是单向的;
数据信号可以从CPU发送给内存或I/O设备,也可以从内存或I/O设备发送给CPU,故而数据线是双向的。