微机原理课后习题答案解析 下载本文

完美WORD格式.整理

转移执行。

PSW(Program Status word)程序状态字,它其中有三个控制标志(IF、DF、TF)和6个状态标志(SF、PF、ZF、OF、CF、AF)。控制标志是用于控制CPU某方面操作的标志,状态标志是部分指令执行结果的标志。 5、请画出8086/88 CPU的内部结构图。 答:如下图所示:

6、请说明8086/88 CPU的标志位的英文名、中文名及填充方法。

答:IF(Interrupt Enable Flag)中断允许标志,用于控制CPU能否响应可屏蔽中断请求,IF=1能够响应,IF=0不能响应。

DF(Direction Flag)方向标志,用于指示串操作时源串的源变址和目的串的目的变址变化方向,DF----1向减的方向变化,DF=0向加的方向变化。 TF(TrapFlag)陷阱标志(单步中断标志),TF=1程序执行当前指令后暂停,TF=0程序执行当前指令后不会暂停。

SF(Sign Flag)符号标志,指令执行结果的最高二进制位是0还是l,为0,则SF=0,代表正数;为l,则SF=1,代表负数。我们一般是用十六进制数表示,则可以根据十六进制的最高位是落在O~7还是落在8~F之间,若落在0~7之间则SF=0.否则SF=1。

. 专业资料分享 .

完美WORD格式.整理

PF(Parity ChECk Flag)奇偶校验标志,指令执行结果的低8位中1的个数是奇数个还是偶数个,若为奇数个则PF=0,若为偶数个则PF=1。

ZF(Zero Flag)零标志,指令执行结果是不是为0,若为0则ZF=1,否则ZF=0。 OF(Overflow Flag)有符号数的溢出标志,指令执行结果是否超出有符号数的表示范围,若超过则0F=1,否则OF=0。我们可以通过判断是否出现以下四种情况之一:正加正得负,正减负得负,负加负得正,负减正得正。若出现则0F=1.否则OF=0.

CF(Carry Flag)进位/借位标志无符号数的溢出标志),指令执行结果的最高位是否有向更高位进位或借位,若有则CF=1,同时也代表无符号数溢出;若无则CF=0,也代表无符号数未溢出。

AF(Auxiliary Carry Flag)辅助进位/借位标志,低4位二进制是不是有向高位进位或借位,若有则AF=1,否则AF=0,其主要用于BCD修正运算。 7、内存分段组织的优缺点是什么? 答:优点如下:

(1)8086/8088 CPU中的寄存器只有16位,如果采用它们直接寻址,则寻址能力势必限制在64 KB范围内,而采用分段组织可以较好地实现扩展CPU的寻址能力。每段的大小可达64 KB,不同段的组合则可寻址更大的范围。 (2)使程序与数据相对独立,不同存取方式的数据也相对独立。 程序:存放于代码段CS中

堆栈方式:存放于堆栈段SS中

数据:随机方式:存放于数据段DS及附加段ES中

(3)便于程序和数据的动态装配,从一个地方挪到另外一个地方只要更改一

. 专业资料分享 .

完美WORD格式.整理

下段寄存器的值即可,段内偏移可以不用改变。

缺点:内存地址采用分段组织增加地址计算的复杂度,降低了CPU的执行效

率。

8、1MB内存最多可以有(64K)个不同的段地址,若不允许重叠的话最多可有(16)个不同的段地址。不同的段间(可以)重叠。

9、设DS=26FCH,BX=108H,SI=9A8H,试求出使DS:BX与ES:Sl指向同一物理地址的ES值。 答:即DS:BX=ES:SI

DS:BX=DS× l6+BX=26FCH×16+108H=270C8H ES:SI=ES×16+SI=ES×16+9A8H

ES=(270C8H一9A8H)÷l6=2672H

10、接口、端口以及端口地址之间的对应关系如何?

答:一个计算机系统内有很多接口,一个接口内一般有多个端口,一个端口可以有多个端口地址与其对应(这叫重叠地址),一个端口地址可以对应多个端口(但需要继续区分才能访问,如读写顺序、读写信号、数据位、索引区分)。所以通过端口传输信息首先需要区分端口,区分端口可通过端口地址不同来区分。 11、访问端口有哪些方法?

答:(1)用I/O指令实现信息传输;(2)通过BIOS中断调用实现信息传输;(3)通过DOS中断调用实现信息传输。

12、请根据图2.3说明ADD AX, BX指令的取指及执行过程。 自己看书

13、8086/88 的20位物理地址是怎样形成的?当CS=2000H, IP=0100H, 下一条

. 专业资料分享 .

完美WORD格式.整理

待执行指令的物理地址等于多少?

答:20位物理地址由段地址左移4位加偏移地址形成,下一条待执行指令等于CS*10H+IP得到20100H。

14、已知当前数据段位于存储器的B1000H到BF0FFH范围内,请指出DS段寄存器的取值范围。

答:DS段寄存器的取值范围:AF10H~B100H

. 专业资料分享

.