计算机组成原理 指令系统优秀课件.ppt
《计算机组成原理 指令系统优秀课件.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理 指令系统优秀课件.ppt(83页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机算机组成原理成原理 指指令系令系统第1页,本讲稿共83页 指令、指令系统是计算机中一个最基本的概念。指令是指示计算机执行某些操作的命令,一台计算机的所有指令的集合构成该机的指令系统。指令系统是计算机的主要属性,位于硬件和软件的交界面上。第2页,本讲稿共83页宏指令:由若干条机器指令组成的软件指令,它属于软件;机器指令:介于微指令与宏指令之间,通常简称为指令,每一条指令可完成一个独立的算术运算或逻辑运算操作。本章所讨论的指令,是机器指令第3页,本讲稿共83页本章学习内容v4.1 指令格式v4.2 寻址技术v4.3 堆栈与堆栈操作v4.4 指令类型第4页,本讲稿共83页本章学习要求v理解:指
2、令的基本格式以及不同地址码(3、2、1、0地址)的双操作数指令的区别 v理解:规整型指令和非规整型指令的特点v掌握:扩展操作码的方法 v理解:编址单位和指令中地址码的位数与主存容量、最小寻址单位的关系 v掌握:基本的数据寻址方式和有效地址EA的计算方法v掌握:自底向上的存储器堆栈的概念及堆栈的进、出栈操作 v理解:常用指令的特点第5页,本讲稿共83页完备性:完备性是指用汇编语言编写各种程序时,指令系统直接提供的指令足够使用,而不必用软件来实现。完备性要求指令系统丰富、功能齐全、使用方便。一台计算机中最基本、必不可少的指令是不多的。许多指令可用最基本的指令编程来实现。有效性:有效性是指利用该指令
3、系统所编写的程序能够高效 率地运行。高效率主要表现在程序占据存储空间小、执行速度快。一般来说,一个功能更强、更完善的指令系统,必定有更好的有效性。对指令系统性能的要求第6页,本讲稿共83页规整性:规整性包括指令系统的对称性、匀齐性、指令格式和数据格式的一致性。对称性是指:在指令系统中所有的寄存器和存储器单元都可同等对待,所有的指令都可使用各种寻址方式;匀齐性是指:一种操作性质的指令可以支持各种数据类型,如算术运算指令可支持字节、字、双字整数的运算,十进制数运算和单、双精度浮点数运算等;指令格式和数据格式的一致性是指:指令长度和数据长度有一定的关系,以方便处理和存取。例如指令长度和数据长度通常是
4、字节长度的整数倍。第7页,本讲稿共83页兼容性:系列机各机种之间具有相同的基本结构和共同的基本指令集,因而指令系统是兼容的,即各机种上基本软件可以通用。但由于不同机种推出的时间不同,在结构和性能上有差异,做到所有软件都完全兼容是不可能的,只能做到“向上兼容”,即低档机上运行的软件可以在高档机上运行。第8页,本讲稿共83页低级语言与硬件结构的关系低级语言与高级语言关系 第9页,本讲稿共83页4.1 指令格式 一台计算机指令格式的选择和确定要涉及多方面的因素,如指令长度、地址码结构以及操作码结构等,是一个很复杂的问题,它与计算机系统结构、数据表示方法、指令功能设计等都密切相关。第10页,本讲稿共8
5、3页4.1.1 机器指令的基本格式 一条指令就是机器语言的一个语句,它是一组有意义的二进制代码。操作码字段操作码字段地址码字段地址码字段操作码操作码:指明操作的性质及功能。:指明操作的性质及功能。操作码操作码 地址码地址码:指明:指明操作数操作数的地址。的地址。地址码地址码第11页,本讲稿共83页4.1.1 机器指令的基本格式(续)指令的长度是指一条指令中所包含的二进制代码的位数,它取决于操作码字段的长度、操作数地址的个数及长度。指令长度可以等于机器字长,也可以大于或小于机器字长。在一个指令系统中,若所有指令的长度都是相等的,称为定长指令字结构;若各种指令的长度随指令功能而异,称为变长指令字结
6、构。第12页,本讲稿共83页4.1.2 地址码结构 一条双操作数指令的除操作码之外,还应包含以下信息:第一操作数地址,用A1表示;第二操作数地址,用A2表示;操作结果存放地址,用A3表示;下条将要执行指令的地址,用A4表示。这些信息可以在指令中明显的给出,称为显地址;也可以依照某种事先的约定,用隐含的方式给出,称为隐地址。第13页,本讲稿共83页1.四地址指令 (A1)OP(A2)A3 A4下条将要执行指令的地址 其中:Ai表示地址,(Ai)表示存放于该地址中的内容。OPOPA A1 1A A2 2A A3 3A A4 4第14页,本讲稿共83页2.三地址指令 (A1)OP(A2)A3 (PC
7、)+1PC(隐含)执行一条三地址的双操作数运算指令,至少需要访问?次主存。第一次取指令本身,第二次取被操作数,第三次取操作数,第四次保存运算结果。OPOPA A1 1A A2 2A A3 3第15页,本讲稿共83页3.二地址指令 (A1)OP(A2)A1 (PC)+1PC(隐含)其中:A1为目的操作数地址,A2为源操作数地址。二地址指令执行之后,目的操作数地址中原存的内容已被破坏了。执行一条二地址的双操作数运算指令,至少需要访问?次主存。OPOPA A1 1A A2 2第16页,本讲稿共83页4.一地址指令 (Acc)OP(A1)Acc (PC)+1PC(隐含)执行一条一地址的双操作数运算指令
8、,只需要访问?次主存。第一次取指令本身,第二次取操作数。被操作数和运算结果都放在累加寄存器中,所以读取和存入都不需要访问主存。OPOPA A1 1第17页,本讲稿共83页5.零地址指令 零地址的算逻类指令是用在堆栈计算机中的,堆栈计算机没有一般计算机中必备的通用寄存器,因此堆栈就成为提供操作数和保存运算结果的唯一场所。通常,参加算逻运算的两个操作数隐含地从堆栈顶部弹出,送到运算器中进行运算,运算的结果再隐含地压入堆栈。OPOP第18页,本讲稿共83页不同地址数指令的特点和适用场合 对于同一个问题,用三地址指令编写的程序最短,但指令长度最长,而用二、一、零地址指令来编写程序,程序的长度一个比一个
9、长,但指令的长度一个比一个短。第19页,本讲稿共83页 指令系统中的每一条指令都有一个唯一确定的操作码,指令不同,其操作码的编码也不同。通常,希望用尽可能短的操作码字段来表达全部的指令。指令操作码的编码可以分为规整型和非规整型两类。4.1.3 指令的操作码第20页,本讲稿共83页1.规整型 操作码字段的位数和位置是固定的。假定:指令系统共有m条指令,指令中操作码字段的位数为N位,则有如下关系式:Nlog2 m 规整型编码对于简化硬件设计,减少指令译码的时间是非常有利的。IBM 370机(字长32位)的指令可分为三种不同的长度,不论指令的长度为多少位,其中操作码字段一律都是8位。第21页,本讲稿
10、共83页IBM 370机的指令格式图4-1 IBM 370机的指令格式第22页,本讲稿共83页2.非规整型 操作码字段的位数不固定,且分散地放在指令字的不同位置上。PDP-11机(字长16位)的指令分为单字长、两字长、三字长三种,操作码字段占416位不等,可遍及整个指令长度。显然,操作码字段的位数和位置不固定将增加指令译码和分析的难度,使控制器的设计复杂化。第23页,本讲稿共83页PDP-11机的指令格式图4-2 PDP-11机的指令格式第24页,本讲稿共83页 最常用的非规整型编码方式是扩展操作码法。让操作数地址个数多的指令(如三地址指令)的操作码字段短些,操作数地址个数少的指令(如一或零地
11、址指令)的操作码字段长些。扩展操作码法 第25页,本讲稿共83页 当用一些硬件资源代替指令字中的地址码字段后 当指令的地址字段为寄存器时 可扩大指令的寻址范围 可缩短指令字长 可减少访存次数 三地址 OP R1,R2,R3 二地址 OP R1,R2 一地址 OP R1 指令执行阶段不访存 可缩短指令字长第26页,本讲稿共83页EXP 某指令字长为16位,每个地址码为6位,扩展操作码技术,设有14条二地址指令,100条一地址指令,100条零地址指令:1)画出扩展图 2)计算操作码平均长度3)指令译码逻辑第27页,本讲稿共83页EXP 某计算机的指令系统字长定长为16位,采用扩展操作码,操作数地址
12、需要4位。该指令系统已有三地址指令M条,二地址指令N条,没有零地址指令。问:最多还有多少条一地址指令?第28页,本讲稿共83页EXP 某指令系统的指令字长为12位,每个地址码长为3位,试问,采用何种方案,使得该指令系统有4条三地址,8条二地址,180条单地址指令?若二地址指令仅有7条,单地址指令最多可有多少条?第29页,本讲稿共83页一、操作数类型地址数字字符逻辑数无符号整数定点数、浮点数、十进制数ASCII逻辑运算二、数据在存储器中的存放方式字地址 为 低字节 地址字地址 为 高字节 地址37621540字地址04低字节04512673字地址04低字节4.1.4 指令的操作码第30页,本讲稿
13、共83页存储器中的数据存放(存储字长为 32 位)地址(十进制)0 4 812162024283236双字双字(地址32)双字双字(地址24)半字(地址20)半字(地址22)半字(地址16)半字(地址18)字节(地址8)字节(地址9)字节(地址10)字节(地址11)字(地址 4)字(地址 0)字节(地址14)字节(地址15)字节(地址13)字节(地址12)边界对准地址(十进制)048字节(地址7)字节(地址6)字(地址2)半字(地址10)半字(地址8)半字(地址0)字(地址4)边界未对准 第31页,本讲稿共83页三、操作类型1.数据传送源目的寄存器寄存器寄存器寄存器存储器存储器存储器存储器置“
14、1”,清“0”2.算术逻辑操作加、减、乘、除、增 1、减 1、求补、浮点运算、十进制运算与、或、非、异或、位操作、位测试、位清除、位求反如 8086MOVESTORELOADMOVEPUSHPOP例如MOVEMOVEADD SUB MUL DIV INC DEC CMP NEG AAA AAS AAM AAD AND OR NOT XOR TEST第32页,本讲稿共83页3.移位操作算术移位4.转移(1)无条件转移 JMP(2)条件转移结果为零转 (Z=1)JZ结果溢出转 (O=1)JO结果有进位转(C=1)JC跳过一条指令 SKP循环移位(带进位和不带进位)如300305306307SKP
15、DZ D=0 则跳逻辑移位完成触发器第33页,本讲稿共83页(3)调用和返回CALL SUB1.CALL SUB2.CALL SUB2RETURNRETURN.主程序地址200021002101子程序SUB1240025002501256025612700主存空间分配程序执行流程子程序SUB2第34页,本讲稿共83页IN AX,nOUT DX,ALOUT n,AXOUT DX,AX(4)陷阱(Trap)与陷阱指令意外事故的中断 设置供用户使用的陷阱指令如 8086 INT TYPE 软中断提供给用户使用的陷阱指令,完成系统调用5.输入输出 一般不提供给用户直接使用 在出现事故时,由 CPU 自
16、动产生并执行(隐指令)IN AL,DXIN AX,DX入 端口地址 CPU 的寄存器出 CPU 的寄存器 端口地址如如IN AL,nOUT n,AL第35页,本讲稿共83页4.2 寻址技术 所谓寻址,指的是寻找操作数的地址或下一条将要执行的指令地址。寻址技术包括编址方式和寻址方式。第36页,本讲稿共83页 寻址可以分为指令寻址和数据寻址。寻找下一条将要执行的指令地址称为指令寻址,寻找操作数的地址称为数据寻址。指令寻址比较简单,它又可以细分为顺序寻址和跳跃寻址。数据寻址方式种类较多,其最终目的都是寻找所需要的操作数。4.2.1 指令寻址和数据寻址第37页,本讲稿共83页 顺序寻址可通过程序计数器
17、PC加1,自动形成下一条指令的地址;跳跃寻址则需要通过程序转移类指令实现。跳跃寻址的转移地址形成方式有3种:直接(绝对)、相对和间接寻址,它与下面介绍的数据寻址方式中的直接、相对和间接寻址是相同的,只不过寻找到的不是操作数的有效地址而是转移的有效地址而已。4.2.1 指令寻址和数据寻址第38页,本讲稿共83页LDA 1000ADD 1001DEC 1200JMP 7LDA 2000SUB 2001INCSTA 2500LDA 1100.0123456789PC+1指令地址寻址方式指令地址指令顺序寻址1顺序寻址2顺序寻址3跳跃寻址7顺序寻址8第39页,本讲稿共83页 数据寻址方式是根据指令中给出
18、的地址码字段寻找真实操作数地址的方式。指令中的形式地址A有效地址EA 4.2.2 基本的数据寻址方式寻址方式寻址方式形式地址 指令字中的地址 有效地址 操作数的真实地址 约定 指令字长=存储字长=机器字长形式地址 A操作码寻址特征第40页,本讲稿共83页 寄存器是CPU内部重要的数据存储资源,用来暂存数据和地址,是汇编程序员能直接使用的硬件资源之一。由于寄存器的存取速度比内存快,所以,在用汇编语言编写程序时,要尽可能充分利用寄存器的存储功能。在高级语言(如:C/C+语言)中,也有定义变量为寄存器类型的,这就是提高寄存器利用率的一种可行的方法。4.2.2 基本的数据寻址方式什么是寄存器第41页,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机组成原理 指令系统优秀课件 计算机 组成 原理 指令系统 优秀 课件
限制150内