计算机组成原理ch7.ppt

上传人:s****8 文档编号:82780175 上传时间:2023-03-26 格式:PPT 页数:42 大小:1.68MB
返回 下载 相关 举报
计算机组成原理ch7.ppt_第1页
第1页 / 共42页
计算机组成原理ch7.ppt_第2页
第2页 / 共42页
点击查看更多>>
资源描述

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

1、第章第章 指指 令令 系系 统统7.1 机器指令 7.2 操作数类型和操作类型 7.3 寻址方式 7.4 指令格式举例 7.5 RISC 技术 7.1 机机 器器 指指 令令一、指令的一般格式 操作码字段 地址码字段1.操作码反映机器做什么操作(1)长度固定(2)长度可变用于指令字长较长的情况,RISC如 IBM 370操作码 8 位操作码分散在指令字的不同字段中(3)扩展操作码技术操作码的位数随地址数的减少而增加OP A1 A2 A3000000011110A1A1A1A2A2A2A3A3A3A2A2A2A3A3A311111111111100000001111011111111111111

2、1111111111111111111111000000011111111111111111111111111111A3A3A30000000111104 位操作码8 位操作码12 位操作码16 位操作码最多15条三地址指令最多15条二地址指令最多15条一地址指令16条零地址指令7.1(3)扩展操作码技术操作码的位数随地址数的减少而增加OP A1 A2 A3000000011110A1A1A1A2A2A2A3A3A3A2A2A2A3A3A3111111111111000000011110111111111111111111111111111111111111000000011111111111

3、111111111111111111A3A3A30000000111104 位操作码8 位操作码12 位操作码16 位操作码三地址指令操作码每减少一种可多构成24 种二地址指令二地址指令操作码每减少一种可多构成24 种一地址指令7.12.地址码(1)四地址(2)三地址OP A1 A2 A3 A48 6 6 6 6A1 第一操作数地址A2 第二操作数地址A3 结果的地址A4 下一条指令地址若 PC 代替 A4(A1)OP(A2)A38 8 8 8 OP A1 A2 A3(A1)OP(A2)A34 次访存4 次访存寻址范围 26=64寻址范围 28=256若 A3 用 A1 或 A2 代替7.1设

4、指令字长为 32 位操作码固定为 8 位(3)二地址OP A1 A28 12 12(A1)OP(A2)A1(A1)OP(A2)A2或4 次访存若ACC 代替 A1(或A2)若结果存于 ACC (4)一地址(5)零地址OP A18 24无地址码(ACC)OP(A1)ACC2 次访存寻址范围 212=4 K寻址范围 224=16 M 3次访存7.1二、指令字长指令字长决定于操作码的长度指令字长=存储字长2.指令字长 可变操作数地址的长度操作数地址的个数1.指令字长 固定按字节的倍数变化7.1小结 当用一些硬件资源代替指令字中的地址码字段后 当指令的地址字段为寄存器时 可扩大指令的寻址范围 可缩短指

5、令字长 可减少访存次数 三地址 OP R1,R2,R3 二地址 OP R1,R2 一地址 OP R1 指令执行阶段不访存 可缩短指令字长7.17.2 操作数类型和操作种类操作数类型和操作种类一、操作数类型地址数字字符逻辑数无符号整数定点数、浮点数、十进制数ASCII逻辑运算二、数据在存储器中的存放方式字地址 为 低字节 地址字地址 为 高字节 地址37621540字地址04低字节04512673字地址04低字节存储器中的数据存放(存储字长为 32 位)地址(十进制)0 4 812162024283236双字双字(地址32)双字双字(地址24)半字(地址20)半字(地址22)半字(地址16)半字

