计算机组成原理问答4

指令系统

指令格式

指令=操作码+地址码(可能有0~4个)

机器字长:与CPU有关;存储字长:与主存有关(一台计算机这两个是固定不变的);指令字长:指令的长度,是可变的。

半字、单字、双字指令----是机器字长的多少倍决定的

指令分类

地址码数目分类:0、1、2、3、4地址指令

指令长度对指令格式分类: 定长、变长指令字结构

操作码长度分类:定长、可变长操作码

操作类型分类:数据传输类(CPU、主存间的数据传送)、运算类(算术逻辑操作、移位操作)、程序控制类(代表程序执行流,跳转指令)、输入输出类(cpu、IO设备直接的数据传送)

1. 扩展操作码格式

定长指令字+可变长操作码:不同地址数的指令使用不同长度的操作码

设计时注意,短的操作码不能是长操作码的前缀(类似于哈夫曼编码),不能重复。

寻址

2. 指令寻址

确定下一条要执行的指令的存放地址,有程序计数器PC指明。

顺序寻址:PC+“1”----->PC(1个指令字长,不是单纯的地址+1)

跳跃寻址:执行转移类指令(jmp等)改变PC的值

每条指令的执行分为“取指令”、“执行指令”两个阶段

3. 数据寻址

本条指令的地址码指明的真实地址。有哦10种:

软堆栈:用寄存器存储,成本高;硬堆栈:划出一块内存存储。

基址寻址:以“程序起始存放地址”为起点  ;变址寻址:以“程序员设定的程序开始地址”为起点 ;相对寻址:以“程序计数器PC指向的地址”为起点。

机器级代码

因为访问主存次数越多,速度越慢。在X86汇编语言中,不允许两个操作数都来自主存。

 

CISC和RISC

是两种设计方向

CISC(Complex Instructor Set Computer)设计思路:一条指令完成一个复杂的基础功能。

RISC(Reduced Instructor Set Computer)设计思路:一条指令完成一个基本“动作”;多条指令组合完成一个复杂的基本功能。

RISC相当于给你c语言的基础功能,通过基础功能实现更复杂的功能;

CISC相当于给你基础并给你一些库函数可以直接调用实现某个复杂功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值