




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第章第章 指指 令令 系系 统统7.1 机器指令概述机器指令概述 7.2 操作数类型和操作类型操作数类型和操作类型 7.3 寻址方式寻址方式 7.4 指令格式举例指令格式举例 7.5 RISC 技术技术 7.1 7.1 机器指令概述机器指令概述一、指令的一般格式一、指令的一般格式 操作码字段操作码字段 地址码字段地址码字段1. 操作码操作码反映机器做什么操作反映机器做什么操作(1) 长度固定长度固定(2) 长度可变长度可变集中放于指令字的一个字段内,常用于指令字长较长的情况,集中放于指令字的一个字段内,常用于指令字长较长的情况,大中型、超小型计算机、大中型、超小型计算机、RISC如如 IBM
2、370 操作码操作码 8 位位操作码分散在指令字的不同字段中,微型机中采用多操作码分散在指令字的不同字段中,微型机中采用多机器指令是一条机器语言语句,全部机器指令的集合称为指令系统机器指令是一条机器语言语句,全部机器指令的集合称为指令系统(3) 扩展操作码技术扩展操作码技术OP A1 A2 A3000000011110A1A1A1A2A2A2A3A3A3A2A2A2A3A3A3111111111111000000011110111111111111111111111111111111111111000000011111111111111111111111111111A3A3A300000001
3、11104 位操作码位操作码8 位操作码位操作码12 位操作码位操作码16 位操作码位操作码最多最多15条三地址指令条三地址指令最多最多15条二地址指令条二地址指令最多最多15条一地址指令条一地址指令16条零地址指令条零地址指令(3) 扩展操作码技扩展操作码技术术OP A1 A2 A3000000011110A1A1A1A2A2A2A3A3A3A2A2A2A3A3A3111111111111000000011110111111111111111111111111111111111111000000011111111111111111111111111111A3A3A30000000111104
4、 位操作码位操作码8 位操作码位操作码12 位操作码位操作码16 位操作码位操作码三地址指令操作码三地址指令操作码每减少一种可多构成每减少一种可多构成24 种二地址指令种二地址指令二地址指令操作码二地址指令操作码每减少一种可多构成每减少一种可多构成24 种一地址指令种一地址指令2. 地址码地址码(2) 三地址三地址8 8 8 8 OP A1 A2 A3(A1) OP (A2) A34 次访存次访存寻址范围寻址范围 28 = 256若若 A3 用用 A1 或或 A2 代替代替(1) 四地址四地址OP A1 A2 A3 A48 6 6 6 6A1 第一操作数地址第一操作数地址A2 第二操作数地址第
5、二操作数地址A3 结果的地址结果的地址A4 下一条指令地址下一条指令地址若若 PC 代替代替 A4(A1) OP (A2) A34 次访存次访存寻址范围寻址范围 26 = 64设指令字长为设指令字长为 32 位位操作码固定为操作码固定为 8 位位(5) 零地址零地址无地址码无地址码(3) 二地址二地址OP A1 A28 12 12(A1) OP (A2) A1(A1) OP (A2) A2或或仍需仍需4 次访存次访存若若ACC 代替代替 A1(或(或A2)若结果存于若结果存于 ACC,则只要,则只要3次访存次访存 寻址范围寻址范围 212 = 4 K(4) 一地址一地址OP A18 24(AC
6、C) OP (A1) ACC2 次访存次访存寻址范围寻址范围 224 = 16 M 二、指令字长二、指令字长指令字长决定于指令字长决定于操作码的长度操作码的长度指令字长指令字长 = 机器字长机器字长=存储字长存储字长2. 指令字长可变指令字长可变操作数地址的长度操作数地址的长度操作数地址的个数操作数地址的个数1. 指令字长固定指令字长固定按字节(按字节(8位)的倍数变化位)的倍数变化本本 节节 结结 束束7.2 7.2 操作数和操作类型操作数和操作类型一、操作数类型一、操作数类型地址地址数字数字字符字符逻辑数逻辑数无符号整数无符号整数定点数、浮点数、十进制数定点数、浮点数、十进制数普遍采用普遍
7、采用ASCII码码逻辑运算时的逻辑运算时的0、1组合组合二、数据在存储器中的存放方式二、数据在存储器中的存放方式字地址为低字节地址字地址为低字节地址字地址为高字节地址字地址为高字节地址37621540字地址字地址04低字节低字节04512673字地址字地址04低字节低字节存储器中的数据存放(存储字长为存储器中的数据存放(存储字长为 32 位)位)地址(十进制)地址(十进制) 0 4 812162024283236双字双字双字(地址双字(地址32)双字双字双字(地址双字(地址24)半字(地址半字(地址20)半字(地址半字(地址22)半字(地址半字(地址16)半字(地址半字(地址18)字节(地址字
8、节(地址 8)字节(地址字节(地址 9)字节(地址字节(地址10)字节(地址字节(地址11)字(地址字(地址 4)字(地址字(地址 0)字节(地址字节(地址14) 字节(地址字节(地址15)字节(地址字节(地址13) 字节(地址字节(地址12)边界对准边界对准地址(十进制)地址(十进制)048字节字节( 地址地址7)字节字节( 地址地址6)字字( 地址地址2)半字半字( 地址地址10)半字半字( 地址地址8)半字半字( 地址地址0)字字( 地址地址4)边界未对准边界未对准三、操作类型三、操作类型1. 数据传送数据传送源源目的目的寄存器寄存器寄存器寄存器寄存器寄存器寄存器寄存器存储器存储器存储器
9、存储器存储器存储器存储器存储器置置“1”,清,清“0”2. 算术逻辑操作算术逻辑操作加、减、乘、除、增加、减、乘、除、增 1、减、减 1、求补、浮点运算、十进制运算、求补、浮点运算、十进制运算与、或、非、异或、位操作、位测试、位清除、位求反与、或、非、异或、位操作、位测试、位清除、位求反MOVESTORELOADMOVEPUSHPOP例如例如MOVEMOVE3. 移位操作移位操作算术移位算术移位循环移位(带进位和不带进位)循环移位(带进位和不带进位)逻辑移位逻辑移位4. 转移转移(1) 无条件转移无条件转移 JMP X(2) 条件转移条件转移结果为零转结果为零转 (Z = 1)结果溢出转结果溢
10、出转 (V = 1)结果有进位转(结果有进位转(C = 1)跳过一条指令跳过一条指令 SKP结果为偶数转(结果为偶数转(P = 1)如如300305306307SKP DZ D = 0 则跳则跳完成触发器完成触发器(3) 调用和返回调用和返回CALL SUB1.CALL SUB2.CALL SUB2RETURNRETURN主程序主程序地址地址200021002101子程序子程序SUB1240025002501256025612700主存空间分配主存空间分配程序执行流程程序执行流程子程序子程序SUB2.(4) 陷阱(陷阱(Trap)与陷阱指令)与陷阱指令针对意外事故的中断针对意外事故的中断 设置
11、供用户使用的陷阱指令设置供用户使用的陷阱指令如如 8086 INT TYPE 软中断软中断提供给用户使用的陷阱指令,完成系统调用提供给用户使用的陷阱指令,完成系统调用5. 输入输出输入输出 一般不提供给用户直接使用一般不提供给用户直接使用 在出现事故时,由在出现事故时,由 CPU 自动产生并执行(隐指令)自动产生并执行(隐指令)6. 其他指令其他指令等待、停机、空操作、开等待、停机、空操作、开/关中断、非数值处理、特权、向量、多处理机关中断、非数值处理、特权、向量、多处理机本本 节节 结结 束束7.37.3 寻址方式寻址方式寻址方式寻址方式 确定本条指令的操作数地址下一条欲执行指令的确定本条指
12、令的操作数地址下一条欲执行指令的指令地址指令地址指令寻址指令寻址数据寻址数据寻址寻址方式寻址方式一、指令寻址一、指令寻址顺序寻址顺序寻址 ( PC ) + 1 PC跳跃寻址跳跃寻址由转移指令指出由转移指令指出LDA 1000ADD 1001DEC 1200JMP 7LDA 2000SUB 2001INCSTA 2500LDA 1100.0123456789PC+1指令地址寻址方式指令地址寻址方式指令地址指令地址指令指令顺序寻址顺序寻址1顺序寻址顺序寻址2顺序寻址顺序寻址3跳跃寻址跳跃寻址7顺序寻址顺序寻址8二、数据寻址二、数据寻址 形式地址形式地址A 指令字中的地址指令字中的地址 有效地址有效
13、地址EA 操作数的真实地址操作数的真实地址 约定约定 指令字长指令字长 = 存储字长存储字长 = 机器字长机器字长1. 立即寻址立即寻址 指令执行阶段不访存指令执行阶段不访存 A 的位数限制了立即数的范围的位数限制了立即数的范围形式地址形式地址 A操作码操作码寻址特征寻址特征OP # A立即寻址特征立即寻址特征立即数:立即数:可正可负,补码可正可负,补码形式地址形式地址 A 就是操作数就是操作数2. 直接寻址直接寻址EA = A操作数操作数主存主存寻址特征寻址特征LDAAAACC 执行阶段访问一次存储器执行阶段访问一次存储器 A 的位数决定了该指令操作数的寻址范围的位数决定了该指令操作数的寻址
14、范围 操作数的地址不易修改(必须修改操作数的地址不易修改(必须修改A)有效地址由形式地址直接给出有效地址由形式地址直接给出3. 隐含寻址隐含寻址操作数地址隐含在操作码或者某个寄存器中操作数地址隐含在操作码或者某个寄存器中ADDA操作数操作数主存主存寻址特征寻址特征AACC暂存暂存ALU另一个操作数另一个操作数隐含在隐含在 ACC 中中如如 8086MUL 指令指令被乘数隐含在被乘数隐含在 AX(16位)或位)或 AL(8位)中位)中MOVS 指令指令源操作数的地址隐含在源操作数的地址隐含在 SI 中中目的操作数的地址隐含在目的操作数的地址隐含在 DI 中中 指令字中少了一个地址字段,可缩短指令
15、字长指令字中少了一个地址字段,可缩短指令字长4. 间接寻址间接寻址EA =(A)有效地址由形式地址间接提供有效地址由形式地址间接提供OPA寻址特征寻址特征AEA主存主存EAA1EA A1主存主存 EA10 执行指令阶段执行指令阶段 2 次访存次访存 可扩大寻址范围可扩大寻址范围 便于编制程序便于编制程序OPA寻址特征寻址特征A一次间址一次间址多次间址多次间址操作数操作数操作数操作数多次访存多次访存 子程序子程序主程序主程序8081201202调用子程序调用子程序调用子程序调用子程序间接寻址编程举例间接寻址编程举例(A) = 81(A) = 202 间址特征间址特征JMP A 5. 寄存器寻址寄
16、存器寻址EA = Ri 执行阶段不访存,只访问寄存器,执行速度快执行阶段不访存,只访问寄存器,执行速度快OPRi寻址特征寻址特征 寄存器个数有限,可缩短指令字长寄存器个数有限,可缩短指令字长操作数操作数R0RiRn寄存器寄存器有效地址即为寄存器编号有效地址即为寄存器编号EA = ( Ri )6. 寄存器间接寻址寄存器间接寻址 有效地址存在寄存器中,有效地址存在寄存器中, 操作数在存储器中,执行阶段访存操作数在存储器中,执行阶段访存操作数操作数主存主存OPRi寻址特征寻址特征 便于编制循环程序便于编制循环程序地址地址R0RiRn寄存器寄存器有效地址在寄存器中有效地址在寄存器中7. 基址寻址基址寻
17、址(1) 采用专用寄存器作基址寄存器采用专用寄存器作基址寄存器EA = ( BR ) + ABR 为基址寄存器为基址寄存器OPA操作数操作数主存主存寻址特征寻址特征ALUBR 可扩大寻址范围可扩大寻址范围 有利于多道程序有利于多道程序 BR 内容由操作系统或管理程序确定内容由操作系统或管理程序确定 在程序的执行过程中在程序的执行过程中 BR 内容不变,形式地址内容不变,形式地址 A 可变可变隐式:使用专设的隐式:使用专设的BR(2) 采用通用寄存器作基址寄存器采用通用寄存器作基址寄存器操作数操作数主存主存寻址特征寻址特征ALUOPR0A显式:显式:R0作基址寄存器作基址寄存器 由用户指定哪个通
18、用寄存器作为基址寄存器由用户指定哪个通用寄存器作为基址寄存器通用寄存器通用寄存器R0Rn-1R1 基址寄存器的内容由操作系统确定基址寄存器的内容由操作系统确定 在程序的执行过程中在程序的执行过程中 R0 内容不变,形式地址内容不变,形式地址 A 可变可变8. 变址寻址变址寻址EA = ( IX ) +AOPA操作数操作数主存主存寻址特征寻址特征ALUIX 可扩大寻址范围可扩大寻址范围 便于处理数组问题便于处理数组问题 IX 的内容由用户给定的内容由用户给定 IX 为变址寄存器(专用)为变址寄存器(专用) 在程序的执行过程中在程序的执行过程中 IX 内容可变,形式地址内容可变,形式地址 A 不变
19、不变通用寄存器也可以作为变址寄存器通用寄存器也可以作为变址寄存器9. 相对寻址相对寻址 EA = ( PC ) + AA 是相对于当前指令的位移量(可正可负,补码)是相对于当前指令的位移量(可正可负,补码) A 的位数决定操作数的寻址范围的位数决定操作数的寻址范围 程序浮动程序浮动广泛用于转移指令广泛用于转移指令操作数操作数寻址特征寻址特征ALUOPA相对距离相对距离 A1000PC 主存主存1000AOP (1) 相对寻址举例相对寻址举例M 随程序所在存储空间的位置不同而不同随程序所在存储空间的位置不同而不同EA = ( M+3 ) 3 = M 3*LDA # 0LDX # 0ADD X,
20、DINXCPX # NBNE MDIV # NSTA ANSMM+1M+2M+3而指令而指令 BNE 与与 指令指令 ADD X, D 相对位移量不变相对位移量不变 3* 指令指令 BNE操作数的有效地址为操作数的有效地址为 3* 相对寻址特征相对寻址特征*10. 堆栈寻址堆栈寻址(1) 堆栈的特点堆栈的特点堆栈堆栈硬堆栈硬堆栈软堆栈软堆栈多个寄存器多个寄存器指定的存储空间指定的存储空间先进后出先进后出(一个出入口)一个出入口)栈顶地址由栈顶地址由 SP 指出指出 11FFFH +12000 H进栈进栈 (SP) 1 SP出栈出栈 (SP)+ 1 SP栈顶栈顶栈底栈底2000 HSP2000
21、H1FFF HSP1FFFH栈顶栈顶栈底栈底进栈进栈出栈出栈 1FFF H栈顶栈顶 2000 H栈顶栈顶(3) SP 的修改与主存编址方法有关的修改与主存编址方法有关 按按 字字 编址编址进栈进栈出栈出栈(SP) 1 SP(SP)+ 1 SP 按按 字节字节 编址编址存储字长存储字长 16 位位进栈进栈出栈出栈(SP) 2 SP(SP)+ 2 SP存储字长存储字长 32 位位进栈进栈出栈出栈(SP) 4 SP(SP)+ 4 SP本本 节节 结结 束束7.47.4 指令格式举例指令格式举例一、设计指令格式时应考虑的各种因素一、设计指令格式时应考虑的各种因素1. 指令系统的兼容性指令系统的兼容性(
22、向上兼容)(向上兼容)2. 其他因素其他因素操作类型操作类型数据类型数据类型指令格式指令格式包括指令个数及操作的难易程度包括指令个数及操作的难易程度指令字长是否固定指令字长是否固定寻址方式寻址方式寄存器个数寄存器个数地址码位数、地址个数、寻址方式类型地址码位数、地址个数、寻址方式类型操作码位数、是否采用扩展操作码技术,操作码位数、是否采用扩展操作码技术,确定哪些数据类型可参与操作确定哪些数据类型可参与操作指令寻址、操作数寻址指令寻址、操作数寻址寄存器的多少直接影响指令的执行时间寄存器的多少直接影响指令的执行时间二、指令格式举例二、指令格式举例1. PDP 8指令字长固定指令字长固定 12 位位
23、 操作码操作码 间间 页页 地址码地址码访存类指令访存类指令0235411寄存器类指令寄存器类指令 1 1 1 辅助操作码辅助操作码02 311I/O 类指令类指令 1 1 0 设备设备 操作码操作码02 31198支持间接寻址、相对寻址、变址寻址,共有支持间接寻址、相对寻址、变址寻址,共有35条指令条指令2. PDP 11源地址源地址OP4 6 6 16 16目的地址目的地址存储器地址存储器地址1存储器地址存储器地址2OP10 6 16目的地址目的地址存储器地址存储器地址目的地址目的地址4 6 6源地址源地址OP 10 6目的地址目的地址OP-CODE16OP-CODE指令字长有指令字长有
24、16 位、位、32 位、位、48 位三种,采用操作码扩展技术位三种,采用操作码扩展技术零地址零地址 (16 位位)一地址一地址 (16 位位)二地址二地址 R R (16 位位)二地址二地址 R M (32 位位)二地址二地址 M M (48 位位)3. 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基址寻址基址寻址基址寻址基址寻址
25、立即数立即数 MOPB1D1LB2D2 SS格式格式88412412指令字长有指令字长有16位、位、32位、位、48位三种位三种4. Intel 8086(1) 指令字长不固定,指令字长不固定,1 6 个字节个字节MOV WORD PTR0204, 0138H 6 字节字节INC AX 1 字节字节(2) 地址格式地址格式一地址一地址NOP 1 字节字节CALL段内调用段内调用 3 字节字节零地址零地址 5 字节字节段间调用段间调用寄存器寄存器 寄存器寄存器寄存器寄存器 立即数立即数寄存器寄存器 存储器存储器ADD AX,BX 2 字节字节ADD AX,3048H 4 字节字节ADD AX,3
26、048H 3 字节字节二地址二地址CALL本本 节节 结结 束束7.6 RISC7.6 RISC技术技术一、一、RISC 的产生和发展的产生和发展 80 - 20 规律规律典型程序中典型程序中 80% 的语句仅仅使用处理机中的语句仅仅使用处理机中 20% 的指令的指令复杂指令的存在使复杂指令的存在使频度高的简单指令频度高的简单指令执行速度无法提高执行速度无法提高RISC(Reduced Instruction Set Computer)CISC(Complex Instruction Set Computer) RISC技术技术 能否用能否用 20% 的简单指令组合不常用的的简单指令组合不常用的80%的指令功能?的指令功能?RISC体系结构芯片的发展历程:体系结构芯片的发展历程:第一代:第一代:32位数据通路,支持位数据通路,支持Cache如如RISC I、MIPS、IBM801第二代:第二代:支持多处理机系统,提高时钟频率,具有单指令流水线支持多处理机系统,提高时钟频率,具有单指令流水线如如
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025标准房屋租赁合同范本「版」
- 2025年管理顾问聘用合同范本
- 2025打印机租赁合同协议书
- 2025简化版劳动合同模板
- 二零二五汽车运输合同书协议书
- 影视剧美术指导聘用劳动合同范例二零二五年
- 二零二五对外承包项目借款合同书模板范例
- 二零二五学校护校人员聘用合同书
- 二零二五花园绿化养护管理合同书
- 大学生职业规划大赛《电子与计算机工程专业》生涯发展展示
- 西师大版小学五年级 数学(下)期末测试题(含答案)
- 化工工艺原理考试题库梳理
- 定金款管理制度
- 光伏电站安全培训
- GB/T 37027-2025网络安全技术网络攻击和网络攻击事件判定准则
- 2025年江苏南通苏北七市高三二模高考物理试卷(含答案详解)
- 2024年药理学考试真题回顾试题及答案
- 2025年军队文职(司机类)核心知识点备考题库(含答案)
- 2025年深圳二模考试试题及答案
- (一模)临沂市2025届高三高考第一次模拟考试生物试卷(含标准答案)
- 老年康体指导职业教育课件
评论
0/150
提交评论