首页 > 其他分享 >计算机组成原理(唐硕飞)——指令系统

计算机组成原理(唐硕飞)——指令系统

时间:2024-08-01 18:07:36浏览次数:12  
标签:寻址 指令系统 计算机 唐硕飞 操作码 地址 指令 寄存器 操作数

7.1、机器指令

指令的一般格式:

操作码字段 地址码字段
  • 操作码:用来指明该指令所要完成的操作,例如加法、减法等。
  • 地址码:地址码用来指出该指令的原操作数的地址、结果的地址以及下一条指令的地址。

地址码分类

1. 四地址指令

\(OP\) \(A_1\) \(A_2\) \(A_3\) \(A_4\)

\(OP\):操作码
\(A_1\):第一操作数地址,
\(A_2\):第二操作数地址
\(A_3\):结果地址
\(A_4\):下一条指令的地址。

  • 完成的操作是:\((A_1)\)OP\((A_2 )\rightarrow A_3\)

完成一次四地址指令,共需访存4次(取指令一次,取两个操作数两次,存放结果一次)。

2. 三地址指令

\(OP\) \(A_1\) \(A_2\) \(A_3\)
  • 完成的操作:\((A_1)\)OP\((A_2 )\rightarrow A_3\)

后续指令的地址隐含在程序计数器PC中。一条三地址指令 也需要访存4次。

3. 二地址指令

\(OP\) \(A_1\) \(A_2\)

A1字段即代表源操作数的地址,又代表存放本次运算结果的地址

完成的操作:\((A_1)\)OP\((A_2 )\rightarrow A_1\),这种情况完成一次指令仍需要访问存储器4次。

  • 如果完成:\((A_1)\)OP\((A_2 )\rightarrow ACC\),此时完成一条指令只需访存3次。因为将中间结果放在了ACC(累加器)里。

4. 一地址指令

\(OP\) \(A_1\)

完成的操作:\((ACC)\)OP\((A_1 )\rightarrow ACC\)

其中,ACC即存放参与运算的操作数,又存放运算的中间结果。因此完成一条一指令只需要访存2次(取指一次,操作数一次)。

5. 零地址指令

零地址指令在指令字中无地址码,其操作数的地址隐含在堆栈指针SP中

操作码长度

  • 操作码长度固定:

    • 优点:便于硬件设计,译码时间短
    • 缺点:操作码位数未能完全使用
    • 示例:RISC指令集、IBM370
  • 操作码长度不固定

    • 优点:有效压缩操作码的平均长度
    • 缺点:增加指令译码和分析的难度,控制器设计复杂
    • 示例:CISC指令集、Intel 8086

扩展操作码(操作码不固定的一种形式)

image

指令字长为16位,随着地址码的减少,操作码的位数增加,三地址指令有4位操作码,二地址有8位操作码,一地址有12位操作码,零地址有16位操作码。

图中表示三地址最多有15条指令,00001110,但如果三地址指令减少了一条,变成00001101,那么二地址将会增加16条指令,增加的指令为1110 0000~ 1101 1111 这16个指令。

例题7.1

假设指令字长为16位,操作数的地址码为6位,指令有零地址、一地址、二地址三种格式。
(1)设操作码固定,若零地址指令有P种,一地址指令有Q种,则二地址指令最多有几种?
(2)采用扩展操作码技术,若二地址指令有X种,零地址指令有Y种,则一地址指令最多有几种?

解题:
image

7.2、操作数类型和操作类型

  • 字节:8位
  • 字:16位
  • 双字:32位
  • 四字:64位

7.3、寻址方式

指令寻址

image

  • 指令寻址分为顺序寻址和跳跃寻址。
  • 顺序寻址通过程序计数器PC+1,自动形成下一条指令的地址。
  • 跳跃寻址通过转移类指令实现。

对于图7.6,第1,2,3号指令地址都是由PC自动形成(顺序寻址)。

第3号指令为“JMP 7”,所以跳过4,5,6,直接执行第7条指令(跳跃寻址)。

数据寻址

操作码 寻址特征 形式地址

1. 立即寻址

image

立即寻址的形式地址A不是操作数的地址,而是操作数本身。

A的位数限制指令表述的立即数范围。

2. 直接寻址 EA=A

image

优点:寻找操作数比较简单,在指令执行阶段对主存只访问一次

缺点:A的位数限制了操作数的寻址范围

3. 隐含寻址

image

隐含寻址是指指令字中不明显给出操作数地址,其操作数地址隐含在操作码或某个寄存器中。图7.10 表示一地址格式的加法指令,另一个操作数隐含在ACC中。

4. 间接寻址 EA=(A)

image

指令字中的形式地址不直接给出操作数的地址,而是指出操作数有效地址所在的存储单元地址。优点是扩大了操作数的寻址范围,缺点是在指令执行阶段需要多次访存。

  • 一次间接寻址:A地址单元的内容EA是操作数的有效地址。如果指令字长16位,A是8位,直接寻址范围,间接寻址的范围是,扩大了操作数的寻址范围。
  • 多次间接寻址:用存储字的首位来标志间接寻址是否结束,例如上图(b),当存储字首位为1时需要继续访存寻址,为0时表示该存储字为EA,所以多次间接寻址的寻址范围是\(2^{15}\)(有1位标记位)。

