《计算机组成原理第七章指令系统课件.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理第七章指令系统课件.ppt(68页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、计算机组成原理第七章指令系统第1页,此课件共68页哦一、考试范围(一)指令格式(一)指令格式(一)指令格式(一)指令格式基本格式;定长操作码指令格式;扩展操作码指令格式。基本格式;定长操作码指令格式;扩展操作码指令格式。基本格式;定长操作码指令格式;扩展操作码指令格式。基本格式;定长操作码指令格式;扩展操作码指令格式。(二)指令的寻址方式(二)指令的寻址方式(二)指令的寻址方式(二)指令的寻址方式有效地址的概念;数据寻址和指令寻址;常见寻址方式。有效地址的概念;数据寻址和指令寻址;常见寻址方式。有效地址的概念;数据寻址和指令寻址;常见寻址方式。有效地址的概念;数据寻址和指令寻址;常见寻址方式。
2、(三)(三)(三)(三)CISCCISC和和RISCRISC的概念的概念的概念的概念2第2页,此课件共68页哦二、复习要点二、复习要点1)理解指令的基本格式、定长与扩展操作码格式。理解指令的基本格式、定长与扩展操作码格式。2)掌握指令寻址方式的基本概念、常见寻址方式及其有效)掌握指令寻址方式的基本概念、常见寻址方式及其有效地址的计算。地址的计算。3)了解)了解CISC和和RISC的基本概念的基本概念3第3页,此课件共68页哦指令指令是指示计算机执行某项运算或处理功能的命令,是指示计算机执行某项运算或处理功能的命令,一台计算机支持的全部指令构成这台计算机的指令一台计算机支持的全部指令构成这台计算
3、机的指令系统。指令系统与机器的运行性能、硬件结构的复系统。指令系统与机器的运行性能、硬件结构的复杂程度和制造成本、使用的方便性等密切相关,是杂程度和制造成本、使用的方便性等密切相关,是设计一台计算机的基本依据。设计一台计算机的基本依据。指令系统的评价指令系统的评价:1)完备性)完备性 指令齐全,编程方便指令齐全,编程方便2)高效性)高效性 程序占内存空间少,运行速度快程序占内存空间少,运行速度快3)规则性)规则性 指令和数据使用规则统一简单,易学易指令和数据使用规则统一简单,易学易记记4)兼容性)兼容性 同一系列机器,程序向上兼容同一系列机器,程序向上兼容7.1 7.1 机机 器器 指指 令令
4、4第4页,此课件共68页哦7.1 7.1 机机 器器 指指 令令一、指令的一般格式一、指令的一般格式 操作码字段操作码字段 地址码字段地址码字段1.操作码操作码反映机器做什么操作反映机器做什么操作(3)扩展操作码技术扩展操作码技术(1)定长码)定长码指令系统中,所有指令指令系统中,所有指令OP码长度相等码长度相等优点:规则性好,编译效率高优点:规则性好,编译效率高缺点:指令平均长度长(占空间大,执行速度低)。缺点:指令平均长度长(占空间大,执行速度低)。(2)变长码)变长码操作码长度不等(复杂长,简单短)操作码长度不等(复杂长,简单短)优点:指令平均长度短优点:指令平均长度短缺点:规则性差,编
5、译效率低缺点:规则性差,编译效率低第5页,此课件共68页哦操作码的长度随地址数的减少而增加操作码的长度随地址数的减少而增加OP A1 A2 A3000000011110A1A1A1A2A2A2A3A3A3A2A2A2A3A3A3111111111111000000011110111111111111111111111111111111111111000000011111111111111111111111111111A3A3A30000000111104 位操作码位操作码8 位操作码位操作码12 位操作码位操作码16 位操作码位操作码15条三地址指令条三地址指令15条二地址指令条二地址指令15
6、条一地址指令条一地址指令16条零地址指令条零地址指令7.1 7.1 机机 器器 指指 令令第6页,此课件共68页哦2.地址码地址码(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、指令字长为 32 位位操作码固定为操作码固定为 8 位位7.1 7.1 机机 器器 指指 令令第7页,此课件共68页哦(3)二地址二地址OP A1 A28 12 12或或4 次访存次访存若若ACC 代替代替 A1(或或A2)若结果存于若结果存于 ACC (4)一地址一地址(5)零地址零地址OP A18 24无地址码无地址码(ACC)OP(A1)ACC2 次访存次访存寻址范围寻址范围 212=4 K寻址范围寻址范围 224=16 M 3次访存次访存7.1 7.1 机机 器器 指指 令令(A1)OP(A2)A1微型机微型机(A1)OP(A2)A2小型机小型机第8页,此课件共68页哦二、指令字长二、
8、指令字长指令字长决定于指令字长决定于操作码的长度操作码的长度指令字长指令字长=存储字长存储字长2.指令字长指令字长 可变可变操作数地址的长度操作数地址的长度操作数地址的个数操作数地址的个数1.指令字长指令字长 固定固定按字节的倍数变化按字节的倍数变化7.1 7.1 机机 器器 指指 令令8n第9页,此课件共68页哦7.1 7.1 机机 器器 指指 令令举例:举例:1、假设指令字长为、假设指令字长为16位,操作数的地址码为位,操作数的地址码为6位,指令位,指令有零地址、一地址、二地址三种格式。有零地址、一地址、二地址三种格式。(1)设操作码固定,若零地址指令有)设操作码固定,若零地址指令有P种,
9、一地址指种,一地址指令有令有Q种,则二地址指令有多少种?种,则二地址指令有多少种?(2)采用扩展操作码技术,若二地址指令有)采用扩展操作码技术,若二地址指令有X种,零地种,零地址指令有址指令有Y种,则一地址指令最多有几种?种,则一地址指令最多有几种?解:解:(1)24-P-Q(2)设一地址指令有)设一地址指令有Z种,则种,则(24-X)26-Z 26=YZ=Z=(24-X)26-Y2-6第10页,此课件共68页哦2、某计算机指令字长为、某计算机指令字长为16位,采用位,采用R-R寻址方式,共寻址方式,共有有16个寄存器,指令系统有三地址、二地址、一地址个寄存器,指令系统有三地址、二地址、一地址
10、及零地址指令,采用扩展操作码技术设计指令系统。及零地址指令,采用扩展操作码技术设计指令系统。7.1 7.1 机机 器器 指指 令令第11页,此课件共68页哦OPOPA A1 1A A2 2A A3 34 4位位4 4位位4 4位位4 4位位OPOP1515条三地址指令条三地址指令0000 XXXX YYYY ZZZZ0000 XXXX YYYY ZZZZ1110 XXXX YYYY ZZZZ1110 XXXX YYYY ZZZZ111111111515条二地址指令条二地址指令11111111 0000 XXXX YYYY 0000 XXXX YYYY1111 1110 XXXX YYYY111
11、1 1110 XXXX YYYY1111 11111111 11111515条一地址指令条一地址指令1111 11111111 1111 0000 XXXX 0000 XXXX1111 1111 1110 XXXX1111 1111 1110 XXXX1111 1111 11111111 1111 11111616条零地址指令条零地址指令1111 1111 11111111 1111 1111 0000 00001111 1111 1111 11111111 1111 1111 1111扩展标志扩展标志扩展标志扩展标志扩展标志扩展标志OPOPA1A1A2A2OPOPA1A1指令操作码扩展指令操
12、作码扩展17.1 7.1 机机 器器 指指 令令12第12页,此课件共68页哦指令操作码扩展指令操作码扩展2:0000000 0 XXXX YYYY ZZZZ XXXX YYYY ZZZZ1111110 0 XXXX YYYY ZZZZ XXXX YYYY ZZZZ1111111 1 11101110 0000 0000 XXXX XXXX1111111 1 11101110 1111 1111 XXXX XXXX1111111 1111 11111 1111 1111 0000 00001111111 1111 11111 1111 1111 1111 11111616条零地址指令条零地址指
13、令1111111 1 00000000 XXXX YYYY XXXX YYYY1111111 1 11011101 XXXX YYYY XXXX YYYY1111111 1 11111111 00000000 XXXX XXXX1111111 1 11111111 11101110 XXXX XXXX1515条三地址指令条三地址指令1414条二地址指令条二地址指令1616条一地址指令条一地址指令1515条一地址指令条一地址指令31317.1 7.1 机机 器器 指指 令令13第13页,此课件共68页哦7.2 7.2 操作数类型和操作种类操作数类型和操作种类一、操作数类型一、操作数类型地址地址数
14、字数字字符字符逻辑数逻辑数无符号整数无符号整数定点数、浮点数、十进制数定点数、浮点数、十进制数ASCII逻辑运算逻辑运算二、数据在存储器中的存放方式二、数据在存储器中的存放方式字地址字地址 为为 低字节低字节 地址地址字地址字地址 为为 高字节高字节 地址地址37621540字地址字地址04低字节低字节04512673字地址字地址04低字节低字节(小端方式)(小端方式)(大端方式)(大端方式)第14页,此课件共68页哦4字节字节32位存储器位存储器字地址字地址0字地址字地址4半字地址半字地址8半字地址半字地址10半字地址半字地址12字节地址字节地址15半字地址半字地址22字节地址字节地址14字
15、节地址字节地址19字节地址字节地址18字节地址字节地址16字节地址字节地址17字节地址字节地址20字节地址字节地址21地址地址048121620在数据对准边界存储的计算机中,对于以二进制表示的存储地址来说,在数据对准边界存储的计算机中,对于以二进制表示的存储地址来说,半字半字地址的最低位、字地址的最低两位和双字地址的最低三位恒为零。地址的最低位、字地址的最低两位和双字地址的最低三位恒为零。这种方式的这种方式的整个字的存储时间要短,需要整个字的存储时间要短,需要1个存储周期。按字存储时有大端和小端二种个存储周期。按字存储时有大端和小端二种排放格式。即高字节内容放在高字节地址中为小端模式。排放格式
16、。即高字节内容放在高字节地址中为小端模式。存储器中的数据存放(存储字长为存储器中的数据存放(存储字长为 32 位)位)7.2 7.2 操作数类型和操作种类操作数类型和操作种类15第15页,此课件共68页哦32位、位、4个字节个字节地址地址048字节字节半字的一半半字的一半一字的一字的3/4半字半字 有的计算机不要求对准边界存储数据,如下图有的计算机不要求对准边界存储数据,如下图所示,但这种方式增加硬件的复杂程度,并且有可所示,但这种方式增加硬件的复杂程度,并且有可能导致访问次数增加。例如存储一个字,则需要能导致访问次数增加。例如存储一个字,则需要2个存储周期。个存储周期。半字另一半半字另一半一
17、字的一字的1/4半字半字7.2 7.2 操作数类型和操作种类操作数类型和操作种类16第16页,此课件共68页哦三、操作类型三、操作类型1.数据传送数据传送源源目的目的寄存器寄存器寄存器寄存器寄存器寄存器寄存器寄存器存储器存储器存储器存储器存储器存储器存储器存储器置置“1”,清,清“0”2.算术逻辑操作算术逻辑操作加、减、乘、除、增加、减、乘、除、增 1、减、减 1、求补、浮点运算、十进制运算、求补、浮点运算、十进制运算与、或、非、异或、位操作、位测试、位清除、位求反与、或、非、异或、位操作、位测试、位清除、位求反如如 8086MOVESTORELOADMOVEPUSHPOP例如例如MOVEMO
18、VEADD SUB MUL DIV INC DEC CMP NEG AAA AAS AAM AAD AND OR NOT XOR TEST7.2 7.2 操作数类型和操作种类操作数类型和操作种类第17页,此课件共68页哦3.移位操作移位操作算术移位算术移位4.转移转移(1)无条件转移无条件转移 JMP(2)条件转移条件转移结果为零转结果为零转 (Z=1)JZ结果溢出转结果溢出转 (O=1)JO结果有进位转(结果有进位转(C=1)JC跳过一条指令跳过一条指令 SKP循环移位(带进位和不带进位)循环移位(带进位和不带进位)如如300305306307SKP DZ D=0 则跳则跳逻辑移位逻辑移位完
19、成触发器完成触发器7.2 7.2 操作数类型和操作种类操作数类型和操作种类第18页,此课件共68页哦(3)调用和返回调用和返回CALL SUB1.CALL SUB2.CALL SUB2RETURNRETURN.主程序主程序地址地址200021002101子程序子程序SUB1240025002501256025612700主存空间分配主存空间分配程序执行流程程序执行流程子程序子程序SUB27.2 7.2 操作数类型和操作种类操作数类型和操作种类第19页,此课件共68页哦IN AX,nOUT DX,ALOUT n,AXOUT DX,AX(4)陷阱(陷阱(Trap)与陷阱指令与陷阱指令意外事故的中断
20、意外事故的中断 设置供用户使用的陷阱指令设置供用户使用的陷阱指令如如 8086 INT TYPE 软中断软中断提供给用户使用的陷阱指令,完成系统调用提供给用户使用的陷阱指令,完成系统调用5.输入输出输入输出 一般不提供给用户直接使用一般不提供给用户直接使用 在出现事故时,由在出现事故时,由 CPU 自动产生并执行(隐指令)自动产生并执行(隐指令)IN AL,DXIN AX,DX入入 端口地址端口地址 CPU 的寄存器的寄存器出出 CPU 的寄存器的寄存器 端口地址端口地址如如如如IN AL,nOUT n,AL7.2 7.2 操作数类型和操作种类操作数类型和操作种类第20页,此课件共68页哦7.
21、3 7.3 寻寻 址址 方方 式式寻址方式寻址方式 确定确定 本条指令本条指令 的的 操作数地址操作数地址下一条下一条 欲执行欲执行 指令指令 的的 指令地址指令地址指令寻址指令寻址数据寻址数据寻址寻址方式寻址方式第21页,此课件共68页哦一、指令寻址一、指令寻址顺序顺序(PC)+1 PC跳跃跳跃由转移指令指出由转移指令指出LDA 1000ADD 1001DEC 1200JMP 7LDA 2000SUB 2001INCSTA 2500LDA 1100.0123456789PC+1指令地址寻址方式指令地址寻址方式指令地址指令地址指令指令顺序寻址顺序寻址1顺序寻址顺序寻址2顺序寻址顺序寻址3跳跃寻
22、址跳跃寻址7顺序寻址顺序寻址87.3 7.3 寻寻 址址 方方 式式第22页,此课件共68页哦二、数据寻址二、数据寻址 形式地址形式地址 指令字中的地址指令字中的地址 有效地址有效地址 操作数的真实地址操作数的真实地址 约定约定 指令字长指令字长=存储字长存储字长=机器字长机器字长1.立即寻址立即寻址 指令执行阶段不访存指令执行阶段不访存 A 的位数限制了立即数的范围的位数限制了立即数的范围形式地址形式地址 A操作码操作码寻址特征寻址特征OP#A立即寻址特征立即寻址特征立即数立即数 可正可负可正可负 补码补码形式地址形式地址 A 就是操作数就是操作数7.3 7.3 寻寻 址址 方方 式式第23
23、页,此课件共68页哦2.直接寻址直接寻址EA=A操作数操作数主存主存寻址特征寻址特征LDAAAACC 执行阶段访问一次存储器执行阶段访问一次存储器 A 的位数决定了该指令操作数的寻址范围的位数决定了该指令操作数的寻址范围 操作数的地址不易修改(必须修改操作数的地址不易修改(必须修改A)有效地址由形式地址直接给出有效地址由形式地址直接给出7.3 7.3 寻寻 址址 方方 式式第24页,此课件共68页哦3.隐含寻址隐含寻址操作数地址隐含在操作码中操作数地址隐含在操作码中ADDA操作数操作数主存主存寻址特征寻址特征AACC暂存暂存ALU另一个操作数另一个操作数隐含在隐含在 ACC 中中如如 8086
24、MUL 指令指令被乘数隐含在被乘数隐含在 AX(16位)或位)或 AL(8位)中位)中MOVS 指令指令源操作数的地址隐含在源操作数的地址隐含在 SI 中中目的操作数的地址隐含在目的操作数的地址隐含在 DI 中中 指令字中少了一个地址字段,可缩短指令字长指令字中少了一个地址字段,可缩短指令字长7.3 7.3 寻寻 址址 方方 式式第25页,此课件共68页哦4.间接寻址间接寻址EA=(A)有效地址由形式地址间接提供有效地址由形式地址间接提供OPA寻址特征寻址特征AEA主存主存EAA1EA A1主存主存 EA10 执行指令阶段执行指令阶段 2 次访存次访存 可扩大寻址范围可扩大寻址范围 便于编制程
25、序便于编制程序OPA寻址特征寻址特征A一次间址一次间址多次间址多次间址操作数操作数操作数操作数多次访存多次访存7.3 7.3 寻寻 址址 方方 式式第26页,此课件共68页哦 子程序子程序主程序主程序8081201202转转 子程序子程序转转 子程序子程序间接寻址编程举例间接寻址编程举例(A)=81(A)=202 间址特征间址特征JMP A 7.3 7.3 寻寻 址址 方方 式式第27页,此课件共68页哦5.寄存器寻址寄存器寻址EA=Ri 执行阶段不访存,只访问寄存器,执行速度快执行阶段不访存,只访问寄存器,执行速度快OPRi寻址特征寻址特征 寄存器个数有限,可缩短指令字长寄存器个数有限,可缩
26、短指令字长操作数操作数R0RiRn寄存器寄存器有效地址即为寄存器编号有效地址即为寄存器编号7.3 7.3 寻寻 址址 方方 式式第28页,此课件共68页哦EA=(Ri)6.寄存器间接寻址寄存器间接寻址 有效地址在寄存器中,有效地址在寄存器中,操作数在存储器中,执行阶段访存操作数在存储器中,执行阶段访存操作数操作数主存主存OPRi寻址特征寻址特征 便于编制循环程序便于编制循环程序地址地址R0RiRn寄存器寄存器有效地址在寄存器中有效地址在寄存器中7.3 7.3 寻寻 址址 方方 式式第29页,此课件共68页哦7.基址寻址基址寻址(1)采用专用寄存器作基址寄存器采用专用寄存器作基址寄存器EA=(B
27、R)+ABR 为基址寄存器为基址寄存器OPA操作数操作数主存主存寻址特征寻址特征ALUBR 可扩大寻址范围可扩大寻址范围 便于程序搬家便于程序搬家 BR 内容由操作系统或管理程序确定内容由操作系统或管理程序确定 在程序的执行过程中在程序的执行过程中 BR 内容不变,形式地址内容不变,形式地址 A 可变可变7.3 7.3 寻寻 址址 方方 式式第30页,此课件共68页哦(2)采用通用寄存器作基址寄存器采用通用寄存器作基址寄存器操作数操作数主存主存寻址特征寻址特征ALUOPR0AR0 作基址寄存器作基址寄存器 由用户指定哪个通用寄存器作为基址寄存器由用户指定哪个通用寄存器作为基址寄存器通用寄存器通
28、用寄存器R0Rn-1R1 基址寄存器的内容由操作系统确定基址寄存器的内容由操作系统确定 在程序的执行过程中在程序的执行过程中 R0 内容不变,形式地址内容不变,形式地址 A 可变可变7.3 7.3 寻寻 址址 方方 式式第31页,此课件共68页哦8.变址寻址变址寻址EA=(IX)+AOPA操作数操作数主存主存寻址特征寻址特征ALUIX 可扩大寻址范围可扩大寻址范围 便于处理数组问题便于处理数组问题 IX 的内容由用户给定的内容由用户给定 IX 为变址寄存器(专用)为变址寄存器(专用)在程序的执行过程中在程序的执行过程中 IX 内容可变,形式地址内容可变,形式地址 A 不变不变通用寄存器也可以作
29、为变址寄存器通用寄存器也可以作为变址寄存器7.3 7.3 寻寻 址址 方方 式式第32页,此课件共68页哦例例 设数据块首地址为设数据块首地址为 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.3 7.3 寻寻 址址 方方 式式第33页,
30、此课件共68页哦9.相对寻址相对寻址 EA=(PC)+AA 是相对于当前指令的位移量(可正可负,补码)是相对于当前指令的位移量(可正可负,补码)A 的位数决定操作数的寻址范围的位数决定操作数的寻址范围 程序浮动程序浮动 广泛用于转移指令广泛用于转移指令操作数操作数寻址特征寻址特征ALUOPA相对距离相对距离 A1000PC主存主存1000AOP7.3 7.3 寻寻 址址 方方 式式第34页,此课件共68页哦(1)相对寻址举例相对寻址举例M 随程序所在存储空间的位置不同而不同随程序所在存储空间的位置不同而不同EA=(M+3)3=M 3*LDA#0LDX#0ADD X,DINXCPX#NBNE M
31、DIV#NSTA ANSMM+1M+2M+3而指令而指令 BNE 与与 指令指令 ADD X,D 相对位移量不变相对位移量不变 3*指令指令 BNE操作数的有效地址为操作数的有效地址为 3*相对寻址特征相对寻址特征*7.3 7.3 寻寻 址址 方方 式式第35页,此课件共68页哦(2)按字节寻址的相对寻址举例按字节寻址的相对寻址举例OP位移量位移量2000 H2008 H8JMP*+8OP06 H2000 H2008 H8设设 当前指令地址当前指令地址 PC=2000H转移后的目的地址为转移后的目的地址为 2008H因为因为 取出取出 JMP*+8 后后 PC=2002H二字节指令二字节指令故
32、故 JMP*+8 指令指令 的第二字节为的第二字节为 2008H-2002H=6H7.3 7.3 寻寻 址址 方方 式式第36页,此课件共68页哦10.堆栈寻址堆栈寻址(1)堆栈的特点堆栈的特点堆栈堆栈硬堆栈硬堆栈软堆栈软堆栈多个寄存器多个寄存器指定的存储空间指定的存储空间先进后出先进后出(一个入出口)(一个入出口)栈顶地址栈顶地址 由由 SP 指出指出 11FFFH+12000 H进栈进栈 (SP)1 SP出栈出栈 (SP)+1 SP栈顶栈顶栈底栈底2000 HSP2000 H1FFF HSP1FFFH栈顶栈顶栈底栈底进栈进栈出栈出栈 1FFF H栈顶栈顶 2000 H栈顶栈顶7.3 7.3
33、 寻寻 址址 方方 式式第37页,此课件共68页哦(2)堆栈寻址举例堆栈寻址举例15200HACCSPX栈顶栈顶200H栈底栈底主存主存151FFHACCSP15栈顶栈顶200H栈底栈底主存主存X1FFHPUSH A 前前PUSH A 后后POP A 前前POP A 后后Y1FFHACCSPX栈顶栈顶200H栈底栈底主存主存151FFH15200HACCSP栈顶栈顶200H栈底栈底主存主存X157.3 7.3 寻寻 址址 方方 式式第38页,此课件共68页哦(3)SP 的修改与主存编址方法有关的修改与主存编址方法有关 按按 字字 编址编址进栈进栈出栈出栈(SP)1 SP(SP)+1 SP 按按
34、 字节字节 编址编址存储字长存储字长 16 位位进栈进栈出栈出栈(SP)2 SP(SP)+2 SP存储字长存储字长 32 位位进栈进栈出栈出栈(SP)4 SP(SP)+4 SP7.3 7.3 寻寻 址址 方方 式式第39页,此课件共68页哦7.4 7.4 指令格式举例指令格式举例一、设计指令格式时应考虑的各种因素一、设计指令格式时应考虑的各种因素1.指令系统的指令系统的 兼容性兼容性(向上兼容)(向上兼容)2.其他因素其他因素操作类型操作类型数据类型数据类型指令格式指令格式包括指令个数及操作的难易程度包括指令个数及操作的难易程度指令字长、操作码位数指令字长、操作码位数寻址方式寻址方式寄存器个数
35、寄存器个数地址码位数、地址个数地址码位数、地址个数寻址方式、是否采用扩展操作码寻址方式、是否采用扩展操作码第40页,此课件共68页哦二、指令格式举例二、指令格式举例1.PDP 8指令字长固定指令字长固定 12 位位操作码操作码 间间 页页 地址码地址码访存类指令访存类指令0235411寄存器类指令寄存器类指令 1 1 1 辅助操作码辅助操作码02 311I/O 类指令类指令 1 1 0 设备设备 操作码操作码02 311987.4 7.4 指令格式举例指令格式举例第41页,此课件共68页哦2.PDP 11源地址源地址OP4 6 6 16 16目的地址目的地址存储器地址存储器地址1存储器地址存储
36、器地址2OP10 6 16目的地址目的地址存储器地址存储器地址目的地址目的地址4 6 6源地址源地址OP 10 6目的地址目的地址OP CODE16OP CODE指令字长有指令字长有 16 位、位、32 位、位、48 位三种位三种零地址零地址(16 位位)一地址一地址(16 位位)二地址二地址 R R(16 位位)二地址二地址 R M(32 位位)二地址二地址 M M(48 位位)扩展操作码技术扩展操作码技术7.4 7.4 指令格式举例指令格式举例第42页,此课件共68页哦3.IBM 360OPR1R2 RR格式格式8 4 4OPR1XBD RX格式格式8 4 4 4 12OPR1R3BD R
37、S格式格式8 4 4 4 12OPBDI SI格式格式8 8 4 12OPB1D1LB2D2 SS格式格式8 8 4 12 4 12二地址二地址 R R基址加变址寻址基址加变址寻址二地址二地址 R M三地址三地址 R M基址寻址基址寻址二地址二地址 M M 基址寻址基址寻址基址寻址基址寻址立即数立即数 M7.4 7.4 指令格式举例指令格式举例第43页,此课件共68页哦4.Intel 8086(1)指令字长指令字长(2)地址格式地址格式1 6 个字节个字节MOV WORD PTR0204,0138H 6 字节字节INC AX 1 字节字节一地址一地址NOP 1 字节字节CALL段内调用段内调用
38、 3 字节字节零地址零地址 5 字节字节段间调用段间调用寄存器寄存器 寄存器寄存器寄存器寄存器 立即数立即数寄存器寄存器 存储器存储器ADD AX,BX 2 字节字节ADD AX,3048H 4 字节字节ADD AX,3048H 3 字节字节二地址二地址CALL7.4 7.4 指令格式举例指令格式举例第44页,此课件共68页哦7.5 7.5 RISC RISC 技技 术术 一、一、RISC 的产生和发展的产生和发展 80 20 规律规律 典型程序中典型程序中 80%的语句仅仅使的语句仅仅使 用处理机中用处理机中 20%的指令的指令 执行频度高的简单指令,因复杂指令执行频度高的简单指令,因复杂指
39、令 的存在,执行速度无法提高的存在,执行速度无法提高RISC(Reduced Instruction Set Computer)CISC(Complex Instruction Set Computer)RISC技术技术 能否用能否用 20%的简单指令组合不常用的的简单指令组合不常用的 80%的指令功能的指令功能?第45页,此课件共68页哦二、二、RISC 的主要特征的主要特征 选用使用频率较高的一些选用使用频率较高的一些 简单指令简单指令 复杂指令的功能由简单指令来组合复杂指令的功能由简单指令来组合 指令指令 长度固定长度固定 只有只有 LOAD/STORE 指令访存指令访存 流水技术流水技
40、术 一个时钟周期一个时钟周期 内完成一条指令内完成一条指令 组合逻辑组合逻辑 实现控制器实现控制器 多个多个 通用通用 寄存器寄存器 采用采用 优化优化 的的 编译编译 程序程序 7.5 7.5 RISC RISC 技技 术术 第46页,此课件共68页哦主要特征对比 CISCRISC指令系统复杂,庞大简单,精简指令数目一般大于200一般小于100指令格式寻址方式一般大于4一般小于4指令字长不固定等长可访存指令不加限制只有LOAD/STORE各种指令使用频率相差很大相差不大指令执行时间相差很大多数在一个周期内完成优化编译实现很难较容易程序源代码长度较短较长控制器实现方式大多数为微程序控制大多数为
41、硬布线控制软件系统开发时间较短较长7.5 7.5 RISC RISC 技技 术术 第47页,此课件共68页哦(一)单项选择题(一)单项选择题1.指令系统采用不同寻址方式的目的是指令系统采用不同寻址方式的目的是 B 。A.实现存贮程序和程序控制;实现存贮程序和程序控制;B.缩短指令长度,扩大寻址空间,提高编程灵活性;缩短指令长度,扩大寻址空间,提高编程灵活性;C.可直接访问外存;可直接访问外存;D.提供扩展操作码的可能并降低指令译码的难度;提供扩展操作码的可能并降低指令译码的难度;2.以下四种类型指令中,执行时间最长的是以下四种类型指令中,执行时间最长的是 C 。A.RR型指令型指令 B.RS型
42、指令型指令 C.SS型指令型指令 D.程序控制指令程序控制指令3.指令周期是指指令周期是指 C 。A.CPU从主存取出一条指令的时间从主存取出一条指令的时间B.CPU执行一条指令的时间执行一条指令的时间 C.CPU从主存取出一条指令加上从主存取出一条指令加上CPU执行这条指令的时间执行这条指令的时间 D.时钟周期时间时钟周期时间 48第48页,此课件共68页哦4.变址寻址方式中,操作数的有效地址等于变址寻址方式中,操作数的有效地址等于 C 。A.基值寄存器内容加上形式地址(位移量)基值寄存器内容加上形式地址(位移量)B.堆栈指示器内容加上形式地址(位移量)堆栈指示器内容加上形式地址(位移量)C
43、.变址寄存器内容加上形式地址(位移量)变址寄存器内容加上形式地址(位移量)D.程序记数器内容加上形式地址(位移量)程序记数器内容加上形式地址(位移量)5.寄存器间接寻址方式中,操作数处在寄存器间接寻址方式中,操作数处在 B 。A.通用寄存器通用寄存器 B.主存单元主存单元 C.程序计数器程序计数器 D.堆栈堆栈6.在指令格式中采用扩展码的设计方案是为了在指令格式中采用扩展码的设计方案是为了 C 。A.减少指令字长度减少指令字长度 B.增加指令字长度增加指令字长度 C.保持指令字长度不变而增加指令操作的数量保持指令字长度不变而增加指令操作的数量 D.保持指令字长度不变而增加寻址空间保持指令字长度
44、不变而增加寻址空间7.条件转移指令执行时所依据的条件来自条件转移指令执行时所依据的条件来自 B 。A.指令寄存器指令寄存器 B.标志寄存器标志寄存器 C.程序计数器程序计数器 D.地址寄存器地址寄存器49第49页,此课件共68页哦8.CPU中的程序计数器中的程序计数器PC中存放的是中存放的是 B 。A.指令指令 B.指令地址指令地址 C.操作数操作数 D.操作数地址操作数地址9.扩展操作码是扩展操作码是 D 。A.操作码字段外辅助操作字段的代码操作码字段外辅助操作字段的代码 B.操作码字段中用来进行指令分类的代码操作码字段中用来进行指令分类的代码C.指令格式中不同字段设置的操作码指令格式中不同
45、字段设置的操作码D.操作码的长度随地址数的减少而增加操作码的长度随地址数的减少而增加,不同的地址数指令可以有不同的操作码不同的地址数指令可以有不同的操作码长度长度10.为了缩短指令中某个地址段的位数为了缩短指令中某个地址段的位数,有效的方法是采用有效的方法是采用 D 。A.立即寻址立即寻址 B.变址寻址变址寻址 C.间接寻址间接寻址 D.寄存器寻址寄存器寻址11.零地址指令的操作数一般隐含在零地址指令的操作数一般隐含在 C 。A.磁盘中磁盘中 B.磁带中磁带中 C.寄存器中寄存器中 D.光盘中光盘中50第50页,此课件共68页哦12.假设寄存器中假设寄存器中R中的数值为中的数值为200,主存地
46、址为主存地址为200和和300的地址单元中存放的内容分的地址单元中存放的内容分别是别是300和和400,则则 D 方式下访问到的操作数是方式下访问到的操作数是200。A.立即寻址立即寻址 B.寄存器间接寻址寄存器间接寻址(R)C.存储器间接寻址存储器间接寻址(200)D.寄存器寻址寄存器寻址13.在控制器中在控制器中,必须有一个部件能提供指令在内存中的地址必须有一个部件能提供指令在内存中的地址,服务于读取指令服务于读取指令,并接收并接收下条准备执行的指令地址下条准备执行的指令地址,这个部件是这个部件是 C 。A.IP B.IR C.PC D.AR14.程序计数器和指令寄存器的位数各取决于程序计
47、数器和指令寄存器的位数各取决于 B 。A机器字长,存储器的容量机器字长,存储器的容量 B.存储器的容量,指令字长存储器的容量,指令字长C指令字长,机器字长指令字长,机器字长 D地址总线宽度,存储容量地址总线宽度,存储容量15ADD R0,R1 加法指令按操作数的个数分,属于加法指令按操作数的个数分,属于 B 。A单操作数单操作数 B双操作数双操作数 C无操作数无操作数 D多操作数多操作数 51第51页,此课件共68页哦16 基址寻址中,操作数的有效地址基址寻址中,操作数的有效地址 A 。A 基址寄存器内容加上形式地址(偏移量)基址寄存器内容加上形式地址(偏移量)B 堆栈指示器内容加上形式地址堆
48、栈指示器内容加上形式地址C 变址寄存器内容加上形式地址变址寄存器内容加上形式地址 D 程序计数器内容加上形式地址程序计数器内容加上形式地址17控制器的指令部件是指控制器的指令部件是指 A 。A.程序计数器程序计数器PC、指令寄存器、指令寄存器IR和指令译码器和指令译码器IDB.微程序控制器微程序控制器 C.程序状态字程序状态字PSW、指令寄存器、指令寄存器IR和指令译码器和指令译码器ID52第52页,此课件共68页哦(二)综合应用题(二)综合应用题1指令和数据都存于存储器中,计算机如何区分它们?指令和数据都存于存储器中,计算机如何区分它们?【解解】通常完成一条指令可分为取指阶段和执行阶段。在取
49、指阶段通过访通常完成一条指令可分为取指阶段和执行阶段。在取指阶段通过访问存储器可将指令取出;在执行阶段通过访问存储器可将操作数取出。这样,问存储器可将指令取出;在执行阶段通过访问存储器可将操作数取出。这样,虽然指令和数据都是以虽然指令和数据都是以0、1代码形式存在存储器中,但代码形式存在存储器中,但CPU可以判断出在可以判断出在取指阶段访问存储器取出的取指阶段访问存储器取出的0、l代码是指令;在执行阶段访存取出的代码是指令;在执行阶段访存取出的0、l代码是数据。代码是数据。例如,完成例如,完成ADD M指令需两次访存:第一次访存是取指阶段,指令需两次访存:第一次访存是取指阶段,CPU根据根据P
50、C给出的地址取出指令;第二次访存是执行阶段,给出的地址取出指令;第二次访存是执行阶段,CPU根据存于根据存于IR的指令中的指令中M给出的地址取出操作数。可见,给出的地址取出操作数。可见,CPU就是根据取指阶段和执行就是根据取指阶段和执行阶段的访存性质不同来区分指令和数据的。阶段的访存性质不同来区分指令和数据的。53第53页,此课件共68页哦 2.以加法指令以加法指令ADD M(M为主存地址)为例,写出完成该指为主存地址)为例,写出完成该指令的信息流程(从取指令开始)。令的信息流程(从取指令开始)。【解解】指令指令ADD M的真实含义是将地址为的真实含义是将地址为M的存储单元中的的存储单元中的加