【计算机组成原理-chapter4】指令系统

1. 指令格式

1.1 指令的基本概念

指令(又称机器指令):是指示计算机执行某种操作的命令,是计算机运行的最小功能单位。

一台计算机的所有指令的集合构成该机的指令系统,也称为指令集

而一条指令有操作码地址码两部分组成。

注:一台计算机只能执行自己指令系统中的指令,不能执行其他系统的指令。Eg:x86架构、ARM架构 上的软件不能互相在对方上直接运行。

1.2 指令的分类

1.2.1 按地址码数目分类

在这里插入图片描述

1.2.2 按指令的长度分类

在这里插入图片描述

1.2.3 按操作码长度分类

在这里插入图片描述

1.2.4 按操作类型分类

在这里插入图片描述

1.2.4 小结

在这里插入图片描述

1.3 扩展操作码

1.3.1 扩展操作码的组成

在这里插入图片描述

1.3.2 扩展操作码的设计

在这里插入图片描述
在这里插入图片描述

1.3.3 扩展操作码与定长操作码的对比

在这里插入图片描述

2. 指令的寻址方式

2.1 指令寻址和数据寻址

在这里插入图片描述

2.1.1 指令寻址(通过PC)

在这里插入图片描述

* 指令寻址的分类:
	1. 顺序寻址:    由 PC自动加"1"得到
	2. 跳跃寻址:    执行类似jmp跳跃指令,直接更改PC的值,实现指向下一条指令。

对于定长和变长指令的顺序寻址方式如下(跳跃寻址由跳跃指令决定,指令定不定长对其无影响):
在这里插入图片描述

在这里插入图片描述

2.1.2 数据寻址

在这里插入图片描述
由于数据寻址的方式有很多,有如下10中,自然的在寻址时要对寻址方式加以区分,导致地址码被细分成寻址特征 + 形式地址。其中寻址特征就是用来区分寻址方式的。
在这里插入图片描述

2.1.2.1 直接寻址

在这里插入图片描述

2.1.2.2 间接寻址

在这里插入图片描述

2.1.2.3 寄存器寻址

在这里插入图片描述

2.1.2.4 寄存器间接寻址

在这里插入图片描述

2.1.2.5 隐式寻址

在这里插入图片描述

2.1.2.6 立即寻址

在这里插入图片描述

2.1.2.7 基于偏移量进行寻址

在这里插入图片描述

2.1.2.7.1 基址寻址

在这里插入图片描述

注意:如果采用的是通用寄存器的方式,则还需要在寻址特征与形式地址A之间让出几位用于标记是哪个通用寄存器。若是专用寄存器,则不需要。

2.1.2.7.2 变址寻址

在这里插入图片描述
注意:如果采用的是通用寄存器的方式,则还需要在寻址特征与形式地址A之间让出几位用于标记是哪个通用寄存器。
在这里插入图片描述

2.1.2.7.3 相对寻址

在这里插入图片描述

注意: EA = (PC) + A, 这里的PC是自动加一后的PC

在这里插入图片描述

2.1.2.8 堆栈寻址

在这里插入图片描述

注意:

  1. 注意栈顶和栈底方向,以及栈顶指针是指向栈顶元素还是栈顶上的空元素。
    在这里插入图片描述
2.1.2.9 小结

在这里插入图片描述

注意:

  1. 相对寻址用于实现程序内部代码的”浮动“;基址寻址用于实现程序在内存中的”浮动“;变址寻址用于实现程序内部的循环和访问数组。
  2. 上面的寻址方式一般相互组合使用。
  3. 基址寻址的寄存器用户不可使用,由操作系统管理。而变址寻址的寄存器用户可以使用。
  4. 几个偏移寻址的功能:
    1. 基址寻址用于实现程序在内存中浮动,有利于实现多道程序
    2. 相对寻址用于实现程序内部的浮动,也有利于实现多道程序,因为在内存中各个程序段也有可能浮动;也有利于实现程序的转移/跳转。【注意是转移不是浮动,程序的浮动是基址寻址的功能】
    3. 变址寻址用于实现循环程序,访问数组

