【计组】指令系统笔记整理

指令格式

指令通常包括操作码地址码两部分。

指令长度是一个指令的二进制位数。

指令分类:

组成含义
零地址指令 O P \mathrm{OP} OP无操作数或堆栈指令
一地址指令 O P , A 1 \mathrm{OP,A_1} OP,A1结果存入原地址或者 A C C \mathrm{ACC} ACC
二地址指令 O P , A 1 , A 2 \mathrm{OP,A_1,A_2} OP,A1,A2执行运算,结果一般存入 A 1 \mathrm{A_1} A1
三地址指令 O P , A 1 , A 2 , A 3 \mathrm{OP,A_1,A_2,A_3} OP,A1,A2,A3执行运算,结果一般存入 A 3 \mathrm{A_3} A3
四地址指令 O P , A 1 , A 2 , A 3 , A 4 \mathrm{OP,A_1,A_2,A_3,A_4} OP,A1,A2,A3,A4执行运算,结果一般存入 A 3 \mathrm{A_3} A3 A 4 \mathrm{A_4} A4一般是下一条指令的地址

扩展操作码是指将地址码多的指令分配较短的操作码。

指令类型

  1. 数据传送;
  2. 算术逻辑运算;
  3. 移位;
  4. 转移;
  5. 输入输出。

指令寻址方式

指令寻址

顺序寻址

下个指令为程序计数器加1。

跳跃寻址

由当前指令给出下一个指令的地址。

数据寻址

隐含寻址

累加器等寄存器会隐含地被某些指令使用。

立即数寻址

操作数本身在指令中(或理解为地址为指令寄存器中的某个部分)。

直接寻址

指令中的地址就是内存中的地址。

间接寻址

不直接存储操作数的地址,而是存储操作数的地址的地址(理解为存储操作数的指针或者多级指针)。

寄存器寻址

指令中的代表寄存器的编号。

寄存器间接寻址

间接寻址,但是用寄存器存储地址。

基址寻址

间接寻址,但是使用基址寄存器存储操作数的地址,并把获得的地址加上偏移量作为最终的操作数的地址。

相对寻址

基址寻址,但用的是程序计数器。

变址寻址

基址寻址,但用的是变址寄存器,在使用中会改变变址寄存器的值。

堆栈寻址

间接寻址,但使用堆栈指针寄存器,读取和写入时会修改堆栈指针。

CSIC与RISC

CISCRISC
指令数量庞大只有使用频率最高的一些简单指令
指令长度不固定固定
指令格式
寻址方式
访存指令只有存取指令可以访存
通用寄存器数量
采用技术大多数采用微程序控制采用流水线技术,大部分指令在一个时钟周期内完成
对编译优化支持困难支持编译优化
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值