6、(地址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例如MOVE

7、MOVE7.2ADD SUB MUL DIV INC DEC CMP NEG AAA AAS AAM AAD AND OR NOT XOR TEST3.移位操作算术移位4.转移(1)无条件转移 JMP(2)条件转移结果为零转 (Z=1)JZ结果溢出转 (O=1)JO结果有进位转(C=1)JC跳过一条指令 SKP循环移位(带进位和不带进位)如300305306307SKP DZ D=0 则跳逻辑移位完成触发器7.2(3)调用和返回CALL SUB1.CALL SUB2.CALL SUB2RETURNRETURN主程序地址200021002101子程序SUB12400250025012560256

8、12700主存空间分配程序执行流程子程序SUB27.2.IN AX,nOUT DX,ALOUT n,AXOUT DX,AX(4)陷阱(Trap)与陷阱指令意外事故的中断 设置供用户使用的陷阱指令如 8086 INT TYPE 软中断提供给用户使用的陷阱指令,完成系统调用5.输入输出 一般不提供给用户直接使用 在出现事故时,由 CPU 自动产生并执行(隐指令)IN AL,DXIN AX,DX入 端口地址 CPU 的寄存器出 CPU 的寄存器 端口地址7.2如如IN AL,nOUT n,AL7.3 寻寻 址址 方方 式式寻址方式 确定 本条指令 的 操作数地址下一条 欲执行 指令 的 指令地址指令

9、寻址数据寻址寻址方式7.3 寻寻 址址 方方 式式一、指令寻址顺序(PC)+1 PC跳跃由转移指令指出LDA 1000ADD 1001DEC 1200JMP 7LDA 2000SUB 2001INCSTA 2500LDA 1100.0123456789PC+1指令地址寻址方式指令地址指令顺序寻址1顺序寻址2顺序寻址3跳跃寻址7顺序寻址8二、数据寻址 形式地址 指令字中的地址 有效地址 操作数的真实地址 约定 指令字长=存储字长=机器字长1.立即寻址 指令执行阶段不访存 A 的位数限制了立即数的范围形式地址 A操作码寻址特征OP#A立即寻址特征立即数 可正可负 补码形式地址 A 就是操作数7.3

10、2.直接寻址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主存EAA1EA A1主存 EA10 执

11、行指令阶段 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)采用专用

12、寄存器作基址寄存器EA=(BR)+ABR 为基址寄存器OPA操作数主存寻址特征ALUBR 可扩大寻址范围 有利于多道程序 BR 内容由操作系统或管理程序确定 在程序的执行过程中 BR 内容不变,形式地址 A 可变7.3(2)采用通用寄存器作基址寄存器操作数主存寻址特征ALUOPR0AR0 作基址寄存器 由用户指定哪个通用寄存器作为基址寄存器通用寄存器R0Rn-1R1 基址寄存器的内容由操作系统确定 在程序的执行过程中 R0 内容不变,形式地址 A 可变7.38.变址寻址EA=(IX)+AOPA操作数主存寻址特征ALUIX 可扩大寻址范围 便于处理数组问题 IX 的内容由用户给定 IX 为变址寄

13、存器(专用)在程序的执行过程中 IX 内容可变,形式地址 A 不变通用寄存器也可以作为变址寄存器7.3例 设数据块首地址为 D,求 N 个数的平均值直接寻址变址寻址LDA DADD D+1ADD D+2ADD D+(N-1)DIV#NSTA ANSLDA#0LDX#0INXCPX#NBNE MDIV#NSTA ANS共 N+2 条指令共 8 条指令ADD X,DMX 为变址寄存器D 为形式地址(X)和#N 比较(X)+1 X结果不为零则转 7.39.相对寻址 EA=(PC)+AA 是相对于当前指令的位移量(可正可负,补码)A 的位数决定操作数的寻址范围 程序浮动 广泛用于转移指令操作数寻址特征

14、ALUOPA相对距离 A1000PC 主存1000AOP7.3(1)相对寻址举例M 随程序所在存储空间的位置不同而不同EA=(M+3)3=M 3*LDA#0LDX#0ADD X,DINXCPX#NBNE MDIV#NSTA ANSMM+1M+2M+3而指令 BNE 与 指令 ADD X,D 相对位移量不变 3*指令 BNE操作数的有效地址为 3*相对寻址特征*7.3(2)按字节寻址的相对寻址举例OP位移量2000 H2008 H8JMP*+8OP06 H2000 H2008 H8设 当前指令地址 PC=2000H转移后的目的地址为 2008H因为 取出 JMP*+8 后 PC=2002H二字节

15、指令故 JMP*+8 指令 的第二字节为 2008H-2002H=06H7.310.堆栈寻址(1)堆栈的特点堆栈硬堆栈软堆栈多个寄存器指定的存储空间先进后出(一个入出口)栈顶地址 由 SP 指出 11FFFH+12000 H进栈 (SP)1 SP出栈 (SP)+1 SP栈顶栈底2000 HSP2000 H1FFF HSP1FFFH栈顶栈底进栈出栈 1FFF H栈顶 2000 H栈顶7.3(2)堆栈寻址举例15200HACCSPX栈顶200H栈底主存151FFHACCSP15栈顶200H栈底主存X1FFHPUSH A 前PUSH A 后POP A 前POP A 后Y1FFHACCSPX栈顶200

