计算机组成原理与系统结构 第4章 指系统.ppt

上传人:s****8 文档编号:67552443 上传时间:2022-12-25 格式:PPT 页数:102 大小:818KB
返回 下载 相关 举报
计算机组成原理与系统结构 第4章 指系统.ppt_第1页
第1页 / 共102页
计算机组成原理与系统结构 第4章 指系统.ppt_第2页
第2页 / 共102页
点击查看更多>>
资源描述

《计算机组成原理与系统结构 第4章 指系统.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理与系统结构 第4章 指系统.ppt(102页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、1Computer System Organization and Architecture第四章第四章 指令系统指令系统 n4.1 4.1 指令和指令系统概述指令和指令系统概述n4.2 4.2 寻址方式寻址方式 n4.3 4.3 指令格式的设计及优化指令格式的设计及优化 n4.4 4.4 指令类型指令类型 n4.5 4.5 RSICRSIC和和CISCCISC 2Computer System Organization and Architecture4.1 4.1 指令和指令系统概述指令和指令系统概述 n 计计算算机机系系统统包包括括硬硬件件和和软软件件两两大大组组成成部部分分。硬硬件件是

2、是指指构构成成计计算算机机的的中中央央处处理理器器、主主存存储储器器以以及及输输入入/输输出出设设备备等等实实际际装装置置;软软件件则则指指由由软软件件厂厂家家为为方方便便用用户户使使用用计计算算机机而而提提供供的的系系统统软软件件以以及及用用户户用用于于完完成成自自己己的的特特定定事事务务和和信信息息处处理理任任务务而而设设计计的的用用户户程程序序软软件件。而而计计算算机机能能直直接接识识别别和和运运行行的的软软件件程程序序通通常常由由该该计计算算机机的的指指令令代代码码组组成成。因因此此,无无论论是是功功能能多多么么强强大大、结结构构多多么么复复杂杂的的软软件件,凡凡是是能能够够在在机机器

3、器上上直直接接运行的目标程序都是由指令组成的运行的目标程序都是由指令组成的。3Computer System Organization and Architecturen从用户和计算机本身两个角度看,计算机的指从用户和计算机本身两个角度看,计算机的指令都是用户使用计算机与计算机本身运行的最令都是用户使用计算机与计算机本身运行的最小功能单位。小功能单位。n一台计算机所有的指令就构成了该计算机的指一台计算机所有的指令就构成了该计算机的指令系统,也称为指令集。令系统,也称为指令集。n指令系统是表征一台计算机性能的重要因素,指令系统是表征一台计算机性能的重要因素,是设计一台计算机的起点和基本依据,它的

4、格是设计一台计算机的起点和基本依据,它的格式与功能直接与计算机系统的运行性能、硬件式与功能直接与计算机系统的运行性能、硬件结构的复杂程度等密切相关,也直接影响到系结构的复杂程度等密切相关,也直接影响到系统软件。统软件。4Computer System Organization and Architecture返回目录 计算机的程序是由一系列的指令组成的,计算机的程序是由一系列的指令组成的,指指令就是要计算机执行某种操作的命令令就是要计算机执行某种操作的命令。4.1 指令和指令系统概述指令和指令系统概述 计算机的指令计算机的指令微指令微指令机器指令机器指令宏指令宏指令5Computer Syst

5、em Organization and Architecture返回目录 微指令微指令:微程序级的命令,它属于硬件。:微程序级的命令,它属于硬件。宏指令宏指令:由若干条机器指令组成的软件指令,它属于:由若干条机器指令组成的软件指令,它属于软件。软件。机器指令(指令)机器指令(指令):介于微指令与宏指令之间,每条:介于微指令与宏指令之间,每条指令可完成一个独立的算术运算或逻辑运算。指令可完成一个独立的算术运算或逻辑运算。指令系统:指令系统:一台计算机中所有机器指令的集合,它是一台计算机中所有机器指令的集合,它是表征一台计算机性能的重要因素,其格式与功能不仅表征一台计算机性能的重要因素,其格式与功

6、能不仅直接影响到机器的硬件结构,也直接影响到系统软件,直接影响到机器的硬件结构,也直接影响到系统软件,影响到机器的适用范围。影响到机器的适用范围。4.1.1 4.1.1 指令系统的发展指令系统的发展6Computer System Organization and Architecture返回目录计算机指令系统的发展过程计算机指令系统的发展过程:50年代年代:指令系统只有定点加减、逻辑运算、:指令系统只有定点加减、逻辑运算、数据传送、转移等十几至几十条指令。数据传送、转移等十几至几十条指令。4.1.1 4.1.1 指令系统的发展指令系统的发展7Computer System Organizat

7、ion and Architecture返回目录计算机指令系统的发展过程计算机指令系统的发展过程:60年代后期年代后期:增加了乘除运算、浮点运算、十:增加了乘除运算、浮点运算、十进制运算、字符串处理等指令,指令数目多达一进制运算、字符串处理等指令,指令数目多达一二百条,寻址方式也趋多样化。二百条,寻址方式也趋多样化。60年代后期开年代后期开始出现始出现系列计算机系列计算机(指基本指令系统相同、基本指基本指令系统相同、基本体系结构相同的一系列计算机体系结构相同的一系列计算机)。4.1.1 4.1.1 指令系统的发展指令系统的发展8Computer System Organization and

8、Architecture返回目录计算机指令系统的发展过程计算机指令系统的发展过程:70年代末期年代末期:大多数计算机的指令系统多达几大多数计算机的指令系统多达几百条。我们称这些计算机为百条。我们称这些计算机为复杂指令系统计算机复杂指令系统计算机(CISC)。但是如此庞大的指令系统难以保证正确但是如此庞大的指令系统难以保证正确性,不易调试维护,造成硬件资源浪费。为此人性,不易调试维护,造成硬件资源浪费。为此人们又提出了便于们又提出了便于VLSI技术实现的技术实现的精简指令系统精简指令系统计算机(计算机(RISC)。4.1.1 4.1.1 指令系统的发展指令系统的发展9Computer Syste

9、m Organization and Architecturen特点:特点:n(1 1)完备性)完备性:指常用指令是否齐全,编程是否方便。指常用指令是否齐全,编程是否方便。n(2 2)高效性)高效性:要求程序占内存空间少,运行速度快要求程序占内存空间少,运行速度快n(3 3)规规整整性性:指指令令格格式式和和数数据据格格式式应应统统一一、简简单单,方便处理和存取;方便处理和存取;n(4 4)兼容性)兼容性:指同一系列的低档计算机的程序能在指同一系列的低档计算机的程序能在新的高档机上直接运行。新的高档机上直接运行。10Computer System Organization and Archit

