第二学期:软件工程专业本科生:计算机组成原理(总复习-第七章)_第1页
第二学期:软件工程专业本科生:计算机组成原理(总复习-第七章)_第2页
第二学期:软件工程专业本科生:计算机组成原理(总复习-第七章)_第3页
第二学期:软件工程专业本科生:计算机组成原理(总复习-第七章)_第4页
第二学期:软件工程专业本科生:计算机组成原理(总复习-第七章)_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机组成原理

(总复习)厦门大学软件学院曾文华年6月6日第1页7.1机器指令7.2操作数类型和操作类型7.3寻址方式7.4指令格式举例7.5RISC技术第7章指令系统第2页7.1机器指令一、指令普通格式二、指令字长第3页一、指令普通格式

操作码字段

地址码字段1.操作码反应机器做什么操作(1)

长度固定(2)

长度可变用于指令字长较长情况,RISC如IBM370操作码8位操作码分散在指令字不一样字段中PDP-11、Intel8086、80386等第4页例7.1:假设指令字长为16位,操作数地址码为6位,指令有零地址、一地址、二地址等3种格式(1)设操作码固定,若零地址指令有P种、一地址指令有Q种,则二地址指令有多少种?(2)采取扩展操作码技术,若二地址指令有X种,零地址指令有Y种,则一地址指令最多有几个?解:(1)操作码固定,即只有4位,则:剩下二地址指令最多为16-P-Q(4位操作码+6位地址码+6位地址码)

(2)采取扩展操作码技术,则:二地址指令:XXXXA1-A6A1-A6X种一地址指令:1111XXXXXXA1-A6M种?零地址指令:1111111111XXXXXXY种一地址指令最多(24-X)*26

M种?

零地址指令最多[(24-X)*26-M]*26Y种Y=[(24-X)*26-M]*26M=(24-X)*26-Y*2-6第5页二地址指令有4种,零地址指令有64种,则一地址指令最多有1263种0000A1-A6A1-A60001A1-A6A1-A60010A1-A6A1-A60011A1-A6A1-A60100000000A1-A6……………0100111111A1-A6…………….1110000000A1-A6……………1110111111A1-A61111000000A1-A6……………1111111110A1-A61111111111000000………………11111111111111114种1263种=12*64-164种646463M=(24-X)*26-Y*2-6=(16-4)X64-1=1263

第6页7.2操作数类型和操作类型三、操作类型一、操作数类型二、数据在存放器中存放方式第7页一、操作数类型地址数字字符逻辑数无符号整数定点数、浮点数、十进制数ASCII逻辑运算二、数据在存放器中存放方式(第四章P73)字地址为低字节地址字地址为高字节地址37621540字地址04低字节04512673字地址04低字节低端对齐高端对齐第8页存放器中数据存放(存放字长为

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)边界未对准

32位64位16位第9页7.3寻址方式一、指令寻址二、数据寻址第10页寻址方式

确定本条指令

操作数地址下一条欲执行指令

指令地址指令寻址数据寻址寻址方式第11页一、指令寻址次序(PC)+1PC跳跃由转移指令指出LDA1000ADD1001DEC1200JMP7LDASUBINCSTA2500LDA1100...0123456789PC+1指令地址寻址方式指令地址指令次序寻址1次序寻址2次序寻址3跳跃寻址7次序寻址8指令执行次序为:0、1、2、3、7、8、9第12页二、数据寻址形式地址指令字中地址有效地址EA操作数真实地址约定

指令字长=存放字长=机器字长1.马上寻址

指令执行阶段不访存A位数限制了马上数范围形式地址A操作码寻址特征OP#A马上寻址特征马上数

可正可负补码形式地址A就是操作数MOVAX,

2300H第13页2.直接寻址EA=A操作数主存寻址特征LDAAAACC

执行阶段访问一次存放器A位数决定了该指令操作数寻址范围

操作数地址不易修改(必须修改A)有效地址由形式地址直接给出MOVAX,

(2300H)第14页3.隐含寻址操作数地址隐含在操作码中ADDA操作数主存寻址特征AACC暂存ALU另一个操作数隐含在ACC中如8086MUL指令被乘数隐含在AX(16位)或AL(8位)中MOVS指令源操作数地址隐含在SI中目标操作数地址隐含在DI中

指令字中少了一个地址字段,可缩短指令字长ADD

