书签 分享 收藏 举报 版权申诉 / 193
上传文档赚钱

类型指令系统层[页]课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4701715
  • 上传时间:2023-01-02
  • 格式:PPT
  • 页数:193
  • 大小:1.41MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《指令系统层[页]课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    指令系统 课件
    资源描述:

    1、1 计算机的基本工作主要体现为执行指令。计算机的基本工作主要体现为执行指令。一台计算机所能执行的全部指令,称为该一台计算机所能执行的全部指令,称为该机的指令系统或指令集,具体内容包括指机的指令系统或指令集,具体内容包括指令格式、寻址方式、指令类型与功能。令格式、寻址方式、指令类型与功能。相对微体系结构层,指令系统层是一个抽相对微体系结构层,指令系统层是一个抽象的层次,它是硬件和软件之间的接口,象的层次,它是硬件和软件之间的接口,其主要特征就是指令系统。其主要特征就是指令系统。本章将以本章将以80 x86为背景讨论指令系统层。为背景讨论指令系统层。第第4 4章章 指令系统层指令系统层2本章主要内

    2、容:本章主要内容:4.1 80 x86 CPU 4.2 CPU的寄存器和主存储器的寄存器和主存储器 4.3 80 x86指令系统。指令系统。34.1 80 x86 CPU 型号型号 发布发布 年代年代字长(位)字长(位)晶体管数晶体管数(万个)(万个)主频主频(MHz)内部数内部数据总线据总线宽度宽度(位)(位)外部数外部数据总线据总线宽度宽度(位)(位)地址总地址总线宽度线宽度(位)(位)寻址寻址空间空间片内片内高速高速缓存缓存80861978162.94.771616201MB无无80881979162.94.77168201MB无无8028619821613.462016162416 M

    3、B无无8038619863227.512.5333232324GB无无8048619893212016025503232324GB8KB80 x86 CPU概况如下表所示:概况如下表所示:4 型号型号 发布发布 年代年代字长字长(位)(位)晶体管数晶体管数(万个)(万个)主频主频(MHz)内部数内部数据总线据总线宽度宽度(位)(位)外部数外部数据总线据总线宽度宽度(位)(位)地址总地址总线宽度线宽度(位)(位)寻址寻址空间空间片内高片内高速缓存速缓存Pentium(586)199332310330601666464324GB8KB数据数据8KB指令指令Pentium Pro(P6)199532

    4、550+155016020064643664GB8KB数据数据8KB指令指令256KB 二二级高级缓级高级缓存存Pentium II19973275023333364643664GB32KB512KB 二二级高速缓级高速缓存,有独存,有独立封装和立封装和独立总线独立总线5 本节主要介绍本节主要介绍8086/8088、80386/80486、Pentium、Pentium Pro和和Pentium CPU的内部结的内部结构及特点。构及特点。4.1.1 8086/8088 CPU 8086 CPU是是16位微处理器,即位微处理器,即CPU的内外数据总线为的内外数据总线为16位,一个总线周期可以传送

    5、一个字(位,一个总线周期可以传送一个字(16位)数据。位)数据。8088是准是准16位微处理器,其位微处理器,其CPU的内部总线为的内部总线为16位,外位,外部数据总线为部数据总线为8位,因此一个总线周期只能传送一个字节。位,因此一个总线周期只能传送一个字节。但是两者的内部结构基本上是相同的,其地址引脚均为但是两者的内部结构基本上是相同的,其地址引脚均为20位,可寻址位,可寻址1MB主存空间。主存空间。8086/8088的指令系统完全相的指令系统完全相同,在软件上是完全兼容的。同,在软件上是完全兼容的。618086/8088 CPU内部结构内部结构 模型机模型机CPUCPU的指令之间的衔接采用

    6、串行的顺序处理方式,的指令之间的衔接采用串行的顺序处理方式,即必须在一条指令执行完后,才能从主存中读取下一条指令。即必须在一条指令执行完后,才能从主存中读取下一条指令。在在CPUCPU执行指令时,系统总线与主存可能空闲,因此程序执执行指令时,系统总线与主存可能空闲,因此程序执行效率不高。行效率不高。下图(下图(a a)给出了)给出了3 3条指令的执行过程:条指令的执行过程:7 8086/8088 CPU采用了指令流水线结构:采用了指令流水线结构:将取指令(或取操作数将取指令(或取操作数/写结果)与执行指令的功能分别由写结果)与执行指令的功能分别由两个独两个独立部件实现立部件实现,即总线接口部件

    7、,即总线接口部件BIU(Bus Interface Unit)与执行部)与执行部件件EU(Execute Unit)。)。当当EU执行某条指令时,执行某条指令时,BIU同时完成从主存中预取后继指令。两同时完成从主存中预取后继指令。两个部件并行地工作,使指令的读取与执行可以部分重叠,提高了个部件并行地工作,使指令的读取与执行可以部分重叠,提高了指令的总体执行速度。指令的总体执行速度。8086/8088 CPU的指令执行过程如图(的指令执行过程如图(b)。)。8 8086 CPU内部结构如下图所示内部结构如下图所示:9下面讨论下面讨论EU和和BIU的功能:的功能:(1)执行部件)执行部件EU:包括

    8、一个:包括一个16位算术逻辑运算部件位算术逻辑运算部件ALU、一组通用寄存器、暂存器、标志寄存器,及一组通用寄存器、暂存器、标志寄存器,及EU控制器控制器。各寄存器和内部数据通路都是。各寄存器和内部数据通路都是16位位。EU的的主要任务是执行指令,其功能为:主要任务是执行指令,其功能为:从指令队列中取出指令代码,由从指令队列中取出指令代码,由EU控制器进行译码后产生对控制器进行译码后产生对应的控制信号到对应部件以完成指令规定的操作。应的控制信号到对应部件以完成指令规定的操作。对操作数进行算术和逻辑运算,将运算结果的特征状态存放对操作数进行算术和逻辑运算,将运算结果的特征状态存放在标志寄存器中。

    9、在标志寄存器中。EU不直接与系统总线连接,因此当需要与主存储器或不直接与系统总线连接,因此当需要与主存储器或I/O端口端口传送数据时,传送数据时,EU向向BIU发出命令,并提供给发出命令,并提供给BIU 16位有效地址位有效地址与传送的数据。与传送的数据。10下面讨论下面讨论EU和和BIU的功能:的功能:(2)总线接口部件)总线接口部件BIU:包括一组包括一组段寄存器(段寄存器(CS、DS、SS、ES)、指令指针指令指针IP、6字节的指令队列字节的指令队列(8088是是4字节)、字节)、20位总线地址形成部件,以及总线控制逻辑位总线地址形成部件,以及总线控制逻辑。BIU的主要任务是完成的主要任

    10、务是完成CPU与主存储器或与主存储器或I/O端口之间端口之间的信息传送,其功能为:的信息传送,其功能为:计算并形成访问主存的计算并形成访问主存的20位物理地址。位物理地址。从主存取出指令送到指令队列中排队。从主存取出指令送到指令队列中排队。从主存或从主存或I/O端口取操作数或存放运算结果。端口取操作数或存放运算结果。11段基值:段基值:20位段起始地址的高位段起始地址的高16位,位,称为段基值(称为段基值(Segment Base Value),存放在),存放在BIU的相应段寄存的相应段寄存器中。器中。偏移地址(偏移量):偏移地址(偏移量):一个主存单元一个主存单元与所在段的段基址之间的字节距

    11、离。与所在段的段基址之间的字节距离。2.8086/8088 主存地址的形成主存地址的形成 段基址:段基址:将将1 MB主存空间划分为若干主存空间划分为若干段,每个段的最大长度为段,每个段的最大长度为64 KB。段的段的20位段起始地址称为段基址。位段起始地址称为段基址。*再由再由BIU将将16位段基值左移位段基值左移4位后与位后与16位偏移地址相加,位偏移地址相加,形成形成20位主存单元的物理地址。位主存单元的物理地址。当当CPU访问某个主存单元:访问某个主存单元:*指明哪个段寄存器提供段基值,指明哪个段寄存器提供段基值,同时又给出偏移地址。同时又给出偏移地址。124.1.2 80386/80

    12、486 CPU 1Intel 80386 1985年年Intel公司推出了第一片公司推出了第一片32位微处理器位微处理器80386。它的。它的主要性能如下:主要性能如下:32位地址,可直接寻址的物理存储空间为位地址,可直接寻址的物理存储空间为4 GB。具有片内存储管理部件,虚拟存储空间(逻辑地址空间)可具有片内存储管理部件,虚拟存储空间(逻辑地址空间)可达达64 TB。字长字长32位,系统总线的数据通路宽度位,系统总线的数据通路宽度32位。位。采用多级流水线结构。采用多级流水线结构。平均运算速度约为平均运算速度约为4 MIPS。132Intel 80486:相当于相当于一个增强型的一个增强型的

    13、8038038686、一个增强型的一个增强型的8038780387数值协处理器数值协处理器(也称浮点部件(也称浮点部件FPUFPU)、一个)、一个8 KB8 KB的高速缓的高速缓存存(CacheCache)的)的集成集成,基本上沿用了,基本上沿用了8038680386的体系结构,内部结的体系结构,内部结构如下图。构如下图。14下面分别简单介绍各部件的功能:下面分别简单介绍各部件的功能:总线接口部件总线接口部件BIU:BIU包含包含地址驱动器、数据收发器、总线控制器地址驱动器、数据收发器、总线控制器。功。功能是:当取指令、取数据或写数据、响应分页部件或分段部件请求时,能有能是:当取指令、取数据或

    14、写数据、响应分页部件或分段部件请求时,能有效地满足效地满足CPU对系统总线的传送要求。对系统总线的传送要求。指令部件:指令部件:它包含它包含指令预取部件、指令译码部件、产生微命令的控制部指令预取部件、指令译码部件、产生微命令的控制部件、高速缓存件、高速缓存Cache。它完成预取指令、分析指令,然后产生指令所需的微。它完成预取指令、分析指令,然后产生指令所需的微命令去控制相应部件操作。命令去控制相应部件操作。执行部件:执行部件:包含包含整数部件整数部件和和浮点部件浮点部件FPU。整数部件整数部件包括通用寄存器、一个有乘除功能的包括通用寄存器、一个有乘除功能的ALU、一个、一个64位的桶形移位位的

    15、桶形移位器。它器。它执行控制部件所指定的整数数据操作执行控制部件所指定的整数数据操作。由于浮点部件由于浮点部件FPU和浮点寄存器组集成在和浮点寄存器组集成在80486芯片内,缩短了芯片内,缩短了FPU与处理与处理器各部件之间的距离,因此器各部件之间的距离,因此FPU的执行速度比的执行速度比80386和和80387组成的系统快组成的系统快3倍。倍。15 存储器管理部件存储器管理部件MMU 在在80486中,中,存储器按段组织存储器按段组织,以适应用户程序逻辑结构。,以适应用户程序逻辑结构。段的大小可变,最大可达到段的大小可变,最大可达到4 GB。针对主存物理空间的组织,。针对主存物理空间的组织,

    16、又将又将存储器划分为页存储器划分为页,每页大小均为每页大小均为4 KB。MMU设置了设置了分段部件与分页部件分段部件与分页部件:分段部件分段部件按控制部件的要求计算有效地址,并且按控制部件的要求计算有效地址,并且 将将逻辑地逻辑地址址(由段基值由段基值/段选择器和偏移地址组成)段选择器和偏移地址组成)转换成线性地址转换成线性地址,即:,即:线性地址线性地址=段基址段基址+有效地址有效地址(即偏移地址)(即偏移地址)分页部件分页部件通过通过页变换页变换,将将来自分段部件或指令预取部件的来自分段部件或指令预取部件的线性地址转换成主存的物理地址线性地址转换成主存的物理地址。16 上述上述9个部件可以

    17、独立操作,也能与其他部件并行个部件可以独立操作,也能与其他部件并行工作。工作。在取指令和执行指令的过程中,每个部件都完成一在取指令和执行指令的过程中,每个部件都完成一部分功能,因此部分功能,因此80486可以同时对不同指令进行操可以同时对不同指令进行操作。作。80486具有具有5级流水线,使不同指令的操作重叠程度级流水线,使不同指令的操作重叠程度更高。使得一些常用指令的平均执行时间为一个时更高。使得一些常用指令的平均执行时间为一个时钟周期。尽管这些指令的读取、译码和执行实际上钟周期。尽管这些指令的读取、译码和执行实际上占用了多个时钟周期。占用了多个时钟周期。174.1.3 Pentium系列系

    18、列CPU1Pentium CPU (1)概述)概述 Pentium CPU是是Intel 80 x86系列微处理器的第五代产品,系列微处理器的第五代产品,其性能比它的前一代产品又有较大的提高,但它仍保持与其性能比它的前一代产品又有较大的提高,但它仍保持与Intel 8086、80286、80386、80486兼容。兼容。Pentium CPU能实现能实现PC机系统的能耗与安全管理。机系统的能耗与安全管理。Pentium CPU采用超标量体系结构、集成浮点部件、采用超标量体系结构、集成浮点部件、64位数据总线、指令动态转移预测、回写数据高速缓存、错位数据总线、指令动态转移预测、回写数据高速缓存、

    19、错误检测与报告等技术。误检测与报告等技术。18(2)Pentium CPU的功能结构如下图所示:的功能结构如下图所示:19 超标量体系结构超标量体系结构 Pentium CPU具有三条指令执行流水线:两条独立的整数指令具有三条指令执行流水线:两条独立的整数指令流水线(流水线(U流水线和流水线和V流水线)与一条浮点指令流水线。流水线)与一条浮点指令流水线。两条整数指令流水线都拥有独立的算术逻辑运算部件、地址生两条整数指令流水线都拥有独立的算术逻辑运算部件、地址生成逻辑和高速数据缓存接口成逻辑和高速数据缓存接口。每一个时钟周期可以同时执行两条简单指令,因而相对同一频每一个时钟周期可以同时执行两条简

    20、单指令,因而相对同一频率下工作的率下工作的80486来说,其性能几乎提高了来说,其性能几乎提高了1倍。倍。将一次同时执行多条指令的处理器结构称为将一次同时执行多条指令的处理器结构称为超标量体系结构超标量体系结构。浮点指令流水线与浮点指令部件浮点指令流水线与浮点指令部件 浮点指令流水线有浮点指令流水线有8级,实际上它是级,实际上它是U流水线的扩充。流水线的扩充。U流水线流水线的前的前4级用来准备一条浮点指令,浮点部件中的后级用来准备一条浮点指令,浮点部件中的后4级执行特定级执行特定的浮点运算操作并报告执行错误。的浮点运算操作并报告执行错误。在浮点部件中,对常用的浮点指令(加、减、除)采用专用硬在

    21、浮点部件中,对常用的浮点指令(加、减、除)采用专用硬件电路执行,而不像其他指令由微码来执行。因此,大多数浮件电路执行,而不像其他指令由微码来执行。因此,大多数浮点指令都可以在一个时钟周期内完成运算操作。点指令都可以在一个时钟周期内完成运算操作。20 指令转移预测部件指令转移预测部件 Pentium 用一个的用一个的1KB转移目标缓冲器转移目标缓冲器BTB预测指令转移。预测指令转移。BTB记录正在执行的程序最近所发生的几次转移情况。记录正在执行的程序最近所发生的几次转移情况。CPU将进入流水线的新指令与将进入流水线的新指令与BTB有关转移信息进行比较,以确有关转移信息进行比较,以确定是否将再次执

    22、行转移。由于程序局部性原则,指令的执行定是否将再次执行转移。由于程序局部性原则,指令的执行历史会经常重复,因而使转移预测部件在大多数情况下的预历史会经常重复,因而使转移预测部件在大多数情况下的预测是正确的,这将提高微处理器的性能。测是正确的,这将提高微处理器的性能。数据和指令高速缓存数据和指令高速缓存 Pentium芯片内部有两个芯片内部有两个Cache:8KB的数据的数据Cache,8KB的的指令指令Cache,它们可以并行操作。,它们可以并行操作。分离的高速缓存结构可减少分离的高速缓存结构可减少指令预取和数据操作之间可指令预取和数据操作之间可能发生的冲突能发生的冲突,提高微处理器的信息存取

    23、速度。,提高微处理器的信息存取速度。21 2 2Pentium Pro CPUPentium Pro CPU Pentium Pro CPUPentium Pro CPU即即P6P6,是,是IntelIntel公司继公司继PentiumPentium之后于之后于19951995年推出的又一种新型高性能奔腾微处理器。年推出的又一种新型高性能奔腾微处理器。Pentium Pro CPU主要特点如下主要特点如下:(1)三路超标量微结构,)三路超标量微结构,14级超流水线,使一个时钟周期级超流水线,使一个时钟周期内可同时执行三条简单指令。内可同时执行三条简单指令。(2)5个并行处理单元:两个整数运算部

    24、件,一个装入部件个并行处理单元:两个整数运算部件,一个装入部件,一个存储部件,一个浮点运算部件(,一个存储部件,一个浮点运算部件(FPU)。)。(3)8 KB两路组相关指令高速缓存,两路组相关指令高速缓存,8 KB四路组相联数据四路组相联数据高速缓存。高速缓存。(4)256 KB 二级高速缓存采用全速总线与微处理器相联。二级高速缓存采用全速总线与微处理器相联。(5)乱序执行,动态分支预测和推测执行。)乱序执行,动态分支预测和推测执行。223 3Pentium CPUPentium CPU (1)(1)概述概述 Pentium Pentium(PP)CPUCPU采用了与采用了与Pentium P

    25、ro CPUPentium Pro CPU相同的相同的核心结构。增加了对多媒体的支持和对核心结构。增加了对多媒体的支持和对1616位代码优化,它能位代码优化,它能够同时处理两条够同时处理两条MMXMMX多媒体指令。多媒体指令。PentiumPentium的的特点:特点:多重多重跳转分支预测跳转分支预测 数据流分析数据流分析。分析哪一条指令依赖于其他指令的结果。分析哪一条指令依赖于其他指令的结果或数据,根据分析结果来重排指令。即,乱序或数据,根据分析结果来重排指令。即,乱序执行指令。执行指令。指令指令推测推测执行执行:按分支预测按分支预测方向,乱序方向,乱序执行预测的执行预测的指指令令序列,并序

    26、列,并把结果把结果暂存起来。暂存起来。如果预测如果预测正确,将结果写正确,将结果写到寄到寄存器或存储器存器或存储器中;中;如果预测错误,则废弃已经执行的指令序如果预测错误,则废弃已经执行的指令序列,从另一个分支处重新开始执行。列,从另一个分支处重新开始执行。采用采用Intel MMXIntel MMX技术。它包括技术。它包括5757条增强的条增强的MMXMMX指令,可处指令,可处理视频、声频及图像数据。理视频、声频及图像数据。23(2)Pentium CPU的内部结构的内部结构24 P有有3条指令流水线,每条指令流水线,每条指令流水线共有条指令流水线共有14级如级如右图所示:右图所示:指令流水

    27、线的指令流水线的1 11111级级都是推测执行。如推测正都是推测执行。如推测正确,确,1212 1313级将暂存结级将暂存结果写入寄存器或存储器;果写入寄存器或存储器;否则,废弃否则,废弃1 1 1111级流级流水线上已经执行的指令。水线上已经执行的指令。从另一个分支处重新开始从另一个分支处重新开始执行。执行。25 P CPUP CPU在体系结构上较以前的处理器有很大变化,在体系结构上较以前的处理器有很大变化,一一个最明显的技术特征就是其核心完全采用个最明显的技术特征就是其核心完全采用RISCRISC微结构,微结构,为为了保持与了保持与80 x8680 x86其他处理器兼容,仍继续采用其他处理

    28、器兼容,仍继续采用CISCCISC指令集,指令集,因此内部增加了因此内部增加了RISCRISC与与CISCCISC之间的转换硬件。之间的转换硬件。P P与与P6P6一样采用一样采用*BE7BE7*BE0BE0作为作为8 8个存储体的选择信个存储体的选择信号对存储器的访问加以控制。它们在非流水线的地址方式号对存储器的访问加以控制。它们在非流水线的地址方式下需要两个时钟周期进行总线操作,在下需要两个时钟周期进行总线操作,在P6P6和早期和早期PP系统中,系统中,系统总线的速度为系统总线的速度为66 MHz66 MHz,主频为,主频为250 MHz250 MHz,以后的,以后的PentiumPent

    29、ium系统总线速度提高到系统总线速度提高到100 MHz100 MHz。26(3 3)操作模式)操作模式 Pentium Pentium具有具有3 3种操作模式:种操作模式:实模式、虚拟实模式、虚拟80868086模式和保护模式和保护模式。模式。8038680386及后继机型都具有这及后继机型都具有这3 3种模式。种模式。在在实模式实模式下,所有下,所有8088/80868088/8086之后增加的新特性都被关闭,这之后增加的新特性都被关闭,这时时PentiumPentium就像一台单纯的就像一台单纯的8088/80868088/8086一样运行。一样运行。在在虚拟虚拟80868086模式模式

    30、下,可以用一种受保护的方式来运行老的下,可以用一种受保护的方式来运行老的8088/80868088/8086程序。程序。在在保护模式保护模式下,有下,有4 4种可用的特权级别,它们由程序状态字中种可用的特权级别,它们由程序状态字中的对应位控制。的对应位控制。-第第0 0级相当于别的计算机中的内核模式,它可以完全控制级相当于别的计算机中的内核模式,它可以完全控制计算机,因而只由操作系统使用。计算机,因而只由操作系统使用。-第第3 3级用于运行用户程序,它阻塞用户程序对某些特殊的级用于运行用户程序,它阻塞用户程序对某些特殊的关键指令和控制寄存器的访问关键指令和控制寄存器的访问 -第第1 1级和第级

    31、和第2 2级很少使用。级很少使用。274.2.1 80 x86 CPU的寄存器的寄存器 180 x86 CPU的寄存器分类的寄存器分类 80 x86 CPU的内部寄存器可分为以下的内部寄存器可分为以下3大类:大类:基本结构寄存器组基本结构寄存器组 :通用寄存器、指令指针寄存器、标志寄存通用寄存器、指令指针寄存器、标志寄存器、段寄存器。器、段寄存器。系统级寄存器组系统级寄存器组 :系统地址寄存器、控制寄存器、测试寄存器、系统地址寄存器、控制寄存器、测试寄存器、调试寄存器。调试寄存器。浮点寄存器组浮点寄存器组 :数据寄存器、标记字寄存器、指令和数据指针寄数据寄存器、标记字寄存器、指令和数据指针寄存

    32、器、控制字寄存器。存器、控制字寄存器。4.2 80 x86 CPU的寄存器和主存储器的寄存器和主存储器282基本结构寄存器组基本结构寄存器组 基本结构寄存器组如右图所示:基本结构寄存器组如右图所示:通用寄存器;通用寄存器;指令指针寄存器;指令指针寄存器;标志寄存器;标志寄存器;段寄存器段寄存器。29(1 1)通用寄存器)通用寄存器 图中除阴影区以外的寄存器是图中除阴影区以外的寄存器是8086/80888086/8088和和8028680286所具有所具有的寄存器,它们都是的寄存器,它们都是1616位寄存器。其中位寄存器。其中4 4个个1616位的寄存器位的寄存器AXAX、BXBX、CXCX、D

    33、XDX可称为数据寄存器。这可称为数据寄存器。这4 4个寄存器都是通用寄存器,个寄存器都是通用寄存器,但它们又可以用于各自的专用目的。但它们又可以用于各自的专用目的。AXAX(AccumulatorAccumulator)作为累加器用)作为累加器用。在乘除等指令中指定用来在乘除等指令中指定用来存放操作数。存放操作数。I/O I/O 指令都使用这一寄存器传送信息。指令都使用这一寄存器传送信息。BXBX(BaseBase)可以作为通用寄存器使用。)可以作为通用寄存器使用。在计算存储器地址时,在计算存储器地址时,它经常用作基址寄存器。它经常用作基址寄存器。CXCX(CountCount)可以作为通用寄

    34、存器使用)可以作为通用寄存器使用。还常用来保存计数值,还常用来保存计数值,如在移位指令、循环(如在移位指令、循环(LOOPLOOP)和串处理指令中用作隐含的计)和串处理指令中用作隐含的计数器。数器。DXDX可以作为通用寄存器使用。可以作为通用寄存器使用。在做双字长运算时把在做双字长运算时把DXDX和和AXAX组组合在一起存放一个双字长数,合在一起存放一个双字长数,DXDX用来存放高位字。对某些用来存放高位字。对某些I/O I/O 操作,操作,DXDX可用来存放可用来存放I/O I/O 的端口地址。的端口地址。30 SPSP、BPBP、DIDI、SI SI 这这4 4个个1616位寄存器可以在运

    35、算过程中存放操作位寄存器可以在运算过程中存放操作数,但只能以字(数,但只能以字(1616位)为单位使用。此外,它们更经常的用位)为单位使用。此外,它们更经常的用途是途是在存储器寻址时,提供偏移地址。因此,可称它们为指针在存储器寻址时,提供偏移地址。因此,可称它们为指针或变址寄存器。或变址寄存器。(2 2)指令指针寄存器和标志寄存器)指令指针寄存器和标志寄存器 IPIP(Instruction PointerInstruction Pointer)为指令指针寄存器,它用来存放代)为指令指针寄存器,它用来存放代码段中的偏移地址。码段中的偏移地址。IPIP作为指令的地址指针,其作用类似于其作为指令的

    36、地址指针,其作用类似于其他计算机中的程序计数器他计算机中的程序计数器PCPC,当现行指令执行完毕时,由,当现行指令执行完毕时,由IPIP提提供下一条指令地址。供下一条指令地址。FLAGSFLAGS为标志寄存器,又称为标志寄存器,又称PSWPSW(Program Status WordProgram Status Word),即程),即程序状态寄存器。序状态寄存器。存放条件码标志、控制标志和系统标志存放条件码标志、控制标志和系统标志。80386 80386及其后继机型的指令指针寄存器及其后继机型的指令指针寄存器EIPEIP和标志寄存器和标志寄存器EFLAGSEFLAGS是是3232位位的,其作用

    37、和相应的的,其作用和相应的1616位寄存器相同。位寄存器相同。31下图说明了下图说明了80 x86 CPU中标志寄存器的内容中标志寄存器的内容:32 条件码标志包括以下条件码标志包括以下6位:位:OFOF(Over Flow FlagOver Flow Flag)溢出标志。)溢出标志。将参加算术运算的数看作带符将参加算术运算的数看作带符号数,如运算结果超出补码表示数的范围号数,如运算结果超出补码表示数的范围N N,即溢出时,则,即溢出时,则OFOF置置1 1;否则否则OFOF置置0 0。SFSF(Sign FlagSign Flag)符号标志。)符号标志。把指令执行结果看作带符号数,如把指令执

    38、行结果看作带符号数,如结果为负,则结果为负,则SFSF置置1 1;结果为正,则;结果为正,则SFSF置置0 0。ZFZF(Zero FlagZero Flag)零标志。)零标志。如指令执行结果各位全为如指令执行结果各位全为0 0时,则时,则ZFZF置置1 1;否则;否则ZFZF置置0 0。CFCF(Carry FlagCarry Flag)进位标志。)进位标志。算术运算时,如最高位(对字操作算术运算时,如最高位(对字操作是第是第1515位,对字节操作是第位,对字节操作是第7 7位)产生进位或借位时,则位)产生进位或借位时,则CFCF置置1 1;否则置否则置0 0。在移位类指令中,。在移位类指令

    39、中,CFCF用来存放移出的代码(用来存放移出的代码(0 0或或1 1)。)。AFAF(Auxiliary Carry FlagAuxiliary Carry Flag)辅助进位标志。)辅助进位标志。算术运算时,如低算术运算时,如低字节中低字节中低4 4位(第位(第3 3位)产生进位或借位时,则位)产生进位或借位时,则AFAF置置1 1;否则;否则AFAF置置0 0。AFAF可用于十进制运算的校正。可用于十进制运算的校正。PFPF(Parity FlagParity Flag)奇偶标志。)奇偶标志。当运算结果中当运算结果中1 1的个数为偶数时置的个数为偶数时置1 1,否则置,否则置0 0。用来传

    40、送信息出错时提供检验条件。用来传送信息出错时提供检验条件。33 控制标志位控制标志位1位位 DFDF(Direction FlagDirection Flag)方向标志,用在串处理指令中)方向标志,用在串处理指令中控制处理信息的方向。控制处理信息的方向。当当DFDF位为位为1 1时,每次操作后使变址时,每次操作后使变址寄存器寄存器SISI和和DIDI减小,这样就使串处理从高地址向低地址方减小,这样就使串处理从高地址向低地址方向处理。当向处理。当DFDF位为位为0 0时,则使时,则使SISI和和DIDI增大,使串处理从低增大,使串处理从低地址向高地址方向处理。地址向高地址方向处理。系统标志位有系

    41、统标志位有1010位:位:TFTF(Trap FlagTrap Flag)陷阱标志)陷阱标志,用于调试时的单步方式操作。,用于调试时的单步方式操作。IFIF(Interrupt FlagInterrupt Flag)中断标志中断标志 。IOPLIOPL(I/O Privilege LevelI/O Privilege Level)I/OI/O特权级标志特权级标志 。NTNT(Nested TaskNested Task)嵌套任务标志嵌套任务标志,用来表示当前的任,用来表示当前的任务是否嵌套在另一任务内。务是否嵌套在另一任务内。34 RFRF(Resume FlagResume Flag)恢复标

    42、志位,恢复标志位,它与调试寄存器的断它与调试寄存器的断点一起使用,以保证不重复处理断点。点一起使用,以保证不重复处理断点。VMVM(Virtual-8086 ModeVirtual-8086 Mode)虚拟虚拟80868086模式位模式位 。ACAC(Alignment Check modeAlignment Check mode)对准检查方式位对准检查方式位 。VIFVIF(Virtual Interrupt FlagVirtual Interrupt Flag)虚拟中断标志。虚拟中断标志。VIPVIP(Virtual Interrupt Pending flagVirtual Interr

    43、upt Pending flag)虚拟中断未虚拟中断未决标志。决标志。IDID(IDentification flagIDentification flag)标识标志,标识标志,程序有设置和程序有设置和清除清除IDID标识的能力,以指示处理机对标识的能力,以指示处理机对CPU IDCPU ID指令的支持。指令的支持。35 在调试程序在调试程序DEBUG中提供了测试标志位的手段,它用中提供了测试标志位的手段,它用符号表示某些标志位的值符号表示某些标志位的值:标志名标志名标志为标志为1标志为标志为0 OF 溢出(是溢出(是/否)否)OVNV DF 方向(增量方向(增量/减量)减量)DNUP IF

    44、中断(允许中断(允许/关闭)关闭)EIDI SF 符号(正符号(正/负)负)NGPL ZF 零(是零(是/否)否)ZRNZ AF 辅助进位(是辅助进位(是/否)否)ACNA PF 奇偶(偶奇偶(偶/奇)奇)PEPO CF 进位(是进位(是/否)否)CYNC36(3)段寄存器)段寄存器 段寄存器用于段寄存器用于存储器寻址时,存储器寻址时,用来用来直接或间接地存放段直接或间接地存放段地址。地址。段寄存器的长度为段寄存器的长度为1616位,在位,在8028680286以前的处理器中,以前的处理器中,只有只有4 4个个寄存器:寄存器:代码段代码段CSCS(Code SegmentCode Segmen

    45、t)数据段数据段DSDS(Data SegmentData Segment)堆栈段堆栈段SSSS(Stack SegmentStack Segment)附加段附加段ESES(Extra SegmentExtra Segment)。)。从从8038680386起,增加了起,增加了FSFS和和GSGS两个段寄存器,它们也属于附两个段寄存器,它们也属于附加的数据段。有关段寄存器的使用将在下一节中说明。加的数据段。有关段寄存器的使用将在下一节中说明。374.2.2 80 x86的主存储器的主存储器 1存储单元的地址和内容存储单元的地址和内容 8位二进制数组成一个字节,位编号如图(位二进制数组成一个字节

    46、,位编号如图(a)。)。8086、80286的字长为的字长为16位,由两个字节组成,位位,由两个字节组成,位编号如图(编号如图(b)。)。80386Pentium机的字长为机的字长为32位,由两个字即位,由两个字即4个个字节组成,在字节组成,在80 x86系列中称其为双字,位编号如系列中称其为双字,位编号如图(图(c)。)。由由8个字节即字长为个字节即字长为64位组成的位组成的4字,位编号如图字,位编号如图(d)。)。80 x8680 x86 按字节编址:按字节编址:每一个字节单元给予一个唯一的编号即存储每一个字节单元给予一个唯一的编号即存储器地址,称为器地址,称为物理地址物理地址。地址从。地

    47、址从0开始编号,顺序地每次加开始编号,顺序地每次加1,因,因此存储器的物理地址空间呈线性增长。此存储器的物理地址空间呈线性增长。在机器里,地址也是用二进制数来表示的,无符号整数,书在机器里,地址也是用二进制数来表示的,无符号整数,书写格式为十六进制数。写格式为十六进制数。8086/8088的的地址总线地址总线20位:位:可访问的字节单元地址范围为可访问的字节单元地址范围为 0 0000HF FFFF H;80286的的地址总线地址总线24位:位:可访问的地址范围为可访问的地址范围为 00 0000HFF FFFF H;80386/80486和和Pentium地址总线地址总线32位:位:地址范围

    48、为地址范围为 0000 0000HFFFF FFFF H;Pentium Pro和和P地址总线地址总线36位:位:地址范围为地址范围为 0 0000 0000HF FFFF FFFF H。163839一个存储单元中存放的信息称为该存储单元的一个存储单元中存放的信息称为该存储单元的内容,内容,右图表示了存储器里存放信息的情况。右图表示了存储器里存放信息的情况。00040004H H号字节单元号字节单元中存放的信息为中存放的信息为7878H H,表表示为:示为:(00040004H H)=78H=78H两个字节单元就构成了一个字单元,两个字节单元就构成了一个字单元,字单元的字单元的地址采用它的低地

    49、址来表示。地址采用它的低地址来表示。右图中右图中00040004H H字字单元单元的内容为的内容为56785678H H,表示为表示为 (00040004H H)=5678H=5678H 双字单元的地址由其最低字节的地址指定双字单元的地址由其最低字节的地址指定,因此,因此00040004H H双字单元的双字单元的内容为:内容为:(00040004H H)=12345678H=12345678H。40 2 2实模式存储器寻址实模式存储器寻址 80 x86 80 x86中除中除8086/80888086/8088只能在实模式下工作外,其他的只能在实模式下工作外,其他的CPUCPU均可在实模式或保护

    50、模式下工作。均可在实模式或保护模式下工作。(1 1)存储器的分段)存储器的分段 实模式下允许的最大寻址空间为实模式下允许的最大寻址空间为1 MB1 MB。8086/80888086/8088的地的地址总线宽度为址总线宽度为2020位位,因而其最大寻址空间正好是,因而其最大寻址空间正好是1MB1MB。在在1MB1MB的存储器里,每个存储单元都有一个唯一的的存储器里,每个存储单元都有一个唯一的2020位地址,称为位地址,称为物理地址。物理地址。而对于其他微处理器在实模式下只能访问前而对于其他微处理器在实模式下只能访问前1 MB1 MB的存储器地址。的存储器地址。实模式在实模式在16位字长的机器里怎

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:指令系统层[页]课件.ppt
    链接地址:https://www.163wenku.com/p-4701715.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库