10、ecturen核心核心:选定指令的功能和格式。选定指令的功能和格式。n指指令令格格式式:用用二二进进制制代代码码表表示示的的结结构构形形式式。与与计计算算机机的的字字长长、存存储储器器容容量量、指指令令的的功功能能等等有有关。关。n指令一般由两部分组成:操作码和地址码。指令一般由两部分组成:操作码和地址码。11Computer System Organization and Architecturen操操作作码码用用于于指指明明本本条条指指令令的的操操作作功功能能,如如进进行行加加法法运运算算、减减法法运运算算、乘乘法法运运算算、除除法法运运算算、逻辑运算等逻辑运算等-确定的、唯一的。确定的、

11、唯一的。n地址码地址码用来给出本条指令执行所需要的操作数用来给出本条指令执行所需要的操作数的地址以及运算结果的存储地址等信息。的地址以及运算结果的存储地址等信息。12Computer System Organization and Architecturen(1 1)无操作数指令(零地址指令)无操作数指令(零地址指令)n 无无操操作作数数指指令令只只有有操操作作码码部部分分,而而无无地地址址码码部分。部分。n(2 2)单操作数指令(一地址指令)单操作数指令(一地址指令)n 有的指令只用一个操作数,必须在指令中指有的指令只用一个操作数,必须在指令中指明其地址,如一个寄存器内容增明其地址,如一个寄

12、存器内容增1 1或减或减1 1运算的指运算的指令;或需要两个操作数地址,但其中一个是使用令;或需要两个操作数地址,但其中一个是使用约定的某个操作数地址,既已约定则无需再在指约定的某个操作数地址,既已约定则无需再在指令中加以表示,如使用累加寄存器。令中加以表示,如使用累加寄存器。13Computer System Organization and Architecturen(3 3)双操作数指令(二地址指令)双操作数指令(二地址指令)n 指令中有两个地址码字段,分别指出两个操指令中有两个地址码字段,分别指出两个操作数在内存或运算器中的地址。其中目的操作数作数在内存或运算器中的地址。其中目的操作数

