第二章:微处理器与体系结构计算机中,CPU的地址线与访问存储器单元范围的关系是什么?【解】:在计算机中,若CPU的地址线引脚数为N条,则访问存储器单元的数量为2N个,访问存储器单元范围为0~2N-1。8086CPU中指令队列的功能和工作原理?【解】:8086CPU中指令队列的功能是完成指令的流水线操作。BIU单位经总线从程序存储器中读取指令并放入指令队列缓冲器,EU单元从指令队列缓冲器中获取指令,因EU并未直接从程序存储器中读取指令,而是经指令队列缓冲,使取指和执指能同时操作,提高了CPU的效率。8086CPU的堆栈操作原理?【解】:8086CPU的堆栈是一段特殊定义的存储区,用于存放CPU堆栈操作时的数据。在执行堆栈操作前,需先定义堆栈段SS、堆栈深度(栈底)和堆栈栈顶指针SP。数据的入栈出栈操作类型均为16位,入栈操作时,栈顶指针值先自动减2(SP=SP-2),然后16位数据从栈顶处入栈;出栈操作时,16位数据先从栈顶处出栈,然后栈顶指针值自动加2(SP=SP+2)。8086CPU的最小和最大工作模式的主要不同点?【解】:CPU的控制线应用方式不同:在最小工作模式下,计算机系统的所需的控制线由CPU直接提供;在最大工作模式下,CPU仅为计算机系统提供必要的控制线,而系统所需的控制线由专用芯片总线控制器8288产生。计算机系统复杂度不同:在最小工作模式下,计算机系统仅用单处理器(8086)组成,系统结构简单且功能也较小;在最大工作模式下,计算机系统由多处理器组成,除8086CPU外,还有总线控制器8288和协处理器8087。8086CPU中的EU单元,BIU单元的特点?【解】:8086CPU为实现指令的流水线操作,将CPU分为指令执行单元EU和总线接口单元BIU。EU与一般CPU的结构基本相同,含运算器ALU、寄存器、控制器和内部总线,但EU不从存储器中直接读取指令。BIU是8086CPU的总线接口单元,主要功能有两点,第一是经总线从存储器中获得指令和数据,指令送指令队列缓冲器,以便EU从指令队列获取指令;数据经片内数据总线送CPU中的相关寄存器;第二是20位物理地址的形成,8086CPU中所有寄存器均是16位的,BIU中的地址加法器的入端为16位段首地址和16位段内偏移地址,出端为20位的实际地址,20位地址经线完成对存储器单元或I/O端口的访问。什么叫物理地址?什么叫逻辑地址?【解】:物理地址:完成存储器单元或I/O端口寻址的实际地址称为物理地址,CPU型号不同其物理地址不问,例8080CPU的物理地址16位、8086CPU的物理地址20位、80286CPU的物理地址24位。逻辑地址:物理地址特殊表示方式,例如8086CPU中用16位段首逻辑地址和16位段内偏移逻辑地址表示20位的物理地址。物理地址是惟一的,而逻辑地址是多样的。8086CPU和8088CPU的主要区别?【解】:CPU内部的区别:8086的指令队列缓冲器为6字节,8088为4字节;CPU数据总线的区别:8086的数据总线宽度为16位,8088为8位;CPU控制线的区别:因8086可一次进行16位数据的操作,可用控制线/BHE和地址线A0完成对奇偶存储库的选择,8088一次只能对8位数据的操作,无控制线/BHE的功能。8086与8088比较,存储器和I/0选择控制线的控制电平相反。8086CPU的6个状态标志位的作用是什么?【解】:6个状态标志位为CF、OF、ZF、SF、AF和PF。CF是无符号数运算时的进位或借位标志,无进位或借位时CF=0,有进位或借位时CF=1;OF为有符号数运算时的溢出标志,无溢出时OF=0,有溢出时OF=1;ZF是两数运算时的值0标志,运算结果不为0,ZF=0,运算结果为0,ZF=1;SF是有符号数运算时运算结果符号的标志,运算结果为正时SF=0,运算结果为负时SF=1;AF是辅助进位标志,若D3位到D4位无进位时(或D4位到D3位无借位时),AF=0,若D3位到D4位有进位时(或D4位到D3位有借位时),AF=1;CF是运算结果的奇偶校验标志,若运算为奇个1,则PF=0,若运算为偶个1,则PF=1。8086CPU的3个控制标志位的作用是什么?【解】:3个控制标志位是IF、DF和TF。IF是可屏蔽中断中断允许控制位,当IF=0时,有可屏蔽中断请求,但未中断响应产生,当IF=1时,有可屏蔽中断请求必有中断响应产生;DF是数据串操作时的自动增量方向控制位,当DF=0时,地址增量方向为自动加,当DF=1时,地址增量方向为自动减;TF是指令单步调试陷阱控制位,当TF=0时无指令单步调试操作,当TF=1时有指令单步调试操作。8086CPU的1M存储空间可分为多少个逻辑段个每段的寻址范围是多少?【解】:8086CPU的1M存储空间可分为任意个逻辑段,段与段之间可连续也可不连续,可重叠也可相交。但每个分配逻辑段的寻址范围不能大于64K。什么是统一编址,分别编址?各有何特点?【解】:统一编址:存储器单元地址和I/O端口地址在同一个地址空间中分配。由于I/O端口地址占用存储器单元地址,减少了存储器的寻址空间,访问存储器单元和I/O端口可用相同的指令;分别编址:存储器单元地址和I/O端口地址在不同的地址空间中分配。存储器和I/O端口都有独立且较大的寻址空间,CPU需要用门的控制线来识别是访问存储器还是访问I/O端口,访问存储器单元和I/O端口要用不相的指令。8086CPU控制线/BHE,地址线A0对存储器奇偶库的作用是什么?【解】:8086CPU对存储器进行组织时,每一存储单元地址中仅能存放8位二进制数据,所以8086在进行16位数据操作时需同时访问两个8位的存储单元。奇库中存放16位数据的高8位,即D8~D15,控制线/BHE为奇库片选控制,偶库中存放16位数据的高8位,即D0~D7,A0为偶库片选控制。当/BHE=0且A0=0时,奇偶库片选均有效,可完成16位数据(D0~D15)的同时操作。当/BHE=1且A0=0时,奇库片选无效,偶库片选有效,只能完成8位数据(D0~D7)的操作。当/BHE=0且A0=1时,奇库片选有效,偶库片选无效,只能完成8位数据(D8~D15)的操作。什么是基本总线周期,扩展总线周期?【解】:8086CPU的基本总线周期由4个时钟周期组成,令为T1、T2、T3和T4。在T1时刻,CPU的地址/数据复用线上发出地址信息,用于存储器单元或I/O端口的寻址。T2~T4期间,在CPU的地址/数据复用线和存储器单元或I/O端口间实现数据传送。扩展总线周期是在基本总线周期的基础上,根据特殊要求加入等待周期Tw和空闲周期Tt。为了保证高速CPU与低速存储器或I/O接口的数据读写,在控制线READY的控制下,可在T3与T4间插入一个或多个等待周期Tw。当CPU暂时不需要经总线传送数据时,可在T4后插入一个或多个等待周期Tt。在8086CPU中,控制线ALE的作用是什么?【解】:控制线ALE的作用是在总线周期T1时,完成地址/数据复用线上地址信息的分离。ALE用于控制锁存器的锁存控制端,在T1时ALE输出高电平锁存地址信息,在T2~T4间ALE输出低电平保持地址信息。在8086CPU中,控制线DEN、DT/R的作用是什么?【解】:控制线DEN、DT/R的作用是完成对双向数据缓冲器芯片的控制。CPU的地址/数据复用线经数据缓冲器与数据总线相连接,当控制线DEN=0时,数据缓冲器片选有效,CPU的地址/数据复用线与数据总线连接有效。控制线DT/R的作用是数据缓冲器中数据传送方向控制,当DT/R=0时,数据从数据总线上流入CPU。当DT/R=1时,CPU经数据总线流出数据。在8086CPU中,控制线RD、WR的作用是什么?【解】:控制线/RD、WR的作用是完成存储器单元或I/O端口的数据读写控制。当RD=0且WR=1时,CPU经数据总线从选中的存储器单元或I/O端口中读取数据,当RD=1且WR=0时,CPU经数据总线向选中的存储器单元或I/O端口中写入数据。在8086CPU中,控制线M/IO的作用是什么?【解】:控制线M/IO的作用是确定在某一时刻CPU对存储器操作还是对I/O接口操作。当M/IO=0时,CPU对I/O接口操作有效,当M/IO=1时,CPU对存储器操作有效。直接端口寻址,间接端口寻址的特点?【解】:8086CPU在进行I/O端口访问时有效地址线为A1~A15,即16条地址线可访问64K个字节I/O端口。若仅用16条地址线的低8位地址A1~A7进行访问I/O端口称为直接端口寻址,若16条地址线全用于访问I/O端口称为间接端口寻址。在直接端口寻址操作中,8位地址操作数可直接出现在IN/OUT指令中。在间接端口寻址操作中,16位地址操作数应先赋给寄存器DX,IN/OUT指令中仅出现间接地址DX。什么是规则字?什么是非规则字?【解】:8086CPU的存储系统中,规定每个存储单元仅存放8位二进制信息。而8086CPU的数据总线宽度为16位,即可将两个存储单元中的数据经数据总线传送。当16位字数据按规则字存放在存储器中时,即偶地址存放16位字数据的低8位,奇地址存放16位字数据的高8位,用一个总线周期可完成16位数据的传送。若16位字数据按非规则字存放在存储器中时,即偶地址存放16位字数据的高8位,奇地址存放16位字数据的低8位,需两个总线周期可完成16位数据的传送。第三章:80X86指令系统指令中操作数存在的几种方式?【解】:在寄存器寻址中,操作数存在于寄存器中;在立即寻址中,操作数存在于代码段中;在存储器寻址中,操作数存在于数据段DS(ES、SS、CS)中。存储器寻址中间址寄存器的使用特点?【解】:存储器寻址中可用的间址寄存器有BX、BP、SI、DI,当存储器间址寻址时,BX、SI、DI对应的缺省段是DS;BP对应的缺省段是SS。当存储器基址变址寻址时,BX+SI、BX+DI对应的缺省段是DS;BP+SI、BP+DI对应的缺省段是SS。MOV指令中源、目的操作数的禁用特点?【解】:MOV指令中源、目的操作数有如下禁用特点:立即数不能作目的操作数;寄存器CS、IP不能作目的操作数;源、目的操作数不能同时为存储器操作数;源、目的操作数不能同时为段寄存器操作数;立即数不能赋给段寄存器。CMP指令对状态标志位的影响?【解】:当两操作数比较是否相等是,影响状态标志位ZF,即两数相等ZF=1,不等ZF=0;当两操作数比较大小时,无符号数比较和有符号数比较会影响不同的状态标志位。若无符号数比较,当目的操作数大于源操作数时,CF=0,反之CF=1;若有符号数比较,当目的操作数大于源操作数时OF⊕SF=0,反之OF⊕SF=1。MUL、DIV指令中专用寄存器的使用?【解】:在8×8→16模式中,专用被乘数寄存器是AL、专用积寄存器是AX;在16×16→32模式中,专用被乘数寄存器是AX、专用积寄存器是DX、AX。在16÷8→8、8模式中,专用被除数寄存器是AX、专用商余积寄存器是AL、AH;在32÷16→16、16模式中,专用被除数寄存器是DX、AX、专用商余积寄存器是AX、DX。AAM、AAD指令的使用特点?【解】:AAM是BCD乖法调整指令,作用是对积进行调整即将真实的积调整为用BCD表示的积,应用时先用MUL指令后用AAM指令;AAD是BCD除法调整指令,作用是对被除数进行调整即将用BCD表示的被除数调整为真实的被除数,应用时先用AAD指令后用DIV指令。串操作指令中的传用寄存器?【解】:专用源操作数串寄存器:专用串存放段寄存器DS、专用串指针寄存器SI;专用目的操作数串寄存器:专用串存放段寄存器ES、专用串指针寄存器DI;专用串操作数数量计数(寄托)器CX;专用串指针自动移动方向控诉标志DF。串操作中控制标志DF、指令尾符B、W的使用特点?【解】:当控制标志DF=0时,串指针SI、DI为自动增址方式;当控制标志DF=1时,串指针SI、DI为自动减址方式;当尾符为B时,为字节串操作