【备战软考(嵌入式系统设计师)】02-计算机指令

指令集

我们计算机要执行程序,本质上是执行一条条的指令,而指令是从指令集中取出的,目前常见的指令集有CISC(Complex Instruction Set Computer,复杂指令集)和RISC(Reduced Instruction Set Computer,精简指令集)。

关于软考,我们就记着CISC指令数量多,可变长格式,支持多种寻址方式,由微程序实现。

RISC指令数量少,定长格式,支持的寻址方式少,主要依靠硬件实现。

CISC的优点就是指令功能丰富,编程的时候比较轻松。但缺点也很明显,那就是因为格式是变长的,所以执行效率比较低,并且因为要支持大量的指令,硬件复杂度也陡增。

相对的,RISC的执行效率就比较高,硬件复杂度相对低,缺点就是同样是完成一个复杂一点的命令,CISC可能只需要一条指令,但是RISC可能需要执行多条。

在软考之外,现实中RISC和CISC之间的界限并没有课本上那么的泾渭分明,二者在取长补短,互相吸收对方的优点,因此在考试之外,我们并不需要太在意某某计算机使用的是什么指令集了。

流水线

如果我想看直播,还想打游戏,还想听音乐,那我应该怎么办?

先看直播,等直播结束了再去打游戏,等游戏输到不想再打了就去听音乐冷静冷静?

这样可以,但是效率很低。

放到我们计算机里就是我先取指令,取完指令再去分析指令,分析完再去执行,这样也可以,但是效率很低。

我的舍友可以一边看直播一边打游戏一边听音乐。那么我们的计算机可不可以呢?当然是可以的,那就是流水线技术。

因为要分析指令得先获取指令,因此我们首先先取指令,接下来分析取的第一条指令的时候可以去取第二条指令,然后在我们分析完第一条指令之后可以执行第一条指令并且分析第二条指令然后去获取第三条指令,由于取指,分析,执行是交给不同的部分去处理的,因此我们可以这么压榨。

可以看得出,如果我们不使用流水线,而是循规蹈矩地一条条执行,那么执行五条指令需要3*5个机器周期(上图为极简版示意图),而使用流水线之后,执行五条指令只需要5+(3-1)个机器周期。

因此我们得出一个公式。

流水线执行的时间 = (完整执行一条指令所需的机器周期 + (指令总数 - 1))* 一个机器周期的时间

软考考的比较杂且浅,因此只需要知道上面这些即可。实际上在计算机组成原理这门课中对流水线的介绍占了不少篇幅,还涉及到很多计算,感兴趣的小伙伴可以再去重温一下。

中断

回到我舍友身上,他正在看直播打游戏听音乐,他的家人在昨天说好了今天要给他打电话,那么此刻我的舍友有两种选择,第一种就是时不时就看看手机,看有没有人打电话过来,第二种就是他打开手机铃声,有人打电话过来就会响起铃声,这样我舍友就知道有人打电话来了。

上面两种选择对应到我们计算机中就是查询和中断。

再拿我们的单片机举个例子,如果我的单片机要检测是否有人按下连接好的按钮,可以动不动就查询一下按钮对应的GPIO的电平情况,也可以设置中断,一旦电平情况发生变化,就进入到中断函数里。

我们的单片机也算是一种计算机,那么对应到我们的计算机上,中断也差不多是这个意思。

在软考中,我们需要知道中断的具体流程,在下午的大题中有可能会出现流程图填空。

另外关于中断需要知道的是高优先的中断会打断低优先级的中断,也就是说如果正在执行低优先级中断函数的时候来了个优先级更高的中断,那么会跑去执行高优先级的中断服务函数。

在流程图的右侧有一些开关中断的步骤,是为了避免堆栈错误。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/579021.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024最新智慧医疗智慧医院大数据展示,医院数据采集概况、医院指标分析、医院就诊趋势分析等。源代码免费下载。