13、地址还用于保存指令的执行结果。地址还用于保存指令的执行结果。n(4)三操作数指令(三地址指令)三操作数指令(三地址指令)n 指令中有三个地址码字段,分别指出两个操指令中有三个地址码字段,分别指出两个操作数以及运算结果在内存或运算器中的地址。其作数以及运算结果在内存或运算器中的地址。其中两个地址码分别给出目的操作数和源操作数的中两个地址码分别给出目的操作数和源操作数的地址,第三个地址码用于指出保存本次运算结果地址,第三个地址码用于指出保存本次运算结果的去处。的去处。14Computer System Organization and Architecturen(5 5)多操作数指令(多地址指令)

14、多操作数指令(多地址指令)n 在一些高性能的大、中型计算机、甚至在一些高性能的大、中型计算机、甚至 PC PC 机中,会有一些功能强大的指令,这些指机中,会有一些功能强大的指令,这些指令中有多个地址码,用于完成对一批数据的处令中有多个地址码,用于完成对一批数据的处理过程,如字符串处理指令,向量、矩阵运算理过程,如字符串处理指令,向量、矩阵运算指令等。指令等。15Computer System Organization and Architecturen一条指令必须包含以下信息:一条指令必须包含以下信息:n(1)(1)操作码。用来指出指令执行何操作,算术加操作码。用来指出指令执行何操作,算术加法

15、、算术减法或其它等操作,尽管一台计算机的法、算术减法或其它等操作,尽管一台计算机的指令系统中可有几百条指令,但每条指令的操作指令系统中可有几百条指令,但每条指令的操作码是唯一的。码是唯一的。n(2)(2)操作数的地址。用来指出操作数的来源,根操作数的地址。用来指出操作数的来源,根据此地址就可以得到指令执行时所需要的操作数。据此地址就可以得到指令执行时所需要的操作数。16Computer System Organization and Architecturen(3)(3)操操作作结结果果的的存存储储地地址址。用用来来指指出出操操作作结结果果的去向。的去向。n (4)(4)下一条指令的地址。仅当

16、改变程序的执下一条指令的地址。仅当改变程序的执行顺序时,下一条指令的地址才由指令给出。行顺序时,下一条指令的地址才由指令给出。17Computer System Organization and Architecture4.2 4.2 寻址方式寻址方式 n 寻寻址址技技术术:指指确确定定本本条条指指令令执执行行所所需需要要的的数数据据地地址以及运算结果存储地址的方式。址以及运算结果存储地址的方式。n研研究究的的主主要要内内容容:包包括括编编址址方方式式、寻寻址址方方式式和和定定位方式等。位方式等。n研研究究的的主主要要对对象象:寄寄存存器器、主主存存储储器器、堆堆栈栈和和输输入入输输出出设设备

17、备等等,其其中中以以面面向向主主存存储储器器的的寻寻址址技技术术为主要研究对象。为主要研究对象。n编址方式编址方式:指对各种存储设备进行编码的方法。指对各种存储设备进行编码的方法。18Computer System Organization and Architecturen 目目前前常常用用的的编编址址单单位位有有按按字字编编址址、按按字字节节编址和按位编址三种。编址和按位编址三种。n 字字编编址址:每每个个编编址址单单位位与与设设备备的的访访问问单单位位相相一一致致n每每执执行行一一条条指指令令,程程序序计计数数器器加加1 1,每每读读出出一一个数据,地址计数器加个数据,地址计数器加1 1

18、。n优优点点:实实现现简简单单,地地址址信信息息、存存储储器器容容量量等等没没有任何浪费有任何浪费n缺点缺点:没有对非数值计算提供支持。没有对非数值计算提供支持。19Computer System Organization and Architecturen字字节节编编址址:使使编编址址单单位位与与信信息息的的基基本本单单位位(个个字字节节)相一致,这是它的最大优点。相一致,这是它的最大优点。n缺缺点点:主主存存储储器器的的频频带带太太窄窄,成成为为整整个个计计算算机机系系统统的的瓶颈。瓶颈。n通常主存储器的访问单位一个字节的若干倍。通常主存储器的访问单位一个字节的若干倍。n在在字字节节编编址

