首页 计算机组成指令系统

计算机组成指令系统

举报
开通vip

计算机组成指令系统计算机组成指令系统本章主要内容7.1机器指令7.2操作数类型和操作类型7.3寻址方式7.4指令格式举例7.5RISC技术7.1机器指令一、指令的一般格式操作码字段地址码字段1.操作码反映机器做什么操作(1)长度固定(2)长度可变用于指令字长较长的情况,RISC如IBM370操作码8位操作码分散在指令字的不同字段中(3)扩展操作码技术操作码的位数随地址数的减少而增加OPA1A2A3000000011110…A1A1A1…A2A2A2…A3A3A3…A2A2A2…A3A3A3…111111111111…00000001...

计算机组成指令系统
计算机组成指令系统本章主要 内容 财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容 7.1机器指令7.2操作数类型和操作类型7.3寻址方式7.4指令格式举例7.5RISC技术7.1机器指令一、指令的一般格式操作码字段地址码字段1.操作码反映机器做什么操作(1)长度固定(2)长度可变用于指令字长较长的情况,RISC如IBM370操作码8位操作码分散在指令字的不同字段中(3)扩展操作码技术操作码的位数随地址数的减少而增加OPA1A2A3000000011110…A1A1A1…A2A2A2…A3A3A3…A2A2A2…A3A3A3…111111111111…000000011110…111111111111…111111111111…111111111111…000000011111…111111111111…111111111111…A3A3A3…000000011110…4位操作码8位操作码12位操作码16位操作码最多15条三地址指令最多15条二地址指令最多15条一地址指令16条零地址指令7.1(3)扩展操作码技术操作码的位数随地址数的减少而增加OPA1A2A3000000011110…A1A1A1…A2A2A2…A3A3A3…A2A2A2…A3A3A3…111111111111…000000011110…111111111111…111111111111…111111111111…000000011111…111111111111…111111111111…A3A3A3…000000011110…4位操作码8位操作码12位操作码16位操作码三地址指令操作码每减少一种可多构成24种二地址指令二地址指令操作码每减少一种可多构成24种一地址指令7.17.1例7.1假设指令字长为16位,操作数的地址码为6位,指令有零地址、一地址、二地址三种格式。(1)设操作码固定,若零地址指令有P种,一地址指令有Q种,则二地址指令最多有几种?(2)采用扩展操作码技术,若二地址指令有X种,零地址指令有Y种,则一地址指令最多有几种?2.地址码(1)四地址(2)三地址OPA1A2A3A486666A1第一操作数地址A2第二操作数地址A3结果的地址A4下一条指令地址若PC代替A4(A1)OP(A2)A38888OPA1A2A3(A1)OP(A2)A34次访存4次访存寻址范围26=64寻址范围28=256若A3用A1或A2代替7.1设指令字长为32位操作码固定为8位(3)二地址OPA1A281212(A1)OP(A2)A1(A1)OP(A2)A2或4次访存若ACC代替A1(或A2)若结果存于ACC(4)一地址(5)零地址OPA1824无地址码(ACC)OP(A1)ACC2次访存寻址范围212=4K寻址范围224=16M3次访存7.1小结当用一些硬件资源代替指令字中的地址码字段后当指令的地址字段为寄存器时可扩大指令的寻址范围可缩短指令字长可减少访存次数三地址OPR1,R2,R3二地址OPR1,R2一地址OPR1指令执行阶段不访存可缩短指令字长7.1二、指令字长指令字长决定于操作码的长度指令字长=存储字长2.指令字长可变操作数地址的长度操作数地址的个数1.指令字长固定按字节的倍数变化7.17.2操作数类型和操作种类一、操作数类型地址数字字符逻辑数无符号整数定点数、浮点数、十进制数ASCII逻辑运算二、数据在存储器中的存放方式字地址为低字节地址字地址为高字节地址37621540字地址04低字节04512673字地址04低字节存储器中的数据存放(存储字长为32位)地址(十进制)04812162024283236双字双字(地址32)双字双字(地址24)半字(地址20)半字(地址22)半字(地址16)半字(地址18)字节(地址8)字节(地址9)字节(地址10)字节(地址11)字(地址4)字(地址0)字节(地址14)字节(地址15)字节(地址13)字节(地址12)边界对准地址(十进制)048字节(地址7)字节(地址6)字(地址2)半字(地址10)半字(地址8)半字(地址0)字(地址4)边界未对准▲▲7.2三、操作类型1.数据传送源目的寄存器寄存器寄存器寄存器存储器存储器存储器存储器置“1”,清“0”2.算术逻辑操作加、减、乘、除、增1、减1、求补、浮点运算、十进制运算与、或、非、异或、位操作、位测试、位清除、位求反如8086MOVESTORELOADMOVEPUSHPOP例如MOVEMOVE7.2ADDSUBMULDIVINCDECCMPNEGAAAAASAAMAADANDORNOTXORTEST3.移位操作算术移位4.转移(1)无条件转移JMP(2)条件转移结果为零转(Z=1)JZ结果溢出转(O=1)JO结果有进位转(C=1)JC跳过一条指令SKP循环移位(带进位和不带进位)如300…305306307SKPDZD=0则跳逻辑移位完成触发器7.2(3)调用和返回CALLSUB1......CALLSUB2…...CALLSUB2…RETURNRETURN主程序地址200021002101子程序SUB1240025002501256025612700主存空间分配程序执行 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 子程序SUB27.2...INAX,nOUTDX,ALOUTn,AXOUTDX,AX(4)陷阱(Trap)与陷阱指令意外事故的中断设置供用户使用的陷阱指令如8086INTTYPE软中断提供给用户使用的陷阱指令,完成系统调用5.输入输出一般不提供给用户直接使用在出现事故时,由CPU自动产生并执行(隐指令)INAL,DXINAX,DX入端口地址CPU的寄存器出CPU的寄存器端口地址7.2如如INAL,nOUTn,AL5.其他7.2等待、停机、空操作、开中断、关中断、置条件码特权非数值处理向量、多处理机7.3寻址方式寻址方式确定本条指令的操作数地址下一条欲执行指令的指令地址指令寻址数据寻址寻址方式7.3寻址方式一、指令寻址顺序(PC)+1PC跳跃由转移指令指出LDA1000ADD1001DEC1200JMP7LDA2000SUB2001INCSTA2500LDA1100...0123456789PC+1指令地址寻址方式指令地址指令顺序寻址1顺序寻址2顺序寻址3跳跃寻址7顺序寻址8二、数据寻址形式地址指令字中的地址有效地址操作数的真实地址约定指令字长=存储字长=机器字长1.立即寻址指令执行阶段不访存A的位数限制了立即数的范围形式地址A操作码寻址特征OP#A立即寻址特征立即数可正可负补码形式地址A就是操作数7.32.直接寻址EA=A操作数主存寻址特征LDAAAACC执行阶段访问一次存储器A的位数决定了该指令操作数的寻址范围操作数的地址不易修改(必须修改A)有效地址由形式地址直接给出7.33.隐含寻址操作数地址隐含在操作码中ADDA操作数主存寻址特征AACC暂存ALU另一个操作数隐含在ACC中如8086MUL指令被乘数隐含在AX(16位)或AL(8位)中MOVS指令源操作数的地址隐含在SI中目的操作数的地址隐含在DI中指令字中少了一个地址字段,可缩短指令字长7.34.间接寻址EA=(A)有效地址由形式地址间接提供OPA寻址特征AEA主存EAA1EAA1主存EA10执行指令阶段2次访存可扩大寻址范围便于编制程序OPA寻址特征A一次间址多次间址操作数操作数多次访存7.3……子程序主程序…8081201202调用子程序调用子程序间接寻址编程举例(A)=81(A)=202……@间址特征7.3JMP@A…  … …  …5.寄存器寻址EA=Ri执行阶段不访存,只访问寄存器,执行速度快OPRi寻址特征寄存器个数有限,可缩短指令字长操作数…………R0RiRn寄存器有效地址即为寄存器编号7.3EA=(Ri)6.寄存器间接寻址有效地址在寄存器中,操作数在存储器中,执行阶段访存操作数主存OPRi寻址特征便于编制循环程序地址…………R0RiRn寄存器有效地址在寄存器中7.37.基址寻址(1)采用专用寄存器作基址寄存器EA=(BR)+ABR为基址寄存器OPA操作数主存寻址特征ALUBR可扩大寻址范围有利于多道程序BR内容由操作系统或管理程序确定在程序的执行过程中BR内容不变,形式地址A可变7.3(2)采用通用寄存器作基址寄存器操作数主存寻址特征ALUOPR0AR0作基址寄存器由用户指定哪个通用寄存器作为基址寄存器通用寄存器R0Rn-1R1…基址寄存器的内容由操作系统确定在程序的执行过程中R0内容不变,形式地址A可变7.38.变址寻址EA=(IX)+AOPA操作数主存寻址特征ALUIX可扩大寻址范围便于处理数组问题IX的内容由用户给定IX为变址寄存器(专用)在程序的执行过程中IX内容可变,形式地址A不变通用寄存器也可以作为变址寄存器7.3例设数据块首地址为D,求N个数的平均值直接寻址变址寻址LDADADDD+1ADDD+2…ADDD+(N-1)DIV#NSTAANSLDA#0LDX#0INXCPX#NBNEMDIV#NSTAANS共N+2条指令共8条指令ADDX,DMX为变址寄存器D为形式地址(X)和#N比较(X)+1X结果不为零则转7.39.相对寻址EA=(PC)+AA是相对于当前指令的位移量(可正可负,补码)A的位数决定操作数的寻址范围程序浮动广泛用于转移指令操作数寻址特征ALUOPA相对距离A1000PC…主存1000AOP7.3(1)相对寻址举例M随程序所在存储空间的位置不同而不同EA=(M+3)–3=M–3*LDA#0LDX#0ADDX,DINXCPX#NBNEMDIV#NSTAANSMM+1M+2M+3而指令BNE与指令ADDX,D相对位移量不变–3*指令BNE操作数的有效地址为–3*相对寻址特征*7.3(2)按字节寻址的相对寻址举例OP位移量2000H2008H8JMP*+8OP06H2000H2008H8设当前指令地址PC=2000H转移后的目的地址为2008H因为取出JMP*+8后PC=2002H二字节指令故JMP*+8指令的第二字节为2008H-2002H=06H7.37.3例7.2设相对寻址的转移指令占3个字节,第一字节为操作码,第二、三字节为相对位移量(补码 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 示),而且数据在存储器中采用以低字节地址为字地址的存放方式。每当CPU从存储器取出一个字节时,即自动完成(PC)+1→PC。(1)若PC当前值为240(十进制),要求转移到290(十进制),则第二、三字节的机器代码是什么?(2)若PC当前值为240(十进制),要求转移到200(十进制),则第二、三字节的机器代码是什么?10.堆栈寻址(1)堆栈的特点堆栈硬堆栈软堆栈多个寄存器指定的存储空间先进后出(一个入出口)栈顶地址由SP指出–11FFFH+12000H进栈(SP)–1SP出栈(SP)+1SP栈顶栈底2000HSP2000H……1FFFHSP1FFFH栈顶栈底进栈出栈1FFFH栈顶2000H栈顶7.3(2)堆栈寻址举例15200HACCSPX栈顶200H栈底主存151FFHACCSP15栈顶200H栈底主存X1FFHPUSHA前PUSHA后POPA前POPA后Y1FFHACCSPX栈顶200H栈底主存151FFH15200HACCSP栈顶200H栈底主存X157.3(3)SP的修改与主存编址方法有关①按字编址进栈出栈(SP)–1SP(SP)+1SP②按字节编址存储字长16位进栈出栈(SP)–2SP(SP)+2SP存储字长32位进栈出栈(SP)–4SP(SP)+4SP7.37.3例7.3一条双字长直接寻址的子程序调用指令,其第一个字为操作码和寻址特征,第二个字为地址码5000H。假设PC当前值为2000H,SP的内容为0100H,栈顶内容为2746H,存储器按字节编址,而且进栈操作是先执行(SP)-Δ→SP,后存入数据。试回答下列几种情况下,PC、SP及栈顶内容各为多少?(1)CALL指令被读取前。(2)CALL指令被执行后。(3)子程序返回后。7.4指令格式举例一、设计指令格式时应考虑的各种因素1.指令系统的兼容性(向上兼容)2.其他因素操作类型数据类型指令格式包括指令个数及操作的难易程度指令字长是否固定寻址方式寄存器个数地址码位数、地址个数、寻址方式类型操作码位数、是否采用扩展操作码技术,确定哪些数据类型可参与操作指令寻址、操作数寻址寄存器的多少直接影响指令的执行时间二、指令格式举例1.PDP–8指令字长固定12位操作码间页地址码访存类指令0235411寄存器类指令111辅助操作码02311I/O类指令110设备操作码02311987.4采用扩展操作码技术2.PDP–11源地址OP4661616目的地址存储器地址1存储器地址2OP10616目的地址存储器地址目的地址466源地址OP106目的地址OP-CODE16OP-CODE指令字长有16位、32位、48位三种零地址(16位)一地址(16位)二地址R–R(16位)二地址R–M(32位)二地址M–M(48位)扩展操作码技术7.43.IBM360OPR1R2RR格式844OPR1XBDRX格式844412OPR1R3BDRS格式844412OPBDISI格式88412二地址R–R基址加变址寻址二地址R–M三地址R–M基址寻址二地址M–M基址寻址基址寻址立即数–M7.4OPB1D1LB2D2SS格式884124124.Intel8086(1)指令字长(2)地址格式1~6个字节MOVWORDPTR[0204],0138H6字节INCAX1字节一地址NOP1字节CALL段内调用3字节零地址5字节段间调用寄存器–寄存器寄存器–立即数寄存器–存储器ADDAX,BX2字节ADDAX,[3048H]4字节ADDAX,3048H3字节二地址CALL7.4三、指令格式设计举例7.4例7.4某机字长16位,存储器直接寻址空间为128字,变址时的位移量为-64~+63,16个通用寄存器均可作为变址寄存器。设计一套指令系统格式,满足下列寻址类型的要求。(1)直接寻址的二地址指令3条。(2)变址寻址的一地址指令6条。(3)寄存器寻址的二地址指令8条。(4)直接寻址的一地址指令12条。(5)零地址指令32条。试问还有多少种代码未用?若安排寄存器寻址的一地址指令,还能容纳多少条?三、指令格式设计举例7.4例7.5设某机配有基址寄存器和变址寄存器,采用一地址格式的指令系统,允许直接和间接寻址,且指令字长、机器字长和存储字长均为16位。(1)若采用单字长指令,共能完成105种操作,则指令可直接寻址的范围是多少?一次间接寻址的寻址范围是多少?画出其指令格式并说明各字段的含义。(2)若存储字长不变,可采用什么方法直接访问容量为16MB的主存?7.5RISC技术一、RISC的产生和发展80—20规律典型程序中80%的语句仅仅使用处理机中20%的指令执行频度高的简单指令,因复杂指令的存在,执行速度无法提高RISC(ReducedInstructionSetComputer)CISC(ComplexInstructionSetComputer)——RISC技术能否用20%的简单指令组合不常用的80%的指令功能?二、RISC的主要特征选用使用频度较高的一些简单指令,复杂指令的功能由简单指令来组合指令长度固定、指令格式种类少、寻址方式少只有LOAD/STORE指令访存采用流水技术一个时钟周期内完成一条指令采用组合逻辑实现控制器CPU中有多个通用寄存器采用优化的编译程序7.5三、CISC的主要特征系统指令复杂庞大,各种指令使用频度相差大指令长度不固定、指令格式种类多、寻址方式多访存指令不受限制大多数指令需要多个时钟周期执行完毕采用微程序控制器CPU中设有专用寄存器难以用优化编译生成高效的目的代码7.5四、RISC和CISC的比较1.RISC更能充分利用VLSI芯片的面积2.RISC更能提高计算机运算速度指令数、指令格式、寻址方式少,通用寄存器多,采用组合逻辑,便于实现指令流水3.RISC便于设计,可降低成本,提高可靠性4.RISC有利于编译程序代码优化5.RISC不易实现指令系统兼容7.5作业P3356~101214~161921本章结束谢谢
本文档为【计算机组成指令系统】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_270070
暂无简介~
格式:ppt
大小:456KB
软件:PowerPoint
页数:51
分类:其他高等教育
上传时间:2020-05-18
浏览量:1