2微处理器结构及基本工作原理.pptx
《2微处理器结构及基本工作原理.pptx》由会员分享,可在线阅读,更多相关《2微处理器结构及基本工作原理.pptx(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1.8086/8088 CPU主要性能l字长字长 :16位位/准准16位位l时钟频率:时钟频率:5MHzl数据总线、地址总线复用数据总线、地址总线复用l内存容量内存容量 :20位地址总线,位地址总线,1MB存储空间存储空间l端口地址:端口地址:16位位I/O地址总线,地址总线,64KB个端口个端口l中断功能:内部软件中断,外部硬件中断,中断功能:内部软件中断,外部硬件中断, 可管理可管理256个中断源个中断源l两种工作模式两种工作模式 :支持单片:支持单片CPU或多片或多片CPU 系统工作系统工作 8086/8088CPU性能指标性能指标 8086:是是INTEL系列系列16位微处理器,采用位
2、微处理器,采用HMOS(高密(高密度金属氧化物半导体)技术,集成度为度金属氧化物半导体)技术,集成度为29000个管片。个管片。数据总线:数据总线:16位位地址总线:地址总线:20位,可直接寻址的地址空间为位,可直接寻址的地址空间为 1M字节。字节。 8088:准准16位机,位机,CPU内部数据总路线为内部数据总路线为16位,外部位,外部8位,位,20位地址总线,推出位地址总线,推出8088的目的是为了向下兼容以的目的是为了向下兼容以前的前的8位微型机。位微型机。2. 8086/8088内部结构 内内 部部 结结 构构 l8086CPU结构框图及分析结构框图及分析 l8086CPU内部寄存器内
3、部寄存器 l指令执行单元指令执行单元EU l总线接口单元总线接口单元BIU l8088CPU的指令流水线的指令流水线 l通用寄存器通用寄存器 l段寄存器段寄存器 l标志寄存器标志寄存器 l指令指针寄存器指令指针寄存器 2.1 8086CPU工作方式工作方式 微处微处 理器理器 堆栈段堆栈段 存储存储 器接器接 口电口电 路路 存存储储器器附加段附加段 数据段数据段 代码段代码段 代码段代码段1 00000HFFFFFH2.2 8086CPU内部结构框架内部结构框架 ALUTMPTMP标志寄存器标志寄存器FR控制单元EU通用寄存器161616指令队列缓冲器总线控制逻辑通信寄存器CSESSSDSI
4、P地址产生器BIU16816202.2 8086CPU内部结构框架内部结构框架 ALUTMPTMP标志寄存器标志寄存器FR控制单元EU通用寄存器161616指令队列缓冲器总线控制逻辑通信寄存器CSESSSDSIP地址产生器BIU1681620 执行部件执行部件EU的作用:负责的作用:负责执行指令、形成有效地址执行指令、形成有效地址EA。EU 包括四部分:包括四部分:运算器运算器ALU+TEMP 标志寄存器标志寄存器 控制单元控制单元 通用寄存器通用寄存器 2.2 8086CPU内部结构框架内部结构框架 ALUTMPTMP标志寄存器标志寄存器FR控制单元EU通用寄存器161616指令队列缓冲器总
5、线控制逻辑通信寄存器CSESSSDSIP地址产生器BIU1681620 总线接口部件总线接口部件BIU的作用是的作用是预取指令、形成实际地址预取指令、形成实际地址PA、输入输出数据。输入输出数据。BIU主要由五部主要由五部分组成:分组成:指令队列缓冲器指令队列缓冲器 总线控制逻辑总线控制逻辑 段寄存器段寄存器 指令指针寄存器指令指针寄存器 地址产生器地址产生器 l总线利用率高。总线利用率高。串行结构:取指令串行结构:取指令取操作数取操作数执行指令执行指令存放结果存放结果 lCPU利用率高,计算速度快。利用率高,计算速度快。l两部分的动作管理遵循以下原则。两部分的动作管理遵循以下原则。1.每当每
6、当8086的指令队列中有的指令队列中有2个空字节,个空字节,BIU就会自动把指令就会自动把指令取到指令队列中取到指令队列中;2.同时同时EU从指令队列中取出一条指令并分析、执行指令;从指令队列中取出一条指令并分析、执行指令;3.当指令队列已满而当指令队列已满而EU对对BIU又无总线访问请求时,又无总线访问请求时,BIU进入进入空闲状态;空闲状态;4.在执行转移、调用和返回指令时,指令队列中原有内容被自在执行转移、调用和返回指令时,指令队列中原有内容被自动清除。动清除。 微处理器结构分析微处理器结构分析 2.3 8088CPU内部结构框架内部结构框架 l指令队列长度仅有指令队列长度仅有4个字节,
7、队列中出现个字节,队列中出现1个个 空闲字节,空闲字节,BIU就会自动访问存储器,取新的就会自动访问存储器,取新的 指令。指令。lBIU通过总线控制电路与外部交换数据的数据通过总线控制电路与外部交换数据的数据 总线宽度是总线宽度是8位,总线控制电路与专用寄存器位,总线控制电路与专用寄存器 之间的数据总线宽度也是之间的数据总线宽度也是8位。位。2.3 8088CPU内部结构框架内部结构框架 2.4 寄存器通用寄存器寄存器通用寄存器 四个四个16位通用寄存器、两个变址寄位通用寄存器、两个变址寄存器、两个指针寄存器。存器、两个指针寄存器。 AX:累加器(:累加器(Accumulator) BX:基址
8、寄存器(:基址寄存器(Base Index) CX:计数寄存器(:计数寄存器(Count Index) DX:数据寄存器(:数据寄存器(Data Index) SI:源变址寄存器(:源变址寄存器(Source Index) DI:目标寄存器(:目标寄存器(Destination Index) SP:堆栈指针(:堆栈指针(Stack Pointer) BP:基址指针(:基址指针(Base Pointer) AXBXCXDX0158 7ALAHBLBHCLCHDLDHSIDISPBPAXAL在输入在输入/输出指令中用作数据寄存器;在乘法指令中输出指令中用作数据寄存器;在乘法指令中存放被乘数或乘积;
9、在除法指令中存放被除数或商存放被乘数或乘积;在除法指令中存放被除数或商AH 在在LAHF指令中作为目标寄存器使用指令中作为目标寄存器使用AL在在BCD码及码及ASC运算指令中作累加器使用;在运算指令中作累加器使用;在XLAT指令中作累加器使用指令中作累加器使用BX在间接寻址方式中作基址寄存器使用;在在间接寻址方式中作基址寄存器使用;在XLAT指令指令中作基址寄存器使用中作基址寄存器使用CX在循环指令和字符串指令中作为循环次数计数器在循环指令和字符串指令中作为循环次数计数器,每每作一次循环,作一次循环,CX的内容自动减的内容自动减1CL在移位在移位/循环指令中作移位次数计数器使用循环指令中作移位
10、次数计数器使用DX在字乘法在字乘法/除法指令中存放乘积高位或被除数高位或除法指令中存放乘积高位或被除数高位或余数;在间接寻址的输入余数;在间接寻址的输入/输出指令中作地址寄存器输出指令中作地址寄存器使用使用SI在字符串运算指令中作源变址寄存器使用;在间接在字符串运算指令中作源变址寄存器使用;在间接寻址的指令中作变址寄存器使用寻址的指令中作变址寄存器使用DI在字符串运算指令中作目标变址寄存器使用;在间在字符串运算指令中作目标变址寄存器使用;在间接寻址中作变址寄存器使用接寻址中作变址寄存器使用BP在间接寻址的指令中作基址指针使用在间接寻址的指令中作基址指针使用SP在堆栈操作中作堆栈指针使用在堆栈操
11、作中作堆栈指针使用在某些指令中规定了某些通用寄存器的专门用法, 这样可以缩短指令代码长度;或使这些寄存器的使用具有隐含的性质, 以简化指令的书写形式(即在指令中不必写出使用的寄存器名称)。 通用寄存器的隐含用法如左表所示。2.4 寄存器控制寄存器寄存器控制寄存器 指令指针寄存器IP:16位的寄存器,存放BIU要取的下一条指令的偏移地址。 标致寄存器FR:FR中的含6个状态标志位,3个控制标志位。状态标志位用来反映EU执行算术运算和逻辑运算以后的结果特征;控制标志位用来控制微处理器的工作方式或工作状态。2.4 寄存器标志寄存器寄存器标志寄存器FR OF DF IF TF SF ZF AF PF
12、CF 15870状态状态标志位标志位 CF进位标志进位标志,CF=1,有进有进(借借)位位(算术)。算术)。 PF奇偶标志,含奇偶标志,含1个数为偶数,个数为偶数,PF=1。 AF辅助进位位,辅助进位位, D3向向D4有进借位,有进借位,AF=1。 OF溢出标志,溢出标志,OF=CF + CD。OF=1,有溢出。,有溢出。 SF符号标志,符号标志,SF=1,D7(D15)=1。 零标志,零标志,ZF=1,结果为零。,结果为零。 控制位控制位 IF中断允许标志,中断允许标志,IF=1,允许,允许CPU响应响应外设通过可屏蔽中断请求线提出的中断外设通过可屏蔽中断请求线提出的中断DF 方向标志,串,
13、方向标志,串,DF=1,减址,减址 TF跟踪标志,跟踪标志,TF=1,CPU进入单步运行状态。进入单步运行状态。 标志OFDFIFSFZFAFPFCFOVDNEINGZRACPECYNVUPDIPLNZNAPONC为1的符号为0的符号标志寄存器中的状态标志的状态表示符号CF= 1 PF= 1 AF= 0 OF= 0 SF= 0 ZF= 0 无符号数相加无符号数相加 211 105 316 + - 45 + 105+ 60 + 11010011+ 0110100100111100 11 11 11010011+ 0110100100111100 11 11 有符号数相加有符号数相加 2.4 寄存
14、器段寄存器寄存器段寄存器 0 0A A000 0000 1001 0001 1100 0100 1101 0101 1010 0010 1011 0011 1110 0110 1111 0111 1十六进制数十六进制数0H1H2H3H4H5H6H7H8H9HAHBHCHDHEHFH0HFH 地址地址 译码译码 电路电路 0 0A A1 1A A2 2A A3 3A ADB8086微处理器的地微处理器的地址总线为址总线为20根,则根,则其寻址空间为:其寻址空间为:20202=1MB2=1MB00000HFFFFFH2.4 寄存器段寄存器寄存器段寄存器 矛盾:矛盾:外部地址总线为外部地址总线为20
15、根,内部能够提供的数据为根,内部能够提供的数据为16位。位。 逻辑段逻辑段1 逻辑段逻辑段2 逻辑段逻辑段3 l因为因为16位地址最多可以访问位地址最多可以访问64K的存储空的存储空间,所以每个分段的最大空间为间,所以每个分段的最大空间为64K。 段起段起始地始地址址l物理地址:存储器中实实在在存在的一个物理地址:存储器中实实在在存在的一个存储单元的编号,也叫实际地址。存储单元的编号,也叫实际地址。 l段起始地址:分段的第一个物理地址。段起始地址:分段的第一个物理地址。 00000HFFFFFHl1M的存储空间能够被分为的段数为:的存储空间能够被分为的段数为:16 l段起始地址的特点:低四位为
16、段起始地址的特点:低四位为0。 12340H 12000H 00000H 23560H FFFF0H 2.4 寄存器段寄存器寄存器段寄存器 l段基址:段起始地址高十六位(段基址:段起始地址高十六位(二二进制进制)组成的地址编码。)组成的地址编码。 偏移地址偏移地址12340H2233FH 逻辑段逻辑段11238FH右图所示段的段基址为:右图所示段的段基址为:1234Hl偏移地址:物理地址与所在段起始偏移地址:物理地址与所在段起始地址的差,也叫有效地址。地址的差,也叫有效地址。 右图中右图中1238FH的偏移地址为:的偏移地址为: 0004FHl物理地址的形成:段基址左移物理地址的形成:段基址左
17、移4位位(二进制二进制)+ 偏移地址。偏移地址。 l偏移地址的特点:高四位(偏移地址的特点:高四位(二进制二进制)永远为永远为0,因此仅取其低十六位。,因此仅取其低十六位。 最大的偏移地址最大的偏移地址2233FH-12340H=0FFFFH2.4 寄存器段寄存器寄存器段寄存器 逻辑段逻辑段2 逻辑段逻辑段1 同一个存储单元同一个存储单元25637H25630H25600H00037H00007Hl逻辑地址的特点:不唯一逻辑地址的特点:不唯一 l逻辑地址逻辑地址 段基址:偏移地址段基址:偏移地址 左图中左图中1238FH的逻辑地址为:的逻辑地址为:1234H:004FH偏移地址偏移地址1234
18、0H2233FH 逻辑段逻辑段11238FH 逻辑地址的来源逻辑地址的来源 操作指令操作指令段基址段基址偏移地址偏移地址正常来源正常来源其他来源其他来源取指令取指令CS无无IP堆栈指令堆栈指令SS无无SP存存/取数据取数据DSCS、ES、SS有效地址有效地址EA取源串取源串DSCS、ES、SSSI存存/取目标串取目标串ES无无DI通过通过BP间接寻址间接寻址SSCS、ES、DS有效地址有效地址EA2.4 寄存器段寄存器寄存器段寄存器 l代码段:存放等待执行的指令代码。代码段:存放等待执行的指令代码。 l数据段:存放指令中所需要的操作数。数据段:存放指令中所需要的操作数。 l堆栈段:一段特殊的数
19、据存取区域。堆栈段:一段特殊的数据存取区域。 l附加段:通常也用来存放操作数。附加段:通常也用来存放操作数。 l在程序量很大的情况下可以开辟在程序量很大的情况下可以开辟多个代码段。同理,其它逻辑段也多个代码段。同理,其它逻辑段也可以进行扩展。可以进行扩展。 堆栈段堆栈段 附加段附加段 数据段数据段 代码段代码段 l各个逻辑段可以重叠。各个逻辑段可以重叠。 代码段代码段1 数数据据段段1附附加加段段1l功能段:按存放数据所起到的功能不功能段:按存放数据所起到的功能不同又可以分为代码段、数据段、堆栈段同又可以分为代码段、数据段、堆栈段和附加段。和附加段。 2.4 寄存器段寄存器寄存器段寄存器 l代
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微处理器 结构 基本 工作 原理
限制150内