(2300H)相当于:ADDAX,(2300H)第15页4.间接寻址EA=(A)有效地址由形式地址间接提供OPA寻址特征AEA主存EAA1EAA1主存EA10

执行指令阶段2次访存

可扩大寻址范围

便于编制程序OPA寻址特征A一次间址屡次间址操作数操作数屡次访存MOVAX,

((2300))MOVAX,

(((2300)))第16页5.存放器寻址EA=Ri

执行阶段不访存,只访问存放器,执行速度快OPRi寻址特征

存放器个数有限,可缩短指令字长操作数…………R0RiRn存放器有效地址即为存放器编号MOVAX,

BX第17页EA=(Ri

)6.存放器间接寻址

有效地址在存放器中,操作数在存放器中,执行阶段访存操作数主存OPRi寻址特征

便于编制循环程序地址…………R0RiRn存放器有效地址在存放器中MOVAX,

(BX)第18页7.基址寻址(1)采取专用存放器作基址存放器EA=(BR)+ABR为基址存放器OPA操作数主存寻址特征ALUBR

可扩大寻址范围

有利于多道程序

BR内容由操作系统或管理程序确定

在程序执行过程中BR内容不变,形式地址A可变MOVAX,

(BR+23)第19页8.变址寻址EA=(IX)+AOPA操作数主存寻址特征ALUIX

可扩大寻址范围

便于处理数组问题IX内容由用户给定IX为变址存放器(专用)

在程序执行过程中IX内容可变,形式地址A不变通用存放器也能够作为变址存放器MOVAX,

(IX+23)第20页9.相对寻址EA=(PC)+AA是相对于当前指令位移量(可正可负,补码)A位数决定操作数寻址范围

程序浮动

广泛用于转移指令操作数寻址特征ALUOPA相对距离A1000PC

…主存1000AOPJMPA第21页例7.2:当前指令地址为240,要求转移到290,则转移指令第二、三字节机器码是什么?当前指令地址为240,要求转移到200,则转移指令第二、三字节机器码是什么?解:290-243=47=2FH

第二字节为2FH、第三字节为00H200-243=-43=D5H

第二字节为D5H、第三字节为FFH43=00101011(-43)原码=10101011(-43)补码=11101001=D524024200H2412432FHXXHD5HFFH第22页10.堆栈寻址(1)堆栈特点堆栈硬堆栈软堆栈多个存放器指定存放空间先进后出(一个入出口)栈顶地址由SP

指出–11FFFH+1H进栈(SP)–1SP出栈(SP)+1SP栈顶栈底HSPH……1FFFHSP1FFFH栈顶栈底进栈出栈1FFFH栈顶H栈顶第23页例7.3:子程序调用指令机器码(32位)=OP5000H;PC=H;SP=0100H;栈顶内容=2746H(1)CALL指令被读取前,PC、SP及栈顶内容各为多少?(2)CALL指令被执行后,PC、SP及栈顶内容各为多少?(3)子程序返回后,PC、SP及栈顶内容各为多少?解:(1)CALL指令被读取前,PC=H、SP=0100H、栈顶内容=2746H(2)CALL指令被执行后,PC=5000H、SP=0100H-02=00FEH、栈顶内容=H(子程序返回地址)(3)子程序返回后,PC=H、SP=0100H、栈顶内容=2746H00HOP50HOP010027H46H010027H46H00FE04H20H5000第24页7.4指令格式举例一、设计指令格式时应考虑各种原因二、指令格式举例三、指令格式设计举例第25页三、指令格式设计举例例7.4:字长16位,存放器直接寻址空间为128字,变址时位移量为-64~+63,16个通用存放器均可作为变址存放器。设计一套指令系统格式,满足以下寻址类型要求:(1)直接寻址二地址指令3条。(2)变址寻址一地址指令6条。(3)存放器寻址二地址指令8条。(4)直接寻址一地址指令12条。(5)零地址指令32条。