系列文章目录 【复制就能用1】2分钟玩转轮播图,unslider的详细用法 【复制就能用2】css实现转动的大风车,效果很不错。 【复制就能用3】2分钟自己写小游戏:剪刀石头布小游戏、扫雷游戏、五子棋小游戏 【复制就能用4】2024最新智慧医疗智慧医院大数据…

c++并查集

文章目录 前言一、并查集1、并查集原理2、并查集实现3、并查集应用1.省份数量2.等式方程的可满足性 前言 一、并查集 1、并查集原理 在一些应用问题中,需要将n个不同的元素划分成一些不相交的集合。开始时,每个元素自成一个单元素集合,然后…

应急行业的智能安全帽(高端)

前面介绍了低端、中端安全帽,接着再讲讲高端安全帽。做高端安全帽的企业非常少,估计一只手都数的出来。确实也和智能安全帽这个领域体量有关系,并且他有一个新的“劲敌”——智能眼镜从其他领域瓜分原属于他的市场,这些都是题外话…

SpringBoot引入Layui样式总是出现404

一般出现Layui样式文件如css,js404的错误 解决方案 (1)首先将其中的静态资源下载resources/static中 (2)在启动类中重写方法 package com.gq.booksystem;import org.mybatis.spring.annotation.MapperScan; import …

【ETAS CP AUTOSAR工具链】RTE层基本概念与开发流程

本篇文章续接上篇文章【ETAS CP AUTOSAR工具链】基本概念与开发流程,继续按上篇文章描述的ETAS CP工具链进行开发的基本框架,讲述了“RTE集成与配置”这部分的基本概念与开发流程。 RTE(Runtime Environment)处于应用层与基础软件…

【Godot4.2】自定义Todo清单类 - myTodoList

概述 在写myList类的时候,就想到可以写一个类似的Todo清单类。 基础思路 本质还是在内部维护一个数组,在其基础上进行增删改查操作的封装为了方便存储数据,编写一个自定义内置类TodoItem,内部数组就变成了Array[TodoItem]类型的…

Git | 远程操作

Git | 远程操作 文章目录 Git | 远程操作0、分布式版本控制系统概念1、创建远程仓库2、克隆远程仓库https方式ssh方式 3、推送至远程仓库4、本地拉取远程仓库5、配置Git忽略特殊文件给命令配置别名 6、标签管理创建标签操作标签 0、分布式版本控制系统概念 Git是一个分布式版本…

Git--分布式版本控制系统

