计算机组成原理第3章---处理器

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

人才是培养出来的本章内容学习目标§3.1处理器的指令集§3.2处理器的基本组成与工作过程§3.3从CISC到RISC第3章---处理器§3.6ARM系列微处理器§3.5Intel80x86系列微处理器§3.4指令流水人才是培养出来的作用:CPU是在特别纯净的硅材料上制造的。一个CPU芯片包含上百万个精巧的晶体管。人们在一块指甲盖大小的硅片上,用化学的方法蚀刻或光刻出晶体管。因此,从这个意义上说,CPU正是由晶体管组合而成的。简单而言,晶体管就是微型电子开关,它们是构建CPU的基石,你可以把一个晶体管当作一个电灯开关,它们有个操作位,分别代表两种状态:ON(开)和OFF(关)。这一开一关就相当于晶体管的连通与断开,而这两种状态正好与二进制中的基础状态“0”和“1”对应!这样,计算机就具备了处理信息的能力。加上石英时钟的控制,晶体管组就像一部复杂的机器那样同步地执行它们的功能。在晶体管之前,计算机依靠速度缓慢、低效率的真空电子管和机械开关来处理信息。后来,科研人员把两个晶体管放置到一个硅晶体中,这样便创作出第一个集成电路,再后来才有了微处理器。实质:CPU作为一台电脑中的核心,它的作用是无法替代的。而CPU本身只是在块硅晶片上所集成的超大规模的集成电路,集成的晶体管数量可达到上亿个,是由非常先进复杂的制造工艺制造出来的,拥有相当高的科技含量。大脑第3章---处理器人才是培养出来的计算机的工作过程用心体会!下面用动画形式演示如下指令的执行过程:1000:10MOVAL,[2000H];A000201000:103ADDAL,02H;04021000:105HLT;F4内部结构图是8086,但实际是8088执行过程。如果是8086,则每次可以读取2个字节第3章---处理器人才是培养出来的第3章处理器人才是培养出来的汇编语言是基于英文的机器指令助记符。例如,某个机器指令原来用0101表示加法运算,现在引入助记符ADD或add来表示0101,方便了人们编写程序。第3章处理器---3.1处理器的指令集3.1.1概述机器指令计算机能直接识别的是由0和1排列而成的指令,即所谓“机器指令”。使用不方便。汇编语言按汇编语言书写的程序叫做汇编语言源程序,汇编语言源程序由汇编程序(Assembler)转换成机器指令,供计算机接受并执行。①汇编语言的提出是计算机技术的一大进步,体现了计算思维的一个重要概念——抽象。②计算机程序设计语言的发展过程就是不断抽象的过程。通过抽象,程序设计语言具有了更好的可编程性、可移植性、可重用性。人才是培养出来的指令系统:机器语言指令设计者:如何用具体的硬件电路芯片设备来实现机器指令系统的功能。指令使用者:使用指令来编制程序,完成预定任务。源程序编译链接汇编语言级别指令寻址方式数据表示三个方面。指令集:机器指令:包括计算机能够直接进行某种基本操作的二进制代码语言。全部机器指令的集合,是表征计算机性能的重要指标。基本概念3.1.1概述第3章处理器---3.1处理器的指令集人才是培养出来的CPU中有专门的译码电路用以识别解释每个操作码。3.1.2指令的操作码与操作数1、指令的格式指令操作码(OperationCode)指令操作数(地址码)(Operand)冯·诺依曼型计算机机器指令的逻辑格式如操作码长度为3则可表示8条指令:长度决定了指令系统完成不同操作的指令数目。表示该指令做什么操作加法…功能加法取数减法传送操作码功能000减法001存数111…特点举例备注指令所要处理的数据。常以数据所在存储单元的地址形式给出。也称“指令地址码”。第3章处理器---3.1处理器的指令集人才是培养出来的零地址指令(例如,停机指令)一地址指令二地址指令源操作数地址结果(目的)操作数地址下一条指令的地址用来指出操作数的地址,可以指定:这些地址可以是:内存地址CPU中的寄存器地址I/O设备地址根据操作数地址的数目可分为:四地址指令三地址指令功能√√√√√√√√√√分类3.1.2指令的操作码与操作数1、指令的格式指令操作码(OperationCode)指令操作数(地址码)(Operand)第3章处理器---3.1处理器的指令集人才是培养出来的指令操作码(OperationCode)指令操作数(地址码)(Operand)3.1.2指令的操作码与操作数1、指令的格式指令中所能表示的操作数数据类型,即能够被计算机硬件直接辨识的操作数数据类型,称为“数据表示”。常见的“数据表示”有:①定点数(含有符号数和无符号数)、②浮点数(含单精度浮点数和双精度浮点数)、③字符、④逻辑数(又称布尔型数据)。第3章处理器---3.1处理器的指令集人才是培养出来的2、堆栈的概念“堆栈(Stack)”是一个重要的数据结构,广泛应用于子程序调用和中断服务等领域。堆栈的存取原则是后进先出(LastInFirstOut,LIFO)。栈底栈顶ABCDEF对堆栈的操作都是针对栈顶单元进行的,有:①“压入(PUSH)”和②“弹出(POP)”两条指令。第3章处理器---3.1处理器的指令集人才是培养出来的为了降低硬件成本,大多数计算机(特别是微型计算机)常用软件来实现堆栈:即在内存中开辟一个堆栈区,并在处理器中设置指示堆栈栈顶单元地址的“堆栈指针寄存器(StackPointer,SP)”来管理这个堆栈。2、堆栈的概念硬件堆栈用专门的硬件设备来实现的堆栈称为级联堆栈或硬件堆栈。例如,CPU内的若干个寄存器可构成堆栈软堆栈可以有较大的深度。可以设置多个堆栈。除了专门的堆栈指令PUSH和POP外,还可以使用任何访问主存的指令来访问堆栈中的数据√√√优点第3章处理器---3.1处理器的指令集人才是培养出来的除了基本数据表示外,大型机中一般会引入较为复杂的高级数据表示,例如:①向量数据表示和②带标志符数据表示等。3.1.2指令的操作码与操作数3、复杂的数据表示只有标量数据表示和标量指令的处理器叫标量处理器,这是最常见、最通用的处理器。带有向量(矢量)数据表示和向量指令的处理器叫向量处理器,例如我国于20世纪80年代研制的银河-1超级计算机就装备有向量处理器。标量处理器向量处理器第3章处理器---3.1处理器的指令集人才是培养出来的1983年11月诞生的银河Ⅰ号计算机,是中国第一台自行研制的亿次巨型电子计算机。它的研制成功,向全世界宣布:中国成了继美、日等国之后,能够独立设计和制造巨型机的国家人才是培养出来的1983年11月诞生的银河Ⅰ号计算机,是中国第一台自行研制的亿次巨型电子计算机。它的研制成功,向全世界宣布:中国成了继美、日等国之后,能够独立设计和制造巨型机的国家人才是培养出来的3.1.3寻址方式指令寻址是为了找到下一条指令数据寻址是为了找到本条指令所需的操作数指令寻址数据寻址寻址方式①本条指令的操作数地址②下一条欲执行指令的指令地址含义“寻址方式”是用以确定分类0、寻址方式(Addressing)1、指令寻址分为顺序寻址和跳跃寻址两种。顺序寻址顺序寻址就是程序计数器PC中的值就是下一条指令的存储地址。每读取一次PC后,PC自动加1,指向下一条指令。跳跃寻址跳跃寻址则是先由当前指令改写PC的内容,然后计算机读取PC,根据PC的值访问主存储器,取下一条指令。第3章处理器---3.1处理器的指令集人才是培养出来的跳跃寻址:由转移指令指出(PC)+1赋值PC顺序寻址1顺序寻址2顺序寻址3跳跃寻址7顺序寻址8LDA1000ADD1001DEC1200JMP7LDA2000SUB2001INCSTA2500LDA1100...123456789指令地址寻址方式指令地址指令0PC0+1顺序寻址改写PC的指令有“跳转指令(Jump)”和“分支指令(Branch)”。常称为“无条件转移指令”常称为“条件转移指令”这两种指令既可直接赋予PC一个新的值,也可在PC现有值的基础上增加或减少一定数量。后者也称“相对寻址”或“PC相对寻址”,其中增加或减少的数量叫做“相对位移量”,它是一个补码表示整数。人才是培养出来的形式地址A操作码寻址特征2、数据寻址描述指令功能决定寻址方式由形式地址找到有效地址的过程。形式地址(A):指令字中的地址有效地(EA):操作数的真实地址精髓AEA指令字长=存储字长机器字长在此约定:立即数寻址直接寻址间接寻址堆栈寻址寄存器寻址寄存器间接寻址基址寻址变址寻址分类第3章处理器---3.1处理器的指令集人才是培养出来的(1)立即数寻址(ImmediateAddressing)且A可正可负(补码表示)OP#A立即寻址特征立即数①格式指令执行阶段不访存A的位数限制了立即数的范围②结果:形式地址A就是操作数√√特点在指令中直接给出操作数的数值。只要取到指令,就可以立即处理指令中的操作数,这种操作数叫做“立即数”。第3章处理器---3.1处理器的指令集人才是培养出来的(2)直接寻址(DirectAddressing)特点EA=A有效地址由形式地址直接给出公式:寻址特征AACCOPA操作数主存执行阶段访问一次存储器A的位数决定了该指令操作数的寻址范围操作数的地址不易修改(必须修改A)变换过程:Adr_DirAddr.swf√√√第3章处理器---3.1处理器的指令集人才是培养出来的(3)间接寻址(IndirectAddressing)EA=(A)有效地址由形式地址间接提供公式:寻址特征AEAA1EA寻址特征A一次间址多次间址操作数操作数OPAEA主存OPAA1主存EA10执行指令阶段2次访存/多次访存可扩大寻址范围便于编制程序Adr_IndirAddr.swf√√√特点第3章处理器---3.1处理器的指令集人才是培养出来的(4)寄存器(直接)寻址(RegisterAddressing)变换过程:EA=Ri有效地址即为寄存器编号公式:寻址特征OPRi操作数………………R0RiRn寄存器执行阶段不访存,只访问寄存器,执行速度快寄存器个数有限,可缩短指令字长特点√√第3章处理器---3.1处理器的指令集人才是培养出来的(5)寄存器间接寻址(RegisterIndirectAddressing)变换过程:EA=(Ri)有效地址在寄存器中公式:寻址特征OPRi地址………………R0RiRn寄存器有效地址在寄存器中,操作数在存储器中,执行阶段访存可适当扩大程序寻址范围操作数主存操作数√√特点第3章处理器---3.1处理器的指令集人才是培养出来的(6)基址寻址(BaseAddressing):①采用专用寄存器作基址寄存器BR内容由操作系统或管理程序确定在程序的执行过程中BR内容不变,形式地址A可变EA=(BR)+ABR为基址寄存器公式:寻址特征ALUOPABR操作数主存可扩大寻址范围便于程序浮动变换过程:程序浮动特点√√√√第3章处理器---3.1处理器的指令集人才是培养出来的变换过程:(6)基址寻址(BaseAddressing):②采用通用寄存器作基址寄存器EA=(Ri)+ABR为基址寄存器公式:寻址特征ALUR0作基址寄存器OPR0A通用寄存器R0Rn-1R1…操作数主存由用户指定哪个通用寄存器作为基址寄存器基址寄存器的内容由操作系统确定在程序的执行过程中R0内容不变,形式地址A可变√√√特点程序浮动第3章处理器---3.1处理器的指令集人才是培养出来的变换过程:EA=(IX)+AIX为变址寄存器(专用)通用寄存器也可以作为变址寄存器特点:寻址特征ALUOPAIX操作数主存可扩大寻址范围便于处理数组问题IX的内容由用户给定在程序的执行过程中IX内容可变,形式地址A不变√√√√Adr_IndexAddr.swf特点(7)变址寻址(IndexedAddressing)第3章处理器---3.1处理器的指令集人才是培养出来的(8)堆栈寻址栈底栈顶ABCDEF采用“堆栈寻址”的前提是处理器支持堆栈数据结构,设置有:“堆栈指针寄存器SP”。“堆栈寻址”无须给出操作数的存储地址,

1 / 154
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功