试问还有多少种代码未用?若安排存放器寻址一地址指令,还能容纳多少条?解:(1)直接寻址:128字->7位(2)变址寻址:-64~+63->7位(3)存放器寻址:16个存放器->4位(4)直接寻址:128字->7位(5)零地址:第26页OPA1A22770001103条OPRxA254711000…………111016条OPRiRj84411110000……………111101118条OPA97111110000…11111101112条OP161111111000000000………………111111100001111132条直接寻址二地址指令3条变址寻址一地址指令6条存放器寻址二地址指令8条直接寻址一地址指令12条零地址指令32条第27页还有(128-32)+128+128+128=480种代码未用1111111000100000…………..11111110011111111111111010000000…………..11111110111111111111111100000000…………..11111111011111111111111110000000………….1111111111111111128-32128128128第28页若安排存放器寻址一地址指令,除去末4位为存放器地址外,还可容纳30条这种指令111111100010XXXX…………..111111100111XXXX111111101000XXXX…………..111111101111XXXX111111110000XXXX…………..111111110111XXXX111111111000XXXX………….111111111111XXXX8886第29页例7.5:某机器配有基址存放器和变址存放器,采取一地址格式指令系统,允许直接和间接寻址,且指令字长、机器字长和存放字长均为16位:(1)若采取单字长指令,共能完成105种操作,则指令可直接寻址范围是多少?一次间接寻址寻址范围是多少?画出其指令格式并说明各字段含义。(2)若存放字长不变,可采取什么方式直接访问容量为16MB主存?解:(1)105种操作->操作码=7位

允许直接和间接寻址,有基址存放器和变址存放器->2位寻址特征位(4种组合)可直接寻址27=128;一次间接寻址范围是216=65536OPMAD727第30页(2)采取双字长指令

形式地址为AD1//AD2,共7+16=23位,223=8M,存放字长为16位,故能够访问16MB主存(采取双字长指令直接访问容量为16MB主存)OPMAD1727AD2第31页例7.6:某模型机共有64种操作,操作码位数固定,且有以下特点:(1)采取一地址或二地址格式。(2)有存放器寻址、直接寻址和相对寻址(-128~+127)三种寻址方式。(3)有16个通用存放器,算术运算和逻辑运算操作数均在存放器中,结果也在存放器中。(4)取数/存数指令在通用存放器和存放器之间传送数据。(5)存放器容量为1MB,按字节编址。

要求设计算术逻辑指令、取数/存数指令和相对转移指令格式,并简述理由。解:(1)算术逻辑指令格式为存放器-存放器型M为寻址模式:可反应存放器寻址、直接寻址、相对寻址三种寻址方式。OPMRj6244Ri第32页(2)取数/存数寻址为存放器-存放器型

存放器地址=A1//A2=20位,可访问1MB容量存放器

M为寻址模式OPMA1624RiA24第33页(3)相对转移指令为一地址格式A为位移量:相对寻址(-128~+127)

M为寻址模式OPMA628第34页例7.7:某机共能完成110种操作,CPU有8个通用存放器(16位),主存容量为4M字,采取存放器-存放器型指令:(1)欲使指令可直接访问主存任一地址,指令字长应取多少位?画出指令格式。(2)若在上述设计指令字中设置一寻址特征位X,且X=1表示某个存放器作基址存放器,画出指令格式。试问基址寻址可否访问主存任一单元?为何?假如不能,提出一个方案,使其可访问主存任一位置。(3)若主存容量扩大到4G字,且存放字长等于指令字长,则在不改变上述硬件结构前提下,可采取什么方法使指令可访问存放器任一位置?解:(1)欲使指令可直接访问主存任一地址,采取存放器-存放器型指令:OP=7:110种操作R=8:8个通用存放器A=22:222=4MOPRA7322第35页(2)在上述设计指令字中设置一寻址特征位X,且X=1表示某个存放器作基址存放器RB基址寻址方式不能访问主存任一单元(RB=16位、A=18位,得不到4M字地址----需要22位)可将RB存放器内容左移6位,低位补0,形成22位基地址,然后与形式地址(18位)相加,得到有效地址即可访问4M字存放器任一单元OPRA7318RBX31第36页(3)若主存容量扩大到4G字,可采取一次间接寻址即可访问存放器任一单元,因为间接寻址后得到有效地址为32位(16位+16位),232=4G第37页7.5RISC技术一、RISC产生和发展二、RISC主要特征

三、CISC主要特征

四、RISC和CISC比较

第38页一、RISC产生和发展

80—20规律

经典程序中80%语句仅仅使用处理机中20%指令表7.3IBM370机指令使用频度

执行频度高简单指令,因复杂指令存在,执行速度无法提升RISC(ReducedInstructionSetComputer)CISC(ComplexInstructionSetComputer)——RISC技术

能否用20%简单指令组合不惯用

80%指令功效?精简指令系统计算机复

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论