目录 一、理解分布式版本控制系统二、远程仓库三、克隆远程仓库四、向远程仓库推送五、拉取远程仓库六、配置Git七、给命令配置别名八、创建标签九、操作标签 一、理解分布式版本控制系统 我们⽬前所说的所有内容(⼯作区,暂存区,版本库等等&a…

24深圳杯AC题完整思路+可执行代码+参考论文!!!!

比赛题目的完整版思路可执行代码数据参考论文都会在第一时间更新上传的,大家可以参考我往期的资料,所有的资料数据以及到最后更新的参考论文都是一次付费后续免费的。注意:(建议先下单占坑,因为随着后续我们更新资料数…

three.js 学习笔记 | 光线投射技术 - 包围盒(碰撞检测)

文章目录 three.js 学习笔记光线投射技术实现3D场景交互事件 THREE.Raycaster坐标系的转换案例:选中的模型变为红色 包围盒Box3 - 碰撞检测AABB包围盒辅助器Box3Helper案例1:创建AABB包围盒/包围球computeBoundingBox与boundingBox 搭配使用,…

【数据结构】二叉树(带图详解)

文章目录 1.树的概念1.2 树的结构孩子表示法孩子兄弟表示法 1.3 相关概念 2.二叉树的概念及结构2.1 二叉树的概念2.2 数据结构中的二叉树-五种形态2.3 特殊的二叉树2.4 二叉树的存储结构顺序存储链式存储 2.5 二叉树的性质 3. 堆3.1 堆的定义3.2 堆的实现堆的结构堆的插入向上调…

springcloud按版本发布微服务达到不停机更新的效果

本文基于以下环境完成 spring-boot 2.3.2.RELEASEspring-cloud Hoxton.SR9spring-cloud-alibaba 2.2.6.RELEASEspring-cloud-starter-gateway 2.2.6.RELEASEspring-cloud-starter-loadbalancer 2.2.6.RELEASEnacos 2.0.3 一、思路 实现思路: 前端项目在请求后端接…

SVN--基本原理与使用(超详细)

目录 一、SVN概述二、SVN服务端软件安装三、SVN服务端配置四、SVN客户端软件安装与使用五、SVN三大指令六、SVN图标集与忽略功能6.1 图标集6.2 忽略功能 七、SVN版本回退八、SVN版本冲突九、SVN配置多仓库与权限控制9.1 配置多仓库9.2 权限控制 十、服务配置与管理十一、模拟真…

Java | Leetcode Java题解之第52题N皇后II

题目&#xff1a; 题解&#xff1a; class Solution {public int totalNQueens(int n) {Set<Integer> columns new HashSet<Integer>();Set<Integer> diagonals1 new HashSet<Integer>();Set<Integer> diagonals2 new HashSet<Integer>…

手写文本识别系统的最佳实践

手写文本识别系统的最佳实践 摘要IntroductionRelated WorkProposed HTR SystemConvolutional Backbone:Flattening Operation:Recurrent Head:CTC shortcut: Best Practices for a Handwritten Text Recognition System 摘要 手写文本识别在近年来随着深度学习及其应用的兴起…

文件夹惊变文件?揭秘原因及解决方案

在日常工作和生活中&#xff0c;电脑已经成为我们不可或缺的助手。然而&#xff0c;有时我们会遇到一些令人困惑的问题&#xff0c;比如&#xff0c;文件夹突然变成了文件。这听起来可能有些匪夷所思&#xff0c;但它确实会发生&#xff0c;而且给用户带来了不小的麻烦。当熟悉…

java-spring-mvc(知识点讲解-第一天)-欢迎各位大佬提建议

目录 &#x1f383;MVC定义 &#x1f9e8;创建工程 &#x1f3a8;SpringMVC处理请求 请求分类及处理方式 静态请求 处理静态前端页面方式 动态请求 处理动态前端页面方式 ⚙小试牛刀 &#x1f3c6;常见问题 &#x1f4cc;HTTP协议 超文本传输协议 请求 &#x1f383;MVC…

Web前端开发 小实训(二) 简易计算器

实训目的 学生能够使用函数完成简易计算器编写 操作步骤 1、请将加减乘除四个方法生成为以下函数&#xff0c;且有返回值 中文英语加法add减法subtract乘法multi除法division次幂pow()平方根sqrt() 提示&#xff1a; 除法中的除数不能为0&#xff01; 参考代码&#xff1…

在线培训考试系统在线考试功能注意事项

在线培训考试系统在线考试功能注意事项 考试前务必注意是否开启防切屏、摄像头监考等防作弊措施&#xff0c;系统一旦检测到触发了疑似作弊行为会立刻自动交卷&#xff0c;考试终止&#xff1b; 答题者准备好后&#xff0c;可点击“开始答题”按钮进入考试&#xff0c;注意考…

代码随想录第49天|121. 买卖股票的最佳时机 122.买卖股票的最佳时机II

121. 买卖股票的最佳时机 121. 买卖股票的最佳时机 - 力扣&#xff08;LeetCode&#xff09; 代码随想录 (programmercarl.com) 动态规划之 LeetCode&#xff1a;121.买卖股票的最佳时机1_哔哩哔哩_bilibili 给定一个数组 prices &#xff0c;它的第 i 个元素 prices[i] 表示一…