计算机组成原理-指令系统

上传人:kms****20 文档编号:57081724 上传时间:2018-10-18 格式:PPT 页数:39 大小:2.35MB
返回 下载 相关 举报
计算机组成原理-指令系统_第1页
第1页 / 共39页
计算机组成原理-指令系统_第2页
第2页 / 共39页
计算机组成原理-指令系统_第3页
第3页 / 共39页
计算机组成原理-指令系统_第4页
第4页 / 共39页
计算机组成原理-指令系统_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《计算机组成原理-指令系统》由会员分享,可在线阅读,更多相关《计算机组成原理-指令系统(39页珍藏版)》请在金锄头文库上搜索。

1、College of Computer Science & Technology,指 令 系 统,鲁东大学 LUDONG UNIVERSITY,指 令 系 统,操作和操作数类型,机器指令的概念,指令的一般格式,寻址方式,鲁东大学 LUDONG UNIVERSITY,指 令 系 统,1.机器指令,什么是机器指令?,什么是指令系统?,能够被机器直接理解并执行的语言-机器语言,机器语言的语句-机器指令,机器能够理解的全部机器指令的集合称为该机器的指令系统,指令系统-软/硬件界面 反映机器的功能 不同CPU有所不同,鲁东大学 LUDONG UNIVERSITY,指 令 系 统,2.指令的一般格式,机器

2、指令,操作码字段,地址码字段,操作码,作用:用于指明操作的类型;,指令必须有操作码字段,该字段长度的意义:决定了指令系统能够容纳的指令条数,字段长度规定:,定长操作码指令系统,变长操作码指令系统,鲁东大学 LUDONG UNIVERSITY,指令格式-操作码字段,操作码字段固定长度为n位,则:该指令系统最多可容纳2n条指令,特点: (优)操作码译码简单,定长操作码指令系统,(缺)随着地址码增加,指令长度增加,鲁东大学 LUDONG UNIVERSITY,指令格式-操作码字段,变长操作码指令系统 -随着地址码长度的变化,操作码长度变化,三地址指令格式,三地址指令15条,二地址指令格式,二地址指令

3、15条,1111,一地址指令格式,一地址指令15条,零地址指令格式,零地址指令16条,操作码随地址码的 减少而增加,常用技术: 操作码扩展技术,-特点:与定长刚好相反,鲁东大学 LUDONG UNIVERSITY,操作码扩展技术,EX1:计算机字长16bit,设有单地址指令和双地址指令两类,若每个地址码字段为6位且双地址指令有X条,问单地址指令最多有多少条?,典型操作码扩展题目,画出所有的指令格式,二地址指令,一地址指令,思考方向:地址码多地址码少 操作码扩展方向,分析操作码使用情况,共有24,使用X,剩余24-X用于扩展,前4位有24-X种,后6位有26,故:全部使用有(24-X)26,鲁东

4、大学 LUDONG UNIVERSITY,操作码扩展技术,EX2:假设指令字长16位,操作数的地址码为6位,指令有零地址、一地址、二地址三种格式。要求: (1) 设操作码固定,若零地址有P种,一地址指令有Q种,则二地址最多有多少种? (2) 采用操作码扩展技术,若二地址指令有X种,零地址指令有Y种,则一地址指令最多有多少种?,对定长操作码指令格式,应满足最长地址码要求 故:指令格式为,OP 4bit,指令系统能容纳最多24条指令, 二地址指令最多有24-P-Q种,二地址指令格式:,一地址指令格式:,零地址指令格式:,扩展6bit,扩展6bit,X种,Y种,剩余24-X,设为Z,剩余(24-X)

5、26-Z,(24-X)26-Z) 26=Y,Z= (24-X)26- Y 2-6,强调:操作码扩展技术思考方向 必须是操作码增长方向,鲁东大学 LUDONG UNIVERSITY,操作码扩展技术,EX2.机器指令长度为16位,地址码长度为6位,包含单地址指令,双地址指令和无地址指令,试问单地址指令最多有多少条?此时双地址指令和无地址指令各多少条?,二地址指令,一地址指令,画出所有的指令格式,零地址指令,分析操作码使用情况,单地址指令最多的情况 二地址指令最少为1条 用于零地址指令扩展的编码最少为1个,此时最多为1条 剩余编码24-1,设为X条,则剩余编码 (24-1)26-X=1,此时最多为1