19、址的的机机器器中中,如如果果指指令令的的长长度度是是3232位位,则则每执行完一条指令,程序计数器要加每执行完一条指令,程序计数器要加4 4。n满足非数值计算的需要满足非数值计算的需要20Computer System Organization and Architecturen位位编编址址方方式式中中,优优缺缺点点与与字字节节编编址址方方式式相相同同,但是地址信息的浪费更大。但是地址信息的浪费更大。n 编址单位的不同使得指令中地址码的长度也编址单位的不同使得指令中地址码的长度也不同。主存容量相同,编址单位越大,地址码不同。主存容量相同,编址单位越大,地址码的长度越短。的长度越短。n如主存容量

20、为如主存容量为1 1MBMB,机器字长机器字长3232位,若按字节位,若按字节编址,则地址码的长度为编址,则地址码的长度为2020位,如果按照字编位,如果按照字编址,则地址码的长度为址,则地址码的长度为1818位。位。21Computer System Organization and Architecture4.2.1 4.2.1 常用的寻址方式常用的寻址方式 n寻寻址址方方式式指指的的是是根根据据指指令令的的地地址址码码字字段段寻寻找找操操作数地址的方式。作数地址的方式。n 目前,计算机使用的寻址方式非常多,下目前,计算机使用的寻址方式非常多,下面介绍基本的八种寻址方式。面介绍基本的八种寻

21、址方式。22Computer System Organization and Architecturen立即数寻址立即数寻址n指令需要的操作数由指令的地址码部分直接给指令需要的操作数由指令的地址码部分直接给出来,这种寻址方式称为立即数寻址。出来,这种寻址方式称为立即数寻址。n优点是提高了指令的执行速度。优点是提高了指令的执行速度。n缺点是操作数作为指令的一部分不能被修改。缺点是操作数作为指令的一部分不能被修改。灵活性最差。灵活性最差。23Computer System Organization and Architecturen如图如图4.14.1所示。所示。24Computer System

22、 Organization and Architecturen直接寻址直接寻址n操作数的地址直接给出不必经过转换,所以称为直操作数的地址直接给出不必经过转换,所以称为直接寻址方式。接寻址方式。25Computer System Organization and Architecturen寄存器直接寻址寄存器直接寻址n指指令令的的地地址址码码部部分分给给出出某某一一通通用用寄寄存存器器的的编编号号,而而且且所所需需的的操操作作数数就就在在这这一一寄寄存存器器中中,则则称称为为寄寄存存器器寻址寻址n优点:优点:n(1 1)从寄存器存取数据比从主存取要快得多;)从寄存器存取数据比从主存取要快得多;n

23、(2 2)由由于于寄寄存存器器的的数数量量较较少少,其其地地址址码码字字段段比比主主存存单单元元地地址址字字段段短短得得多多,可可有有效效缩缩短短指指令令的的长长度度、节节省指令的存储空间。省指令的存储空间。n(3 3)支支持持向向量量、矩矩阵阵运运算算。当当通通用用寄寄存存器器数数量量较较多多时时,可可以以把把一一个个向向量量或或向向量量的的一一部部分分放放在在通通用用寄寄存存器中,从而提高运算速度。器中,从而提高运算速度。26Computer System Organization and Architecturen间接寻址间接寻址n地址码给出的不是操作数的地址,而是存放操作地址码给出的不

24、是操作数的地址,而是存放操作数地址的地址。数地址的地址。n分为两种:寄存器间接寻址和存储器间接寻址。分为两种:寄存器间接寻址和存储器间接寻址。27Computer System Organization and Architecture28Computer System Organization and Architecturen优点:优点:n(1 1)寻址范围大)寻址范围大n可以用指令中的短地址码访问大的主存空间。可以用指令中的短地址码访问大的主存空间。n(2 2)不需要修改指令)不需要修改指令n 当当操操作作数数的的地地址址要要改改变变时时,可可以以不不必必修修改改指指令令,只只修修改改存

25、存放放操操作作数数有有效效地地址址的的主主存存单单元元内容内容n缺点缺点:指令执行速度慢,在指令取出后至少两指令执行速度慢,在指令取出后至少两次访问主存或寄存器才能得到操作数。次访问主存或寄存器才能得到操作数。29Computer System Organization and Architecturen基址寻址基址寻址n 在在计计算算机机中中设设置置一一个个专专用用的的基基址址寄寄存存器器,或或由由指指令令指指定定一一个个通通用用寄寄存存器器为为基基址址寄寄存存器器,操操作作数数的的地地址址由由基基址址寄寄存存器器的的内内容容和和指指令令的的地地址址码码A A相相加加得得到到。基基址址寄寄存

