计算机组成原理指令系统

一、机器指令
每一条 机器语言 的指令叫 机器指令

全部机器指令的 集合 叫机器的 指令系统

指令由 操作码 和 地址码 组成,指令字长 与操作码长度、操作数地址长度、操作数地址个数有关。

操作码:指明该指令要完成的操作、对什么类型的数据进行操作(有的指令系统还在此处说明了操作数的寻址方式),其长度可以固定,也可变化,操作码位数随地址数减少而增加。
地址码:指出指令操作数地址、结果地址、下一条指令地址。
注:

操作吗并非一定如上图所示,集中在一个区域,可以分散在指令不同字段中。
使用频率高的指令用短操作码,使用频率低的用长操作码,可缩短编译时间
(1)四地址指令
格式:

在执行过程中,访存 4 次,指令直接寻址范围太小

由于程序计数器 PC 有计数功能,可自动形成下一条指令地址,故可得三地址指令。

(2)三地址指令
格式:

在执行过程中,访存 4 次。

若将中间计算结果放入 CPU 寄存器中(而不放入主存),则可省去结果地址,得到二地址指令。

(3)二地址指令
格式:

在执行过程中,访存 3 次。

若将一位操作数直接放于运算器 ACC 中,则得到一地址指令。

(4)一地址指令
格式:

在执行过程中,访存 2 次。

(5)零地址指令
无地址码,如 进栈出栈指令。

二、操作数类型和操作类型
1.操作数类型
地址:无符号整数
数字:定点数、浮点数、十进制数
字符:ASCII
逻辑数据
2.数据存放方式
任意位置开始:浪费存储空间,访存时间短
每次从一个字起始位置开始
按“边界对准”存储:从地址整数倍位置开始访问。如下图:

3.操作类型
数据传送
算数逻辑运算
移位:分算术移位、逻辑移位、循环移位
转移
输入输出(对于 I/O 单独编址的计算机,才有输入输出指令)
其他:如等待指令、停机指令等
转移:

分无条件转移、条件转移、调用与返回、陷阱与陷阱指令

调用与返回指令通常配合使用
陷阱指令通常不提供给用户,作为隐指令,在有意外故障时由 CPU 自动产生并执行。
三、寻址方式
寻址方式指确定本条指令的数据地址,以及下一条指令的地址的方法。

分为:

指令寻址
数据寻址
1.指令寻址
顺序寻址:PC 自动加 1 ,形成下一条指令地址(注意,此处 “1”的含义,若指令字长 32 字节,存储单元 8 字节,则此时 PC+4)
跳跃寻址:由转移指令指出
2.数据寻址


(1)立即寻址
特点:形式地址 A 不是地址,而是操作数本身,又称为立即数。

执行阶段不必访存。

(2)直接寻址
特点:形式地址 A 就是有效地址

执行阶段只访存 1 次,但是必须通过修改 A 的值才可修改操作数地址。

(3)隐含寻址
特点:指令字中补明显给出操作数地址,地址隐含于操作码或某个寄存器

 

5)寄存器(直接)寻址

A 为寄存器编号,操作数在 A 所指寄存器中。

执行时无需访存,执行时间短。

(6)寄存器间接寻址

A 为寄存器编号, A 所指寄存器中存有效地址。

执行阶段仍需访存,便于编写循环程序。

(7)基址寻址

有效地址 EA = 变址寄存器 IX 中地址 + A

与基址寻址不同:

寄存器的内容由操作系统、管理程序确定,A 可变。
变址寄存器内容由用户确基址定,A 不可变。,主要用于处理数组问题。
(9)相对寻址
其有效地址为程序计数器 PC 中的地址,与指令字中的形式地址 A 相加而得。

(10)堆栈寻址
堆栈寻址指令字中没有形式代码字段,属于零地址指令。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值