6、26条,鲁东大学 LUDONG UNIVERSITY,指令格式-地址码字段,地址码,2.指令的一般格式,作用:用于指明操作数的地址;,分析指令地址码类型, 四地址指令, 三地址指令, 二地址指令, 一地址指令,OP,A1,A2,A3,A4,A1:源操作数1的地址,A2:源操作数2的地址,A3:目的操作数的地址,执行操作: (A1)op(A2)(A3),A4 ?,-下一条指令的地址,在执行操作后,则通过(A4)PC 指向下一条指令, 程序顺序执行,PC+1PC, A4字段可以去掉, 结果可以存放在其中一个源地址中, 源2和目的可以使用一地址,A3省去,A2: 源2/目的操作数地址,执行操作: (

7、A1)op(A2)(A2),如果其中一个源操作数隐含地址,则可继续减少地址码A2, 零地址指令,或者另一个操作数隐含存放 如存放在ACC中,执行操作: (A1)op(ACC)ACC或者(A1),只需要1个操作数,执行操作: op(A1) (A1),指令不需要操作数,如:NOP HLT,或者操作数隐含,如:CBW,CWD,鲁东大学 LUDONG UNIVERSITY,指令格式-指令字长,指令字长,- 指令的长度,= 操作码长度+地址码1长度+地址码2长度+地址码n长度,机器字长,- CPU能够一次完成的最大运算位数,= ALU寄存器的长度,存储字长,- 访存一次,能够取出的最多数据位数,= 数据

8、总线的根数,指令字长=存储字长:访存一次,即可取出一条指令,指令字长通常 n Byte,访存最小单位为Byte,鲁东大学 LUDONG UNIVERSITY,指令的操作数类型,3.操作数和操作的类型,I. 操作数的类型,-地址、数字、字符、逻辑数据,II. 数据在内存中的存放方式,字长 机器字长,机器可处理的数据字长 字节、半字(16b)、字(32b)、双字(64b),不同机器字的长度可能有所不同,存储字长 数据总线的位数,各种长度的数据在存储器中存放规则边界对准原则,若 存储的数据长度为N byte 则 该数据应存放起始地址应为N的倍数,同一数据中字节存放次序大端对齐/小端对齐,鲁东大学 L

9、UDONG UNIVERSITY,指令的操作类型,III. 操作类型,(1)数据传送,(2) 算术逻辑操作,(3) 移位操作,(4) 控制转移,(5) 输入输出,8086: MOV、XCHG、PUSH、POP、STC、CLC,8086: 算术-ADD、ADC、SUB、SBB、INC、DEC、MUL、DIV,逻辑-AND、OR、XOR、NOT,8086: SAL、SAH、SHL、SHR、ROL、ROR、RCL、RCR,8086: JMP、J条件、CALL、RET、INT n、IRET,8086: IN、OUT,(6) 其他,8086: NOP、HLT、WAIT,鲁东大学 LUDONG UNIVE

10、RSITY,边界对准原则,EX:存储字长32位,按字节编址,访存一次,最多可取出图示一行=存储字的4个字节,边界对准:, 字节 可存放在任意位置, 字(32b),取数访存次数均为1次, 半字(16b),半字=2B 应以2的倍数作起始地址,即xxxx0,半字1st,半字2nd, 双字(64b),字=4B 应以4的倍数作起始地址,即xxxx00,字=8B 应以8的倍数作起始地址,即xxxx000,字4th,双字8th,最多2次,1次,2次,1次,3次,2次,可有效减少访存次数,鲁东大学 LUDONG UNIVERSITY,大端对齐/小端对齐,大端对齐,字1stB,字2ndB,字3rdB,字4thB

11、,高字节存放在低地址,起始地址=最高字节地址,小端对齐,字4thB,字3rdB,字2ndB,字1stB,高字节存放在高地址,起始地址=最低字节地址,(常用),鲁东大学 LUDONG UNIVERSITY,寻址方式,4.寻址方式,-确定操作数或者下一条指令地址的方法,I. 指令寻址方式,(1)顺序寻址,(2)跳跃寻址,II. 数据寻址方式,OP,地址码,寻址特征位,形式地址A,形式地址A:指令中给出的地址,有效地址EA:操作数的真实地址,寻址特征位:指明操作数采用的寻址方式,EA由形式地址A根据寻址方式采用不同的方式确定,鲁东大学 LUDONG UNIVERSITY,数据寻址方式,II. 数据寻