26、存器器的的内内容容称称为为基基址址值值,地地址址码码A A通通常常被被称称为为位位移移量量,位位移移量量可可正正可负。可负。30Computer System Organization and Architecture(1 1)专用基址寄存器寻址过程)专用基址寄存器寻址过程31Computer System Organization and Architecture(2 2)通用寄存器做基址寄存器的寻址过程)通用寄存器做基址寄存器的寻址过程 32Computer System Organization and Architecturen变址寻址变址寻址n 变变址址寻寻址址跟跟基基址址寻寻址址很

27、很相相似似,把把在在指指令令字字中中给给出出的的一一个个数数值值(称称为为变变址址偏偏移移量量)与与指指定定的的一一个个寄寄存存器器(称称为为变变址址寄寄存存器器)的的内内容容相相加加得到操作数的地址。得到操作数的地址。n 操作数在存储器中的地址由指令地址码部操作数在存储器中的地址由指令地址码部分给出的地址分给出的地址A A和指定的变址寄存器和指定的变址寄存器X X的内容通的内容通过加法器相加得到。如图过加法器相加得到。如图4.74.7所示。所示。33Computer System Organization and Architecture34Computer System Organizat

28、ion and Architecture返回目录变址寻址和基址寻址寻址的区别:变址寻址和基址寻址寻址的区别:1.应用场合不同应用场合不同2.变址寻址:面向用户,用于访问数组、向量变址寻址:面向用户,用于访问数组、向量和字符串等成批数据和字符串等成批数据。3.基址寻址:面向系统,主要用于逻辑地址和基址寻址:面向系统,主要用于逻辑地址和物理地址的变换,用以解决程序在内存中的物理地址的变换,用以解决程序在内存中的再定位和扩大寻址空间等问题。再定位和扩大寻址空间等问题。35Computer System Organization and Architecture返回目录变址寻址和基址寻址寻址的区别:变

29、址寻址和基址寻址寻址的区别:2.使用方法不同:使用方法不同:变址寻址:变址寄存器提供修改量(可变的),变址寻址:变址寄存器提供修改量(可变的),而指令中提供基准值(固定的)。而指令中提供基准值(固定的)。基址寻址:基址寄存器提供基准值(固定的),基址寻址:基址寄存器提供基准值(固定的),而指令中提供位移量(可变的)。而指令中提供位移量(可变的)。36Computer System Organization and Architecturen相对寻址相对寻址n把在指令字中给出的一个数值(称为相对寻址把在指令字中给出的一个数值(称为相对寻址偏移量)与程序计数器偏移量)与程序计数器PC PC 的内容

30、相加之和作的内容相加之和作为操作数的地址。为操作数的地址。n相对寻址与变址寻址的区别相对寻址与变址寻址的区别:计算实际地址所计算实际地址所用的寄存器已确定为用的寄存器已确定为 PCPC,不需要再在指令中不需要再在指令中指定;而变址寻址中的可用的变址寄存器往往指定;而变址寻址中的可用的变址寄存器往往有多个,通常要在指令中指定本次要使用哪一有多个,通常要在指令中指定本次要使用哪一个。个。37Computer System Organization and Architecturen 相对寻址中,相对寻址中,PCPC中的内容加上指令的地址中的内容加上指令的地址码部分给出的位移量的和作为操作数的地址,

31、码部分给出的位移量的和作为操作数的地址,如用图如用图 4.8 4.8 所示。所示。38Computer System Organization and Architecture返回目录10.堆栈寻址堆栈寻址(1)堆栈的特点堆栈的特点堆栈堆栈硬堆栈硬堆栈软堆栈软堆栈多个寄存器多个寄存器指定的存储空间指定的存储空间先进后出先进后出(一个入出口)(一个入出口)栈顶地址栈顶地址 由由 SP 指出指出 11FFFH+12000 H进栈进栈 (SP)1 SP出栈出栈 (SP)+1 SP栈顶栈顶栈底栈底2000 HSP2000 H1FFF HSP1FFFH栈顶栈顶栈底栈底进栈进栈出栈出栈 1FFF H栈顶栈