5. 寄存器寻址 EA=R

image

寄存器寻址:在执行执行阶段无须访存,减少执行时间。

6. 寄存器间接寻址 EA=(R)

image

寄存器间接寻址:Ri的内容不是操作数,而是操作数所在主存单元的地址号,与寄存器寻址相比,指令的执行阶段还需访存主存一次,比间接寻址少访存一次。

7. 基址寻址 EA=A+(BR)

image

基址寻址设有基址寄存器BR,其操作数的有效地址EA等于指令字中的形式地址与基址寄存器中的内容相加。

基址寻址优点:扩大操作数的寻址范围,基址寄存器位数可以大于A的位数,将每段首地址存放于基址寄存器中,段内的位移量由A指出。

8. 变址寻址 EA=A+(IX)

image

变址寻址主要用于处理数组问题,设定A为数组的首地址,不断改变变址寄存器IX的内容,可以形成数组中任一数据的地址。

9. 相对寻址 EA=(PC)+A

image

  • 相对寻址的有效地址是将程序计数器PC的内容(即当前指令的地址)与指令字中的形式地址A相加而成。
  • 相对寻址的相对位移由形式地址A来提供,所以A又称位移量。位移量A可正可负,通常用补码表示。如果位移量为8位,那么寻址范围就在(PC)+127~(PC)-128之间。
  • 相对寻址的特点:转移地址不固定,可随PC值变化而变。

10. 堆栈寻址

image

  • 堆栈指针SP指出栈顶地址。操作数只能从栈顶地址指示的存储单元存或取,操作数的地址被隐含在SP中。

  • 堆栈寻址也可视为寄存器间接寻址,将SP视为寄存器,存放操作数的有效地址。

  • 图7.18中,进栈操作PUSH A,首先将 (SP)-\(\Delta \rightarrow\) SP,将ACC的内容放在栈顶。出栈P\(OP\) A,首先把栈顶元素给ACC,然后让(SP)+\(\Delta \rightarrow\) SP。

  • \(\Delta的\)值取决于主存编址方式,按字编址,1字=2Byte=16bit,图7.18的\(\Delta=1\);按字节编址,1字节=8bit,如果字长为16位,则\(\Delta=2\)。

例题:7.2

设相对寻址的转移指令占3个字节,第一个字节为操作码,第二、第三字节为相对转移量(补码表示),而且数据在存储器中采用低字节地址位字地址的存放方式。每当CPU从存储器取出一个字节时,即自动完成(PC)+1—>PC
(1)若PC当前值位240(十进制),要求转移到290,则转移指令的第二第三字节的机器代码是什么?
(2)若PC当前值位240(十进制),要求转移到200,则转移指令的第二第三字节的机器代码是什么?

答案:
image

例题:7.3

一条双字长直接寻址的子程序调用指令,其第一个字位操作码和寻址特征,第二个字为地址码5000H,假设PC当前值为2000H,SP的内容为0100H,栈顶内容是2746H,存储器按字节编址,而且进栈操作是先执行 (SP)-▲ ——> SP,后存入数据,回答下列几种情况下,PC、SP及栈顶内容各为多少?
(1)CALL指令被读取前。
(2)CALL指令被执行后。
(3)子程序返回后。

答案:
image

题目:

image

分析:形式地址A的内容是存储器201单元的内容,也就是300,所以A=300
image

寻址方式 有效地址 EA 累加器AC的内容
立即寻址 300 300
直接寻址 300 400
间接寻址 400 700
相对寻址 500 600
变址寻址 400 700
基址寻址 500 600
先变址后间址 401 501
先间址后变址 500 600

7.4、指令格式设计

例7.4:

某机字长16位,存储器直接寻址空间为128字,变址时位移量为-64~+63,16个通用寄存器均可作为变址寄存器。设计一套指令系统格式,满足下列寻址类型的要求。
(1)直接寻址的二地址指令3条
(2)变址寻址的一地址指令6条
(3)寄存器寻址的二地址指令8条
(4)直接寻址的一地址指令12条
(5)零地址指令32条

解:
image

例7.5

设某机配有基址寄存器和变址寄存器,采用一地址格式的指令系统,允许直接和间接寻址,
且指令字长,机器字长和存储字长均为16位。
(1)若采用单字长指令,共能完成105种操作,则指令可直接寻址的范围是多少?一次间接寻址的寻址范围是多少?画出其指令格式并说明各字段的含义。
(2)若存储字长不变,可采用什么方法直接访问容量为16MB的主存?

解:
image

7.5、RISC技术

image

