计算机组成原理第三章——指令系统

1.对于一般的双操作数运算类指令来说,除去操作码之外,指令还应包含第一操作数地址,第二操作数地址,操作结果保存地址,下一条指令保存地址。

2.PC用于存放指令地址,每执行一条指令,PC就自动加1。

3.执行一条三地址指令,至少需要访问四次主存。取指令;取第一操作数;取第二操作数;保存运算结果。二地址指令,同样至少需要访问四次主存。一地址指令,只需访问两次主存。第一次取指令本身,第二次取第二操作数(第一操作数与运算结果都放在累加寄存器中)。零地址指令,访问主存次数受堆栈类型影响。如果是软堆栈,则需要访问4次内存;如果是硬堆栈,则需要访问1次内存。

4.用一组专门的寄存器构成的寄存器堆栈称为硬堆栈。这种堆栈的栈顶是固定的(所以不必设置栈顶指针),各个寄存器是相互连接的。k个寄存器最多只能压入k个数据。从主存中划出一段区域来作为堆栈,这称为软堆栈。需要一个专门的硬件寄存器作为堆栈栈定指针(SP),软堆栈又分为2种:自底向上生成堆栈(向低地址方向生成),自顶向下生成堆栈(向高地址方向生成)。进栈:先修改栈指针,再将数据压入栈中。出栈:先弹出栈顶元素,再修改栈指针。

5.指令基本格式为:操作码+地址码

6.操作码分为规整型(定长编码)与非规整型(变长编码),变长编码中,不允许短码是长码的前缀,即短码不能与长码开始部分的代码相同。

7.基本的数据寻址方式:立即寻址,寄存器寻址,直接寻址,间接寻址,寄存器间接寻址,变址寻址(用于数组,字符串;面向用户),基址寻址(面向系统),相对寻址(PC;多道程序设计),页面寻址。

8.MOV指令可以实现寄存器与寄存器之间,寄存器与主存单元之间的数据传输,也可以立即将立即数传送到寄存器。(必须有一个是寄存器)

9.PUSH可以分别将寄存器,主存,段寄存器,状态标志寄存器和全部寄存器的内容嚯立即数压入到堆栈中。

10.CMP指令的功能仅设置相应的标志位。

11.指令系统也称指令集。

12.简化地址结构的基本方法是尽量利用隐地址

13.采用跳跃寻址方式可以实现程序的无条件转移和条件转移

15.RISC(精简指令系统计算机):指令条数一般小于100条,指令字长固定,只有Load与Store可以访问主存(有利于实现指令流水线),绝大多数指令在在一个周期内完成,通用寄存器数量比较多,绝大多数为组合逻辑控制(CISC为微程序控制),必须实现指令流水线。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值