16、H栈底主存151FFH15200HACCSP栈顶200H栈底主存X157.3(3)SP 的修改与主存编址方法有关 按 字 编址进栈出栈(SP)1 SP(SP)+1 SP 按 字节 编址存储字长 16 位进栈出栈(SP)2 SP(SP)+2 SP存储字长 32 位进栈出栈(SP)4 SP(SP)+4 SP7.37.4 指令格式举例指令格式举例一、设计指令格式时应考虑的各种因素1.指令系统的 兼容性(向上兼容)2.其他因素操作类型数据类型指令格式包括指令个数及操作的难易程度指令字长是否固定寻址方式寄存器个数地址码位数、地址个数、寻址方式类型操作码位数、是否采用扩展操作码技术,确定哪些数据类型可参与

17、操作指令寻址、操作数寻址寄存器的多少直接影响指令的执行时间二、指令格式举例1.PDP 8指令字长固定 12 位 操作码 间 页 地址码访存类指令0235411寄存器类指令 1 1 1 辅助操作码02 311I/O 类指令 1 1 0 设备 操作码02 311987.4采用扩展操作码技术2.PDP 11源地址OP4 6 6 16 16目的地址存储器地址1存储器地址2OP10 6 16目的地址存储器地址目的地址4 6 6源地址OP 10 6目的地址OP-CODE16OP-CODE指令字长有 16 位、32 位、48 位三种零地址(16 位)一地址(16 位)二地址 R R(16 位)二地址 R M

18、(32 位)二地址 M M(48 位)扩展操作码技术7.43.IBM 360OPR1R2 RR格式8 4 4OPR1XBD RX格式8 4 4 4 12OPR1R3BD RS格式8 4 4 4 12OPBDI SI格式8 8 4 12二地址 R R基址加变址寻址二地址 R M三地址 R M基址寻址二地址 M M基址寻址基址寻址立即数 M7.4OPB1D1LB2D2 SS格式884124124.Intel 8086(1)指令字长(2)地址格式1 6 个字节MOV WORD PTR0204,0138H 6 字节INC AX 1 字节一地址NOP 1 字节CALL段内调用 3 字节零地址 5 字节段

19、间调用寄存器 寄存器寄存器 立即数寄存器 存储器ADD AX,BX 2 字节ADD AX,3048H 4 字节ADD AX,3048H 3 字节二地址CALL7.47.5 RISC 技技 术术 一、RISC 的产生和发展 80 20 规律 典型程序中 80%的语句仅仅使 用处理机中 20%的指令 执行频度高的简单指令,因复杂指令 的存在,执行速度无法提高RISC(Reduced Instruction Set Computer)CISC(Complex Instruction Set Computer)RISC技术 能否用 20%的简单指令组合不常用的 80%的指令功能?二、RISC 的主要特

20、征 选用使用频度较高的一些 简单指令,复杂指令的功能由简单指令来组合 指令 长度固定、指令格式种类少、寻址方式少 只有 LOAD/STORE 指令访存 采用 流水技术 一个时钟周期 内完成一条指令 采用 组合逻辑 实现控制器 CPU 中有多个 通用 寄存器 采用 优化 的 编译 程序 7.5三、CISC 的主要特征 系统指令 复杂庞大,各种指令使用频度相差大 指令 长度不固定、指令格式种类多、寻址方式多 访存 指令 不受限制 大多数指令需要 多个时钟周期 执行完毕 采用 微程序 控制器 CPU 中设有 专用寄存器 难以 用 优化编译 生成高效的目的代码 7.5四、RISC和CISC 的比较 1.RISC更能 充分利用 VLSI 芯片的面积2.RISC 更能 提高计算机运算速度指令数、指令格式、寻址方式少,通用 寄存器多,采用 组合逻辑,便于实现 指令流水3.RISC 便于设计,可 降低成本,提高 可靠性4.RISC 有利于编译程序代码优化 5.RISC 不易 实现 指令系统兼容 7.5

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

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

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

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