欢迎来到天天文库
浏览记录
ID:58916336
大小:2.90 MB
页数:79页
时间:2020-09-29
《微机原理与接口技术14微处理器ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、微处理器Intel8086/80881.8086/8088的功能结构8086是一种单片微处理器芯片,内外部数据总线16位(8088内部数据总线16位,外部数据总线8位)对外40条引脚,主时钟5MHz、8MHz、10MHz等。20条地址引脚,直接寻址220=1MByte,可访问64K个I/O端口。8086CPU按功能可分为两大部分:一部分为BIU(BUSInterfaceUnit)专门负责取指令和存取操作数。它与BUS打交道。一部分为EU(ExecutionUnit)专门负责分析指令与执行指令。它不与系统BUS打交道。1.EUEU单元负责
2、指令的执行,由算术逻辑单元ALU、标志寄存器F、通用寄存器及EU控制器等组成,主要进行16位的各种运算及有效地址的计算。EU不与计算机系统总线(外部总线)相关,而从BIU中的指令队列取得指令。这个指令队列中,存放着BIU预先由存储器中取出的若干个字节的指令(8088为4个字节,8086为6个字节长队列)。1)执行单元EU数据寄存器AX、BX、CX、DX专用寄存器SP、BP、SI、DI标志寄存FLAG算数逻辑部件ALUEU控制逻辑单元执行部分控制电路ALU标志寄存器AHALBHBLCHCLDHDLSPBPSIDI通用寄存器执行部件(EU)
3、16位8位8088CPU的内部寄存器8088CPU内部共有14个16位的寄存器,其中包括4个16位的数据寄存器AX、BX、CX、DX;2个16位的指针寄存器SP、BP;2个16位的变址寄存器SI、DI;2个16位的控制寄存器IP、F及4个16位的段寄存器CS、DS、ES、SS,如图2.1所示。1.通用寄存器组通用寄存器组包括4个数据寄存器AX、BX、CX、DX;2个指针寄存器SP、BP及2个变址寄存器SI、DI。4个数据寄存器用来存放16位数据,也可以将每个数据寄存器分为2个8位的寄存器,用于存放8位数据。此时,AX可分为AH及AL;B
4、X可分为BH及BL;CX分为CH及CL;DX分为DH及DL,它们可作为8位寄存器单独使用。这样既可以进行16位的算术运算和逻辑运算,也可以进行8位的算术运算和逻辑运算,这是8088指令系统的一个特点。两个指针寄存器中的SP是堆栈指针寄存器,它和堆栈段寄存器一起就可以确定堆栈在内存中的位置。BP是基数指针寄存器,通常用来存放基地址,使得8088的寻址更加灵活。两个变址寄存器:SI是源变址寄存器,DI是目的变址寄存器,均用于指令的变址寻址。SI通常指向源操作数,而DI通常指向目的操作数。不仅4个数据寄存器可以任意参加算术运算和逻辑运算,而且
5、BP,SP,SI,DI也可以任意参加算术运算和逻辑运算,因而称以上寄存器为通用寄存器。为了充分地利用这些通用寄存器,在某些指令中又对其中的寄存器作了特殊的约定,使这些寄存器在通用的基础上附加了一点特殊性。这些特殊的约定虽然增加了掌握指令的难度,但是当学完指令系统后会发现,这点难度是不大的,是容易克服的。例如,虽然通用寄存器都可作为累加器使用,但在某些算术运算中(如乘法运算、除法运算、十进制调整等),还是指定了以AX作为累加器,这就使AX与其它的通用寄存器有所区别,因而在8088中,把AX称为累加器。由于在变址寻址中,指定BX为基址寄存器
6、,因此,BX便被称为基址寄存器。在循环控制或重复操作的指令中,常把循环或重复的次数放在CX或CL中,因而称CX为计数寄存器。在乘法、除法中,乘积或被除数超过16位时,总是用DX与AX存放,故DX便被称为数据寄存器。对于SI和DI寄存器也有类似的情况,即在专用的串操作指令中,指定SI作为源串的地址指针,DI作为目标串的地址指针,并在串指令执行时,自动地改变SI或DI的值,因而称SI、DI为变址寄存器。SP作为堆栈栈顶元素的指针,不能指向栈顶以外的元素,为此,增加了一个基址指针寄存器BP,使它可以指向由SS作为堆栈段基址的栈中的任意位置。B
7、P与SP具有不同的概念和用途,我们要注意将它们区别开来。2.专用寄存器组专用寄存器组包括作为控制寄存器使用的指令指针寄存器IP和状态标志寄存器F,此外还有4个用于实现1MB存储器寻址的段寄存器CS、DS、SS、ES。以上寄存器都是16位的寄存器。8088指令中给出的地址最多只有16位,而与寻址有关的寄存器也是16位的,由于16位地址最多只能寻址64KB。4个段基地址CS、DS、ES、SS仅仅指出了段从哪个地址开始,但还不能决定正在使用的具体的存储单元的地址,因此我们把正在使用的存储单元的地址与所在段的基地址的偏移量称为段内偏移量或者称为
8、有效地址EA,真正的物理地址是由段寄存器值左移4位与段内偏移量相加后的结果,如图2.2所示。例如取指令时,CS值为2000H,而IP值为3500H,则被取指令的物理地址为:20000H——CS左移4位+)3
此文档下载收益归作者所有