32、顶 2000 H栈顶栈顶39Computer System Organization and Architecture返回目录(2)堆栈寻址举例堆栈寻址举例15200HACCSPX栈顶栈顶200H栈底栈底主存主存151FFHACCSP15栈顶栈顶200H栈底栈底主存主存X1FFHPUSH A 前前PUSH A 后后POP A 前前POP A 后后Y1FFHACCSPX栈顶栈顶200H栈底栈底主存主存151FFH15200HACCSP栈顶栈顶200H栈底栈底主存主存X1540Computer System Organization and Architecture返回目录 特点:特点:堆栈能根据

33、程序员要求,设置任意长度;堆栈能根据程序员要求,设置任意长度;可按程序员要求,在主存中建立多个堆栈;可按程序员要求,在主存中建立多个堆栈;可用访存指令来对堆栈中的数据进行寻址可用访存指令来对堆栈中的数据进行寻址操作。操作。用途:用途:保留断点及现场;保留断点及现场;利用堆栈传递参数。利用堆栈传递参数。10.堆栈寻址堆栈寻址41Computer System Organization and Architecture返回目录20022002年程序员考题年程序员考题计计算算机机指指令令系系统统中中采采用用不不同同寻寻址址方方式式的的主主要要目目的的是是 (56)。在下列寻址方式中取得操作数速度最慢

34、的是在下列寻址方式中取得操作数速度最慢的是 (57)。(56)A、可直接访问内存或外存可直接访问内存或外存B、提供扩展操作码并降低指令译码难度提供扩展操作码并降低指令译码难度C、简化汇编指令的设计简化汇编指令的设计D、缩短指令长度,扩大寻址空间,提高编程灵活性缩短指令长度,扩大寻址空间,提高编程灵活性(57)A、相对寻址相对寻址 B、基址寻址基址寻址C、寄存器间接寻址寄存器间接寻址 D、存储器间接寻址存储器间接寻址DD42Computer System Organization and Architecture返回目录寻址方式小结寻址方式小结 如果使用高级语言编程,不需要考虑寻如果使用高级语言

35、编程,不需要考虑寻址方式,由编译程序来完成。不同的机器的寻址方式,由编译程序来完成。不同的机器的寻址方式是不同的或者同一种寻址方式不同的机址方式是不同的或者同一种寻址方式不同的机器有不同的表达方式。器有不同的表达方式。例:例:ADD A,B 有的机器把结果放到有的机器把结果放到A;有的则把结果放到有的则把结果放到B43Computer System Organization and Architecture返回目录寻址方式小结寻址方式小结 寄存器直接、寄存器间接寻址方式是寄存器直接、寄存器间接寻址方式是最基本最常用最基本最常用的寻址方式。的寻址方式。44Computer System Orga

