计组第四章-指令系统

目录

本章总览

 一、指令格式:如何用二进制表示指令。

(1)指令的基本了解。

(2)指令格式。

(2.1)四、三、二、一、零地址指令。

(2.2)定长-变长指令字结构、定长-扩展操作码。

(2.3)扩展操作码。

(3)操作类型。

 (4)本节回顾。

 二、指令寻址。

(1)数据存放。

(2)指令地址寻址。

三、数据寻址。

(1)操作数类型。

(2)数据寻址方式。

(3)寻址方式特点。

(4)偏移寻址。(对形式地址进行加减法得到有效地址)

 (5)堆栈寻址。

四、CISC和RISC。

 五、本节回顾。


本章总览

计组第四章-指令系统_第1张图片

 一、指令格式:如何用二进制表示指令。

(1)指令的基本了解。

指令(机器指令):计算机执行操作的行为(加减乘除等等)。

指令集:计算机中所有指令的集合。

指令:操作码+地址码。

操作码:加减乘除等。

地址码:操作数或下一条指令的地址。

指令字长:(操作码+地址码)的位数长度。

注意:每台计算机的指令可能不一样。(如0001在这台可能是加法,另一台可能不一样)

计组第四章-指令系统_第2张图片计组第四章-指令系统_第3张图片

(2)指令格式。

(2.1)四、三、二、一、零地址指令。

四地址指令:操作码+地址码+地址码+地址码+下条指令地址码。

三地址指令:操作码+地址码+地址码+地址码。(指令、数据分开放一起,下个地址是下条指令)

二地址指令:操作码+地址码+地址码。

一地址指令:操作码+地址码。

零地址指令:操作码。(只需要访问指令,操作数不在内存,结果也不存回内存)

注意:地址码(操作数地址)+地址码(操作数地址)+地址码(计算结果存回的内存地址)+下条指令地址码。

计组第四章-指令系统_第4张图片计组第四章-指令系统_第5张图片

(2.2)定长-变长指令字结构、定长-扩展操作码。

定长指令字结构:指令长度固定。

变长指令字结构:指令长度不等。

定长操作码:操作码长度固定。

扩展操作码:操作码长度可变。

 

(2.3)扩展操作码。

好处:当操作码的位数有限时,可以增加操作码的状态表示,操作码的执行方式更加多。

在操作码的留一种或几种状态,当出现这种状态:后一个地址码的二进制也当作操作码处理。

后一个地址码是操作码的时候,也可以留一种或几种状态:出现这种状态则再下一个地址码的二进制数据也要当操作码处理。

计组第四章-指令系统_第6张图片计组第四章-指令系统_第7张图片

计组第四章-指令系统_第8张图片 

(3)操作类型。

1、数据传输。

2、算数逻辑操作。

3、移位操作。

4、转移操作。

5、输入输出操作。

计组第四章-指令系统_第9张图片

 (4)本节回顾。

计组第四章-指令系统_第10张图片

 二、指令寻址。

(1)数据存放。

单字长指令:指令长度=机器长度。

半字长指令:指令长度=机器长度/2。

双字长指令:指令长度=2*机器长度。

边界对齐存储:可以减少访问次数。

计组第四章-指令系统_第11张图片

(2)指令地址寻址。

寻址分为:顺序寻址、跳跃寻址。

计组第四章-指令系统_第12张图片

三、数据寻址。

(1)操作数类型。

计组第四章-指令系统_第13张图片

(2)数据寻址方式。

计组第四章-指令系统_第14张图片

计组第四章-指令系统_第15张图片

(3)寻址方式特点。

地址码=寻址特征+形式地址。(寻址特征:表示寻址方式)

1、立即寻址:形式地址=操作数。

2、直接寻址:形式地址=内存操作数地址。

3、间接寻址:形式地址=指向 -》内存操作数地址的地址。(可能好几级地址)

4、寄存器寻址:形式地址=CPU寄存器的操作数地址。

5、寄存器间接寻址:形式地址=指向 -》内存操作数地址的CPU寄存器地址。(可能好几级地址)

6、隐含寻址:隐含有一个操作数在ACC寄存器中。(如把操作数取出来和ACC中的相加结果放回ACC中)

计组第四章-指令系统_第16张图片计组第四章-指令系统_第17张图片

 计组第四章-指令系统_第18张图片计组第四章-指令系统_第19张图片

 计组第四章-指令系统_第20张图片计组第四章-指令系统_第21张图片

(4)偏移寻址。(对形式地址进行加减法得到有效地址)

编制浮动程序:不管程序放到内存哪个地方,都能正常运行。

 1、基址寻址:基址寄存器里的地址(基地址)+形式地址(偏移量)=有效地址。

特点:程序的内存地址修改后,只需要改变基址寄存器里的地址(程序的起始地址)。

计组第四章-指令系统_第22张图片

 2、变址寻址:变址寄存器里的地址(偏移量)+形式地址(基地址)=有效地址。

特点:用于循环程序,变址寄存器里的地址自增1或自减1等等。

计组第四章-指令系统_第23张图片计组第四章-指令系统_第24张图片

 3、相对寻址(跟指令跳跃寻址很相似):PC(基地址)+形式地址(偏移量)=有效地址。

特点:适合用于转移指令,如把地址跳转到当前地址+40。

 计组第四章-指令系统_第25张图片计组第四章-指令系统_第26张图片

 (5)堆栈寻址。

特点:用一个指针指向栈顶元素,进行读写操作,操作数不需要访问内存。

​​​​用寄存器作为堆栈:硬堆栈。

用存储器(内存)作为堆栈:软堆栈。

 计组第四章-指令系统_第27张图片计组第四章-指令系统_第28张图片

四、CISC和RISC。

计组第四章-指令系统_第29张图片计组第四章-指令系统_第30张图片

 五、本节回顾。

计组第四章-指令系统_第31张图片

你可能感兴趣的:(计组,java)