- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章处理器
第三章 处理器
一、指令集(Instruction Set,亦称指令系统)
* 指令集是机器性能的直接表现
1、逻辑格式
Op码(操作码):位数决定指令集中操作的种类
Ad码(地址码):位数决定指令集中操作数的寻址空间
* 应包含的基本信息:
(1)执行什么操作
(2)参加操作的是什么数
(3)操作数如何找到
(4)结果应存在哪里
(5)下一条指令在哪
* 区别几个字长
(1)机器字长:处理器一次能处理的最大的二进制位数
(2)存储字长:一个存储单元能存放的最大的二进制位数
(3)指令字长:一条指令包含的二进制位数(上图示例为n+m位)
注意:指令集内各条指令的长度可能不相同,对应两种不同的指令集,如下:
* 定长指令集:指令集中的所有指令长度均相同(控制简单)
* 不定长指令集:指令集中的所有指令长度有长、有短(控制相对复杂)
2、操作码编码
操作码位数由操作类型、操作个数来决定
* 通常可以分为两类
规整型指令集:指令集中的所有指令操作码的长度固定
非规整型指令集:指令集中的所有指令操作码的长度有长、有短
(1)规整型操作码
例:Op码取7位,则操作种类为27=128种
实际操作中一般取8位(1Byte),则操作种类为28=256种
代表机型IBM370、VAX-11
缺点:平均码长大(各种指令出现的频率不同),生成的代码量大
(2)非规整型操作码
通常为扩展操作码安排
例:指令字长16位,每4位一组分为四部分,格式如下:
具体编码安排见下表:
代表机型Intel8086、PDP-11
特点:平均码长短、生成的代码量小,指令译码复杂
0000
0001
1110
15条指令
4位操作码 1111
1111
标识码点
1111 0000
0001
1110 15条指令
8位操作码
最高4位为1111标识码 1111
1111
标识码点
1111 1111
1111
标识码点
1111 0000
0001
1110 15条指令
12位操作码
最高8位识码 1111
1111
标识码点
1111 1111
1111
标识码点
1111 1111
1111
标识码点
1111 0000
0001
1111 16条指令
16位操作码
最高12位为111111111111标识码
3、地址码个数
(1)主存地址操作
地址格式 操作(以ADD为例) 下一条指令 访存次数 四地址 OP∥α/β/γ/δ [α]+[β]([γ] δ(PC 1+3=4次 三地址 OP∥α/β/γ [α]+[β]([γ] PC+1(PC 1+3=4次 二地址 OP∥α/β [α]+[β]([α](很少采用)
或[α]+[β](ACC 基本不用
PC+1(PC
1+2=3次 单地址 OP∥α ACC+[α](ACC PC+1(PC 1+1=2次 零地址 OP∥ 数在堆栈里 PC+1(PC 视具体操作而定
≥1次 (2)寄存器操作
地址格式 操作(以ADD为例) 访存次数 三寄存器地址 OP∥RI /RJ/RK RI+RJ (RK 1次 二寄存器地址 OP∥RI /RJ RI+RJ ( RI 1次 单寄存器地址 OP∥RI ACC+RI (ACC 1次 操作数在寄存器中,仅需一次访存取指令,执行时不访存
(3)Reg-Mem类型(通常为双操作数,一个操作数在寄存器里,一个在主存里)
操作(以ADD为例) 操作描述 访存次数 Reg作目的 ADD RI ,M RI+[M] (RI 1+1=2次 Mem作目的 ADD M ,RI [M]+RI ([M] 1+2=3次 小结:
* 采用主存地址需要多次访存,速度慢;采用Reg作地址,访存次数少,速度快
* 主存地址占位数多,代码量大;Reg地址占位数少,代码量相对较小
* 三主存地址格式,编码效率最好,一般在大型机里可以采用
* 二地址格式习惯采用Reg-Mem或Reg-Reg,性能最佳,不用Mem-Mem
* 零地址仅用在堆栈操作等特定场合
4、操作数类型及对齐方式
(1)操作数类型
* 地址(无符号数) //位数视寻址范围而定
* 数 定点数(整型、通常补码表示)
浮点数(实型、目前常用IEEE754标准)
* 字符 BCD码(4位) //表示10个阿拉伯数字
ASCII码(8位) //微型机普遍采用的字符编码
GB2312(16位) //常用的汉字编码
* 逻辑数据 0或1
(2)对齐方式
* 32机常用的一些字长单位
Byte(8位) Hword(16位) Word(
文档评论(0)