您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > 8086CPU内部结构
8086的编程结构总线接口部件(1)4个16位段地址寄存器8086对存储器采用分段管理,4个段寄存器分别用于存放4个当前段的起始地址,又称作段基址寄存器。CS(CodeSegment)—代码段寄存器DS(DataSegment)—数据段寄存器SS(StackSegment)—堆栈段寄存器ES(ExtraSegment)—扩展段寄存器(2)16位指令指针寄存器IP(InstructionPointer)IP始终指向当前代码段(CS)所要取出的下一条指令的地址。每取出一个字节指令后,IP自动加1。可以用转移指令、调用指令及中断和复位等改变IP值。总线接口部件(3)形成20位物理地址的加法器∑段地址左移4位+段内偏移量--20位实际物理地址段地址*16+段内偏移量--20位实际物理地址例:CS:CFFFH,IP:1234H,则加法器生成的实际物理地址是CFFF0+01234=D1224H;(4)6个字节的指令队列(ISQ)(5)总线控制逻辑总线接口部件说明:(1)8086具有6个字节的指令队列,在执行指令的同时,从内存中取下面的指令,放在指令队列缓冲器中;执行完一条指令就可以立即执行下一条指令,提高了CPU的效率;(2)地址加法器根据段地址寄存器和指令指针寄存器生成20位的物理地址。执行部件(1)16位算术逻辑单元ALU(2)4个16位数据寄存器AX、BX、CX、DX,又可以分为8个8位寄存器使用:AH、AL、BH、BL、CH、CL、DH、DL数据寄存器用于存放操作数及中间结果,AX和AL可用作累加操作,因此又可称作累加器。(3)4个16位地址指针寄存器SP(StackPointer)—堆栈指针寄存器BP(BasePointer)—基址指针寄存器SI(SourceIndex)—源变址寄存器DI(DestinationIndex)—目的变址寄存器地址指针寄存器用于存放操作数的地址,编程时通过修改寄存器的内容达到修改地址的目的。执行部件寄存器使用说明:SP—总是指示堆栈段中的栈顶位置,专门用于数据进栈和出栈的位置指示,只能与SS配对使用;BP—指示堆栈段中一个数据区的基址位置,通常与SS配对使用。SI/DI—与DS联用,用来确定数据段中某一存储单元的偏移地址。在串处理指令中SI和DI作为隐含的源变址和目的变址寄存器,此时SI和DS联用,DI和ES联用,分别达到在数据段和附加段中寻址的目的。BX—既可用作数据寄存器,也可用作基址指针寄存器,此时通常与DS配对使用。执行部件(4)位状态标志寄存器FLAG6个状态标志,3个控制标志IF、DF、TF,7位保留状态标志:CF—进(借)位标志,若运算结果最高位产生进位或借位则CF置“1”,否则置“0”;AF—辅助进位标志,若低字节的第4位向上产生一个进位或借位,则AF置“1”,否则置“0”;1514131211109876543210OFDFIFTFSFZFAFPFCF执行部件ZF—零标志位,若运算结果为零,则ZF置“1”,否则置“0”;SF—符号标志位,若算数运算的结果为负,SF置“1”,否则置“0”;OF—溢出标志位,有符号数算术运算结果产生溢出,OF置“1”,否则置“0”;PF—奇偶标志位,逻辑运算中低8位所含1的个数为偶数则PF置“1”,否则置“0”;控制标志:DF—方向标志位DF=1串操作指令以递减顺序处理数据串;DF=0串操作指令以递增顺序处理数据串;执行部件IF—中断允许标志IF=1CPU允许接收外部可屏蔽中断请求,即开中断;IF=0关中断;TF—跟踪标志位TF=1处理器处于单步工作方式时,每执行完一条指令产生一个软件中断;TF=0正常工作;状态标志寄存器举例:0101010000111001+01000101011010101001100110100011运算后CF=0PF=1OF=1OF=CsCp=1AF=1ZF=0SF=18086引脚信号和功能-functiondiagramVCCGNDAD0~AD15BHE/S7ALE(QS0)INTA(QS1)INTRNMIA16/S3~A19/S6(S2)M/IORD(LOCK)WR(S0)DEN(S1)DT/R(RQ0)HOLD(RQ1)HLDAREADYRESETMN/MXCLKTEST8086系统控制总线控制CPU控制总线信号中断控制示意图上的引脚说明8086引脚信号和功能-schematic设计软件中的引脚排列;8086引脚信号和功能-PCBlayout8086的存储器编址物理地址的形成:取指令:CS:IP堆栈:SS:SP/BP读写数据:DS:SI/DI/BX8086的存储器编址存储器操作类型隐含段超越段偏移量取指令CS无IP堆栈SS无SP数据变量DSCS,ES,SS有效地址源串变量DSCS,ES,SSSI目的串变量ES无DI基址BP指针SSCS,ES,DS有效地址段寄存器(CS、DS、ES、SS)与地址指针寄存器(SP、BP、SI、DI)默认是隐含配对使用,但也允许段超越。存储器分段编址好处1,使指令系统中大部分指令只涉及16位地址,在64kB的段内寻址,减小了指令长度、提高了执行速度。2,便于程序的浮动加载:•操作系统根据内存占用情况自动加载程序;•程序本身是可浮动的,与物理地址(段地址无关),只与偏移地址有关。8086的固定用途存储区固定用途存储区00000H-003FFH,1KB,中断向量表;B0000H-B0F9FH,4KB,单色显示器显示缓冲区;B8000H-BBF3FH,16KB,彩色显示器显示缓冲区;FFFF0H-FFFFFH,16B,复位程序入口;
本文标题:8086CPU内部结构
链接地址:https://www.777doc.com/doc-3939216 .html