12、址方式,(1)立即寻址,(2)寄存器寻址,(4)直接寻址,(3)隐含寻址,(5)间接寻址,(7)基址寻址,(8)变址寻址,(6)寄存器间接寻址,(9)相对寻址,非访存寻址方式,访存寻址方式,控制转移寻址方式,访存次数,寻址空间,有效地址EA计算方法,鲁东大学 LUDONG UNIVERSITY,数据寻址方式,(1)立即数寻址方式,-操作数直接存放在指令中,形式地址A即为操作数,优点:指令执行时,不需要访存取操作数,限制:形式地址字段的长度限制了操作数的范围,操作数通常为补码形式,EX:形式地址字段长度为N bit,则采用立即数寻址方式 操作数的范围限制在-2N-12N-1-1之间,鲁东大学 L

13、UDONG UNIVERSITY,数据寻址方式,(2)寄存器寻址方式 -操作数存放在寄存器中,指令中给出寄存器号,操作数,有效地址 EA=Ri,指令执行阶段 取操作数 不需要访存,优点:取数不需访存,速度快, 寄存器个数有限,Ri字段短 有效缩短指令字长,鲁东大学 LUDONG UNIVERSITY,数据寻址方式,(3)隐含寻址方式 -指令中不给出操作数地址 操作数隐含存放在某个特殊寄存器中,如累加器ACC,ACC,操作数1采用寄存器寻址方式,操作数2采用隐含寻址方式,有效地址 EA=隐含寄存器号 常用ACC,指令执行阶段 取操作数 不需要访存,优点:减少一个地址码,缩短指令字长,鲁东大学 L

14、UDONG UNIVERSITY,数据寻址方式,(4)直接寻址方式 -指令中直接给出操作数的有效地址,操作数,有效地址 EA=A,指令执行阶段,取操作数,访存1次,操作数寻址空间: 设A为 N 位,则直接寻址寻址空间为 2N 地址单元,优点:寻址过程简单,缺点:修改操作数地址需要修改指令;访存范围受限,鲁东大学 LUDONG UNIVERSITY,数据寻址方式,(5)间址寻址方式 -指令中给出存放操作数地址的存储单元的有效地址,EA,操作数,EA,一次间址,有效地址 EA=(A),指令执行阶段,为取操作数,需访存2次,操作数寻址空间:寻址空间取决于EA的长度 若A长 N 位,主存字长 L 位

15、一次间址寻址空间: 2L 直接寻址空间:2N N L ,所以间址能够扩大访存范围,鲁东大学 LUDONG UNIVERSITY,A2,数据寻址方式,A1,操作数,EA,多次间址,A2,EA,A1,需要使用1位标志位指明当前是否为EA,EA的长度减少1位 若主存字长为L 则多次间址寻址空间 2L-1,多次间址和相对寻址结合 可用于扩大寻址空间,鲁东大学 LUDONG UNIVERSITY,数据寻址方式,间址的应用,为间址 A并非返回地址 (A)是返回地址,(A)=80,(A)=221,间址-修改操作对象时,不需要修改指令,便于编程,增加访存次数,速度慢,鲁东大学 LUDONG UNIVERSIT

16、Y,数据寻址方式,(6)寄存器间接寻址 -指令中给出存放操作数有效地址的寄存器的编号,操作数,注意与寄存器寻址区别,EA,操作数,有效地址 EA=(Ri),指令执行阶段,取操作数,访存1次,操作数寻址空间:由存放EA的寄存器长度决定 设Ri为 m 位,则直接寻址寻址空间为 2m 地址单元,优点:具有间址的优点,但比间址访存次数少一次,鲁东大学 LUDONG UNIVERSITY,数据寻址方式,(7)基址寻址 -操作数的有效地址由基址寄存器内容与偏移量相加得到,有效地址 EA=(BR)+A,操作数,EA,BR,BR基址寄存器可以为专用寄存器,也可以指定通用寄存器,形式地址A给出的是偏移量,特点:扩大访存空间,用于多道程序管理 基址内容由管理员/操作系统指定,执行过程中不变, 基址寻址空间由偏移地址A的长度和基址寄存器共同决定 若A为N位,基址寄存器长L位,则基址寻址空间为2L+2N,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号