2.2 CISC vs RISC

在这里插入图片描述
在这里插入图片描述

3. 补充

3.1 一些简单的汇编语句

在这里插入图片描述

3.2 知识点补充

1. 判断:指令系统是计算机软/硬件的界面。
	正确。指令是系统位于软件和硬件的交界面上,是软件的最低级界面,是硬件的最高级界面(指令驱动硬件运行)。

2. 判断:指令系统和机器语言无关。
	错误。指令系统是计算机硬件的语言系统,而机器语言与硬件息息相关,故指令系统与机器语言相关。

3. CPU执行过程中,指令的地址都是由PC给出。而无论是什么寻址,想改变程序执行的跳转,都是通过修改PC的值实现的。

4. 运算型指令的功能是取操作数,控制型指令的功能是改变程序执行的顺序。
	常见的控制指令:循环指令、转换指令、条件转移指令、无条件转移指令、子程序调用指令、返回指令等
	注意:中断指令是由硬件实现的,并不是指令系统中的指令。

5. 指令系统中采用不同寻址方式的原因是( )
	A. 提供扩展操作码的可能并降低指令译码难度。
	B. 可缩短指令字长、扩大寻址空间、提高编程的灵活性。
	C. 实现程序的控制
	D. 以上都正确。
	选B。A中指令译码难度增加,因为寻址方式变多了。C,实现程序的控制是由靠转移指令而非寻址方式实现的。
	B中采用立即寻址可缩短指令字长,采用寄存器寻址可扩大寻址空间,采用相对寻址可提高编程的灵活性。

6. 简化地址结构的基本方法是尽量采用( )
	A. 寄存器寻址		B. 隐地址		C. 直接寻址		D. 间接寻址。
	选B。只有B才能最大的缩短地址码位数。

7. 关于指令的功能及分类,正确的是( ) 
	A. 算术与逻辑运算指令,通常完成算术运算或逻辑运算,都需要两个数据。
	B. 移位操作指令,通常用于把指定的两个操作数左移或右移一位。
	C. 转移指令,子程序调用与返回指令,用于解决数据调用次序的需求
	D. 特权指令,通常仅用于实现系统软件,这类指令一般不提供给用户。
	选D. A,不一定需要两个数据,比如取反。B,移位是针对一个操作数。C,是用于解决指令调用次序的需求。

8. 判断:
	A. RISC机一定采用流水技术
	B. 采用流水技术的一定是RISC机
	C. RISC机的兼容性优于CISC机
	D. CPU配置很少的通用寄存器
	只有A正确。

9. 

注意:内存地址是无符号数
在这里插入图片描述

  • 9
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
第七章主要介绍了计算机网络的基本概念和组成部分。计算机网络是指利用通信线路和交换设备,将多台计算机互联成一个规模大、功能强的计算机系统,使得各计算机之间可以方便地进行信息交换和资源共享。 计算机网络的组成部分包括:计算机网络的结构、通信协议、网络拓扑结构、传输介质、网络设备等。 其中,计算机网络的结构可以分为两种:客户-服务器结构和对等结构。客户-服务器结构是指在网络中有一个或多个服务器,为客户端提供服务。对等结构则是指网络中的所有计算机都是平等的,各自提供服务和使用服务。 通信协议是计算机网络中的重要组成部分,它规定了数据在网络中的传输格式、传输速率、传输方式等。常见的通信协议包括TCP/IP协议、HTTP协议、FTP协议等。 网络拓扑结构是指计算机网络中计算机之间连接的方式,常见的有总线型、星型、环型、树型等。 传输介质是指计算机网络中传输数据的物理媒介,包括有线介质和无线介质。有线介质包括双绞线、同轴电缆、光纤等,无线介质包括无线电波、红外线、激光等。 网络设备包括路由器、交换机、集线器等,它们可以实现数据的传输、路由选择和安全控制等功能。 最后,计算机网络的应用非常广泛,包括互联网、局域网、广域网、无线网络等,它们在信息交流、商务、教育等领域都有重要的作用。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ElegantCodingWH

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值