RISC主要特点总结

  1. 选取使用频率较高的一些简单指令以及一些很有用但又不复杂的指令,让复杂指令的功能由使用频率高的简单指令的组合来实现。

  2. 指令长度固定,指令格式种类少,寻址方式种类少。

  3. 只有取数/存数指令访问存储器,其余指令的操作都在寄存器内完成。

  4. CPU中有多个通用寄存器(比 CISC的多)。

  5. 采用流水线技术(注意:RISC一定是采用流水线),大部分指令在一个时钟周期内完成。采用超标量和超流水线技术,可使每条指令的平均执行时间小于一个时钟周期

  6. 控制器采用组合逻辑控制,不用微程序控制。

  7. 采用优化的编译程序。

CISC主要特点总结

  1. 指令系统复杂庞大,指令数目一般多达200~300条。

  2. 指令长度不固定,指令格式种类多,寻址方式种类多。

  3. 可以访存的指令不受限制(RISC只有取数/存数指令访问存储器)。

  4. 由于80%的程序使用其20%的指令,因此CISC各指令的使用频率差距太大。

  5. 各种指令执行时间相差很大,大多数指令需多个时钟周期才能完成。

  6. 控制器大多数采用微程序控制。

  7. 难以用优化编译生成高效的目标代码程序。

标签:寻址,指令系统,计算机,唐硕飞,操作码,地址,指令,寄存器,操作数
From: https://www.cnblogs.com/totogo7/p/18337210

相关文章

  • 计算机毕业设计django+vue宠物领养系统【开题+论文+程序】
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着人们生活水平的提高和情感需求的日益增长,宠物已成为许多家庭不可或缺的重要成员。然而,宠物领养市场存在着信息不对称、流程繁琐、匹配......
  • 计算机毕业设计django+vue多彩信管团学管理系统【开题+论文+程序】
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景在高等教育体系中,学生组织如学生会与团委扮演着举足轻重的角色,它们不仅是学生自我管理、自我服务、自我教育的重要平台,也是校园文化建设和......
  • 计算机基础(Windows 10+Office 2016)教程 —— 第5章 文档编辑软件Word 2016(上)
    文档编辑软件Word20165.1Word2016入门5.1.1Word2016简介5.1.2Word2016的启动5.1.3Word2016的窗口组成5.1.4Word2016的视图方式5.1.5Word2016的文档操作5.1.6Word2016的退出5.2Word2016的文本编辑5.2.1输入文本5.2.3插入与删除文本5.2.4复制与......
  • 基于Django的超市小程序+47822(免费领源码)可做计算机毕业设计JAVA、PHP、爬虫、APP、小
    基于django超市小程序摘 要随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,超市小程序被用户普遍使用,为方便用户能够可以随时进行超市小程序的数据信息管理,特开发了基于djan......
  • 计算机技术
    计算机科学领域的基本课程数据结构涉及数据的组织、管理和存储方式,以便能高效地访问和修改数据。主要包括各种数据结构的定义、实现和应用,如链表、栈、队列、树、图以及散列等。研究如何通过这些数据结构解决实际问题,并分析算法的时间和空间复杂度。计算机网络:研究计算机之间......
  • ssm+vue的校园物品租赁管理系统的设计与实现【开题+程序+论文】-计算机毕业设计
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着校园生活的日益丰富与多元化,学生们对各类物品的需求也呈现出多样化、临时性的特点。传统的购买方式往往难以满足学生群体对短期使用物品的需求,如......
  • ssm+vue的家具定制购买网站的设计与实现【开题+程序+论文】-计算机毕业设计
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着互联网的飞速发展,电子商务已成为现代消费的主流趋势,特别是在家居装饰领域,消费者对于个性化、定制化家具的需求日益增长。传统家具市场虽种类繁多,......
  • 【计算机毕业设计】ssm399基于vue的电商购物网站+vue
    使用旧方法对电商购物信息进行系统化管理已经不再让人们信赖了,把现在的网络信息技术运用在电商购物信息的管理上面可以解决许多信息管理上面的难题,比如处理数据时间很长,数据存在错误不能及时纠正等问题。这次开发的电商购物网站管理员功能有个人中心,用户管理,商品类型管理,商......
  • 【计算机毕业设计】ssm398基于javaweb的酒店预订管理系统+vue
    使用旧方法对酒店预订信息进行系统化管理已经不再让人们信赖了,把现在的网络信息技术运用在酒店预订信息的管理上面可以解决许多信息管理上面的难题,比如处理数据时间很长,数据存在错误不能及时纠正等问题。这次开发的酒店预订管理系统管理员功能有个人中心,用户管理,房间类型管......
  • springboot+vue基于智能机器人的智能答疑系统的设计与实现【程序+论文+开题】-计算机
    系统程序文件列表开题报告内容研究背景随着人工智能技术的飞速发展,智能机器人已经渗透到我们生活的方方面面,从工业制造到家庭服务,再到教育领域,它们正逐步改变着人类的工作与学习方式。在教育领域,传统的教学模式面临着诸多挑战,如个性化教学不足、答疑效率低下等问题。在此背......