36、nization and Architecture返回目录序号序号寻址方式名称寻址方式名称 有效地址有效地址E E算法算法 说明说明(1 1)立即立即 操作数在指令中操作数在指令中 (2 2)直接直接 EA=EA=DispDispDispDisp为偏移量为偏移量 (3 3)寄存器寄存器 EA=EA=R Ri i操作数在某寄存器中,指操作数在某寄存器中,指令给出寄存器号令给出寄存器号(4 4)寄存器间接寄存器间接EA=(EA=(R Ri i )操作数在内存中操作数在内存中(5 5)基址偏移量基址偏移量 EA=(B)+EA=(B)+DispDisp(6 6)基址变址偏基址变址偏移移 EA=(B)+

37、(I)+EA=(B)+(I)+DispDisp(7 7)相对相对 指令地址指令地址=(=(PC)+PC)+DispDispPCPC为程序计数器或当前指为程序计数器或当前指令指针寄存器令指针寄存器 寻址方式小结45Computer System Organization and Architecture返回目录寻址方式举例寻址方式举例 -IBM 360IBM 360 IBM 360字长字长32位,按字节寻址,支持字节、半位,按字节寻址,支持字节、半字、字、双字、压缩十进制数、字符串等数据类型,字、字、双字、压缩十进制数、字符串等数据类型,使用使用16个通用寄存器和个通用寄存器和4个个64位的浮点

38、寄存器,使用位的浮点寄存器,使用2字节、字节、4字节和字节和6字节字节3种长度的指令。种长度的指令。按寻址方式分为五种指令。按寻址方式分为五种指令。46Computer System Organization and Architecture返回目录OPR1R2 RR格式格式8 4 4OPR1XBD RX格式格式8 4 4 4 12OPR1R3BD RS格式格式8 4 4 4 12OPBDI SI格式格式8 8 4 12OPB1D1LB2D2 SS格式格式8 8 4 12 4 12二地址二地址 R RR1(R1)OP(R2)R1(R1)OP(M(X2)+(B2)+D2)二地址二地址 R M三地

39、址三地址 R MR1(R3)OP(M(B2)+D2)二地址二地址 M MM(B1)+D1(M(B1)+D1)OP(M(B2)+D2)M(B1)+D1Imm立即数立即数 M47Computer System Organization and Architecturen2 2PDP/11PDP/11系列机系列机n PDP/11PDP/11系列机是系列机是1616位的小型机,指令按地址位的小型机,指令按地址码个数分有:单操作数指令和双操作数指令,但码个数分有:单操作数指令和双操作数指令,但是地址码字段都为是地址码字段都为6 6位。双操作数指令格式如下:位。双操作数指令格式如下:n 操作码操作码4 4

40、为,两个地址码为,两个地址码A A1 1、A A2 2均为均为6 6位。位。A A1 1为源操作数地址,为源操作数地址,A A2 2为目的地址。每个地址码的为目的地址。每个地址码的高高3 3位对应位对应8 8种不同的寻址方式,低种不同的寻址方式,低3 3位对应寄存位对应寄存器编号,形式地址存放于此寄存器中。此外有器编号,形式地址存放于此寄存器中。此外有4 4种程序计数器寻址方式,是隐含的寻址方式,以种程序计数器寻址方式,是隐含的寻址方式,以访问程序计数器为标志。访问程序计数器为标志。48Computer System Organization and Architecture返回目录 n例例1

41、 1:一种两地址:一种两地址RSRS型指令的结构如下所示,其中型指令的结构如下所示,其中I I为间接寻址为间接寻址标志标志位,位,X X为寻址模式字段,为寻址模式字段,D D位偏移量字段。通过位偏移量字段。通过I,X,DI,X,D的组的组合,可构成下表所式的寻址方式。请写出六种寻址方式的名称。合,可构成下表所式的寻址方式。请写出六种寻址方式的名称。n6 6位位 4 4位位 1 1位位 2 2位位 1616位位n 寻址方式表寻址方式表OP-通用寄存器 I X 偏移量D寻址方式寻址方式I I X X有效地址有效地址E E算法算法 说说 明明 (1 1)(2)(2)(3)(3)(4)(4)(5)(5

42、)(6 (6)0 00 00 01 11 10 0 0 00 0E=DE=D()()()()()()()()()()为变址寄存器为变址寄存器为基址寄存器为基址寄存器49Computer System Organization and Architecture返回目录 n解:,直接寻址解:,直接寻址n,相对寻址,相对寻址n,变址寻址,变址寻址n,寄存器间接寻址,寄存器间接寻址n,间接寻址,间接寻址n,基址寻址,基址寻址50Computer System Organization and Architecture返回目录例例2:某机主存容量为某机主存容量为64K*16位,采用单字长、单地址指位,采

43、用单字长、单地址指令,共有令,共有60条。试采用直接、间接、变址、相对这条。试采用直接、间接、变址、相对这4种寻址方式设计指令格式,并说明每一种寻址方式的种寻址方式设计指令格式,并说明每一种寻址方式的寻址范围及有效地址的计算方法。寻址范围及有效地址的计算方法。形式地址形式地址A A操作码操作码OPOP寻址方式特征位寻址方式特征位偏移量偏移量一种一种单地址指令单地址指令的结构如下所示:的结构如下所示:51Computer System Organization and Architecture返回目录寻址模式定义、有效地址、寻址范围如下:寻址模式定义、有效地址、寻址范围如下:X=00 直接寻址直

44、接寻址 EA=D(256字字)X=01 间接寻址间接寻址 EA=(D)(64K)X=10 变址寻址变址寻址 EA=(R)+D(64K)X=11 相对寻址相对寻址 EA=(PC)+D(PC附近附近256字字)分析:分析:60条指令操作条指令操作 码字段(码字段(OP)至少需至少需6位;寻址方位;寻址方式有式有4种,所以寻址模式(种,所以寻址模式(X)为为2位;形式地址(位;形式地址(D)8位。位。OPDX0789101552Computer System Organization and Architecture返回目录例例3:某某16位机器所使用的指令格式和寻址方式如下所示,该机位机器所使用的

45、指令格式和寻址方式如下所示,该机有两个有两个20位基址寄存器,四个位基址寄存器,四个16位变址寄存器,十六个位变址寄存器,十六个16位通位通用寄存器。指令汇编格式中的用寄存器。指令汇编格式中的S(源),源),D(目标)都是通用目标)都是通用寄存器,寄存器,M是主存中的一个单元。三种指令的操作码分别是是主存中的一个单元。三种指令的操作码分别是MOV(OP)()(A)H,STA(OP)()(1B)H,LDA(OP)()(3C)H。MOV是传送指令,是传送指令,STA为写数指令,为写数指令,LDA为读数指令。为读数指令。OP目标目标源源MOV S,D15 10 9 8 7 4 3 0 20位地址位地

46、址 目标目标 OP LDA M,D 15 10 9 8 7 4 3 0 OP基址基址源源 变址变址位移量位移量 15 10 9 8 7 4 3 0 STA S,M53Computer System Organization and Architecture返回目录要求:要求:分析三种指令的指令格式与寻址方式特点。分析三种指令的指令格式与寻址方式特点。CPU完成哪一种操作所花时间最短?哪一完成哪一种操作所花时间最短?哪一种操作所花时间最长?第二种指令的执行时间有时种操作所花时间最长?第二种指令的执行时间有时会等于第三种指令的执行时间吗?会等于第三种指令的执行时间吗?下列情况下每个十六进制指令字分

47、别代表下列情况下每个十六进制指令字分别代表什么操作?什么操作?(F0F1)H(3CD2)H (2856)H (6FD6)H (1C2)H54Computer System Organization and Architecture返回目录解解:第一种指令是第一种指令是单字长二地址指令单字长二地址指令,RR型;型;第二种指令是第二种指令是双字长二地址指令双字长二地址指令,RS型,其中型,其中S采用基采用基址寻址或变址寻址,址寻址或变址寻址,R由源寄存器决定;由源寄存器决定;第三种也是第三种也是双字长二地址指令双字长二地址指令,RS型,其中型,其中R由目标由目标寄存器决定,寄存器决定,S由由20位

48、地址(直接寻址)决定。位地址(直接寻址)决定。OP目标目标源源MOV S,D15 10 9 8 7 4 3 0 20位地址位地址 目标目标 OP LDA M,D 15 10 9 8 7 4 3 0 OP基址基址源源 变址变址位移量位移量 15 10 9 8 7 4 3 0 STA S,M55Computer System Organization and Architecture返回目录解解:处理机完成第一种指令所花时间最短,因为是处理机完成第一种指令所花时间最短,因为是RR型指令,不需要访问存储器。第二种指令所花时间最长,型指令,不需要访问存储器。第二种指令所花时间最长,因为是因为是RS型指

49、令,需要访问存储器,同时要进行寻址型指令,需要访问存储器,同时要进行寻址方式的变换运算(基址或变址),这也需要时间。第二方式的变换运算(基址或变址),这也需要时间。第二种指令的执行时间不会等于第三种指令,因为第三种指种指令的执行时间不会等于第三种指令,因为第三种指令虽然也访问存储器,但节省了求有效地址运算的时间令虽然也访问存储器,但节省了求有效地址运算的时间开销。开销。56Computer System Organization and Architecture返回目录(3)根据已知条件:根据已知条件:MOV(OP)001010,STA(OP)011011,LDA(OP)111100,(F0F

50、1)H (3CD2)H=111100,00,1111,0001(3CD2)H 该指令代表该指令代表LDA指令,编码正确,其含义是把主存指令,编码正确,其含义是把主存 (3CD2)H 地址单位元的内容取至地址单位元的内容取至15寄存器。寄存器。目标寄存器编号目标寄存器编号 LDA的操作码的操作码 20位地址位地址 目标目标 OP LDA M,D 15 10 9 8 7 4 3 0 解解:57Computer System Organization and Architecture返回目录 (2856)H=001010,00,0101,0110 代表代表MOV指令,编码正确,含义是把指令,编码正确

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