计算机指令

考研复习:计算机组成原理(一)

和自甴很熟 提交于 2019-11-26 12:33:48
1.1计算机的分类和其特性 计算机通常分为三类:个人计算机 服务器 嵌入式计算机 个人计算机:给单个用户提供服务 服务器:给多个用户运行大型程序提供服务 嵌入式计算机:嵌入到其它设备中的计算机 执行已经预定的一个或者一组程序 1.2后PC时代 个人移动设备PMD : 智能手机 平板电脑等 1.3 在20世界六七十年代 限制计算机性能的主要是内存 多核微处理器:在一个集成电路上面有多个核的微处理器 一个程序的性能主要取决于:1.算法 2.编译程序 3.计算机执行的机器指令的有效性 2 计算机系统结构的八个伟大思想 2.1 面向摩尔定律的设计 摩尔定律 每隔18-24个月 集成电路上的芯片数目将翻一番 2.2 使用抽象化设计 上层只能看到下层的抽象模型 而看不到细节 2.3 并行 计算机并行操作 2.4 流水线 并行的一种特例 2.5 预测 在预测错误的情况下代价不大且预测准确率较高的情况下采用预测 2.6 存储器层次 小而快的再上 大而慢的在下 2.7 使用冗余 添加冗余部件 提高系统的可靠性 2.8 加速大概率事件 加速大概率事件远比优化小概率事件效果大 3 程序概念入门 应用软件 系统软件 硬件 系统软件最重要的是:操作系统 和 编译程序 操作系统:用户软件和硬件之间的接口 为用户提供各种服务和监控功能 操作系统的主要作用:处理简单的输入和输出 分配内存和外存

计算机组成原理复习题二

时光毁灭记忆、已成空白 提交于 2019-11-26 12:33:28
原文地址: https://wenku.baidu.com/view/935be3d1c1c708a1284a4446 一、选择题 1、在间址周期中,_C_____。 A.所有指令的间址操作都是相同的; B.凡是存储器间接寻址的指令,它们的操作都是相同的; C.对于存储器间接寻址或寄存器间接寻址的指令,它们的操作是不同的; D.以上都不对。 2、将有关数据加以分类、统计、分析,以取得有利用价值的信息,我们称其为_C_____。 A. 数值计算 B. 辅助设计 C. 数据处理 D. 实时控制 3、定点16位字长的字,采用2的补码形式表示时,一个字所能表示的整数范围是____A_。 A.-215 ~ +(215 -1) B.-(215 –1)~ +(215 –1) C.-(215 + 1)~ +215 D.-215 ~ +215 4、根据传送信息的种类不同,系统总线分为___B___。 A. 地址线和数据线 B. 地址线、数据线和控制线 C. 地址线、数据线和响应线 D. 数据线和控制线 5、外存储器与内存储器相比,外存储器__B____。 A.速度快,容量大,成本高 B.速度慢,容量大,成本低 C.速度快,容量小,成本高 D.速度慢,容量大,成本高 一个256K×8的存储器,其地址线和数据线总和为___C___。 注解:256=2的8次方,所以地址线为8,256K*8

计算机组成原理期末复习(超实用)

一曲冷凌霜 提交于 2019-11-26 12:33:14
计算机组成原理(第二版)唐朔飞 编著(课本有些地方还不错,可以下载电子版看看) 五道解答题30‘=9’(9个知识点)+6’+6’+4’+5’ 我依据老师的考题范围手动整理,有什么问题or想添加的知识点请在评论下方留言!实时更新,助诸位共进步! 一、解答题 1 . 影响流水线性能的因素主要有哪几种?请简要加以说明。 P348 结构相关:是当多条指令进入流水线后,硬件资源满足不了指令重叠执行的要求时产生的。不同指令争用同一功能部件产生资源冲突。 数据相关:是指令在流水线中重叠执行时,当后继指令需要用到前面指令的执行结果时发生的。可能改变对操作数的读写访问顺序。 控制相关:是当流水线遇到分支指令和其它改变PC值的指令时引起的。 2 . 为了保证DRAM的存储信息不遭破坏,必须在电荷漏掉前就进行充电,称为刷新。常见的刷新方式有哪三种,试分析它们间的区别。 P86 集中刷新:是在规定的一个刷新周期内,对全部存储单元集中一段时间逐行进行刷新,此刻必须停止读/写操作。 分散刷新:是指对每行存储单元的刷新分散到每个存储周期内完成。 异步刷新:是前两种方式的结合,既可缩短“死时间”,又充分利用最大刷新间隔2ms的特点。 3 . 说明计算机九大寻址方式及有效地址EA计算方法。 P311 立即寻址:无需寻址 隐含寻址:无需寻址 直接寻址:EA=A 间接寻址:EA=(A) 相对寻址:EA=(PC)+A

计算机组成原理期末试题

泄露秘密 提交于 2019-11-26 12:28:58
一、选择类型题: 1.现代计算机组织结构是以_B____为中心,其基本结构遵循冯·诺依曼思想。 A. 寄存器 B. 存储器 C. 运算器 D. 控制器 2.存储字长是指 ___ B ___ 。 A .存放在一个存储单元中的二进制代码组合; B .存放在一个存储单元中的二进制代码位数; C .存储单元的个数; D .机器指令的位数。 3 . CPU 通过 ____ B __ 启动通道。 A .执行通道命令; B .执行 I/O 指令; C .发出中断请求; D .程序查询。 4 .对有关数据加以分类、统计、分析,这属于计算机在 __ C ____ 方面的应用。 A .数值计算; B .辅助设计; C .数据处理; D .实时控制。 5.电子计算机的算术/逻辑单元、控制单元及存储器合称为C A.CPU B.ALU C.主机; D.UP 6.存储周期是指 ______ 。 A .存储器的写入时间; B .存储器进行连续写操作允许的最短间隔时间; C .存储器进行连续读或写操作所允许的最短间隔时间; D .指令执行时间。 7.当定点运算发生溢出时,应______ 。 A.向左规格化; B.向右规格化; C.发出出错信息; D .舍入处理。 8 .加法器采用先行进位的目的是 ______ 。 A .优化加法器的结构; B .节省器材; C .加速传递进位信号; D .增强加法器结构。 9

计算机组成原理题库(唐朔飞)

醉酒当歌 提交于 2019-11-26 12:27:42
计算机组成原理题库 ~~02|01|1|2|A0400047_010_1|871 ^^通常划分计算机发展时代是以( )为标准的。 A、所用电子器件 B、运算速度 C、计算机结构 D、所用语言 ^^A ~~02|01|1|2|A0400047_010_2|872 ^^能够被计算机硬件直接识别的语言是( )。 A、符号语言 B、机器语言 C、汇编语言 D、机器语言和汇编语言 ^^B ~~02|01|1|2|A0400047_010_3|873 ^^计算机能直接执行的程序是( )。 A、命令文件 B、汇编程序 C、机器语言程序 D、源程序 ^^C ~~02|01|1|2|A0400047_010_4|874 ^^计算机内的信息都是以( )形式表示的。 A、BCD码 B、二进制码 C、字母码 D、符号码 ^^B ~~02|01|1|2|A0400047_010_5|875 ^^至今为止,计算机中的所有信息仍以二进制方式表示,其理由是( )。 A、节省物理器件 B、运算速度快 C、物理器件容易实现 D、信息处理方便 ^^C ~~02|01|1|2|A0400047_010_6|876 ^^电子计算机技术在半个世纪中虽有很大进步,但至今其运行仍遵循着一位科学家提出的基本原理。他就是( )。 A、牛顿 B、爱因斯坦 C、爱迪生 D、冯·诺依曼 ^^D ~~02|01|1|2|A0400047

X86架构模式

别等时光非礼了梦想. 提交于 2019-11-26 05:26:44
计算机的工作模式 对于计算机来说,CPU(central processing Unit,中央处理器)肯定是最核心的,程序执行全都要依赖于它。 CPU和其他设备连接,要靠一种叫总线(bus)的东西,其实就是主板上密密麻麻的集成电路,这些东西组成了CPU和其他设备的高速通道。 在这些设备中,最重要的是内存(memory),因为单靠CPU是没法完成计算任务的,很多复杂的计算任务需要把中间结果保存下来,然后基于中间结果进行进一步计算,CPU本身是没有办法保存这些结果的,这就需要依赖内存了。 当然总线上也会有一些其他设备,例如显卡会连接显示器,磁盘控制器会连接硬盘,USB控制器会连接鼠标和键盘等等。 CPU和内存是完成计算任务的核心组件,CPU其实也不是单独一块,它包括三个部分,运算单元 ,数据单元和控制单元。 运算单元只管算,例如做加法,做位移等等。但是它不知道应该算哪些数据,运算结果应该放在哪里。运算单元计算的数据如果每次都要经过总线,到内存中去现拿,这样就太慢了, 所以有了数据单元。数据单元包括CPU内部的缓存和寄存器组,空间很小,但是速度飞快,可以暂时存放数据和运算结果。 有了放数据的地方,也有了算的地方,还需要有个指挥到底做什么运算的地方,这就是控制单元。控制单元是一个统一的指挥中心,它可以获得下一条指令,然后执行这条指令,这个指令会指定运算单元取出数据单元的某几个数据

深入iOS系统底层之指令集介绍

蹲街弑〆低调 提交于 2019-11-26 03:32:53
不以规矩.不能成方圆。--《孟子·离娄上》 说到指令集以及CPU架构体系,大家就会想到计算机专业课程里面的计算机体系结构的方面的内容。既然课程中已经有了的内容我就不想那么枯燥的去复述一遍,而是先看一个类的定义: //定义寄存器编号 typedef enum : int { Reg0, Reg1, Reg2, Reg3 } RegNum; //定义系统调用编号 typedef enum : int { Int3 //设备输出,将寄存器Reg0中的内容输出到屏幕 } Interrupt; //定义指令索引 typedef int Instruct; /** 虚拟CPU类,模拟CPU所提供的指令。 虚拟CPU由4个寄存器和运算部件组成。四个寄存器的编号分别定义在RegNum中;运算部件提供了赋值、加减、比较、跳转9个指令。 */ @interface VCPU : NSObject //将一个常量值赋值给编号为reg的寄存器中。 -(void)moveFromConst:(int)val toReg:(RegNum)reg; //将编号为reg1的寄存器中的值赋值给编号为reg2的寄存器中。 -(void)moveFromReg:(RegNum)reg1 toReg:(RegNum)reg2; //将编号为reg的寄存器中的值赋值给地址为addr的内存中。 -(void

深入iOS系统底层之CPU寄存器介绍

南笙酒味 提交于 2019-11-26 02:28:42
一弹指六十刹那,一刹那九百生灭。 --《仁王经》 组件 计算机是一种数据处理设备,它由CPU和内存以及外部设备组成。CPU负责数据处理,内存负责存储,外部设备负责数据的输入和输出,它们之间通过总线连接在一起。CPU内部主要由控制器、运算器和寄存器组成。控制器负责指令的读取和调度,运算器负责指令的运算执行,寄存器负责数据的存储,它们之间通过CPU内的总线连接在一起。每个外部设备(例如:显示器、硬盘、键盘、鼠标、网卡等等)则是由外设控制器、I/O端口、和输入输出硬件组成。外设控制器负责设备的控制和操作,I/O端口负责数据的临时存储,输入输出硬件则负责具体的输入输出,它们间也通过外部设备内的总线连接在一起。 上面的计算机系统结构图中我们可以看出 硬件系统的这种组件化的设计思路总是贯彻到各个环节。在这套设计思想(冯.诺依曼体系架构)里面,总是有一部分负责控制、一部分负责执行、一部分则负责存储,它之间进行交互以及接口通信则总是通过总线来完成。这种设计思路一样的可以应用在我们的软件设计体系里面:组件和组件之间通信通过事件的方式来进行解耦处理,而一个组件内部同样也需要明确好各个部分的职责(一部分负责调度控制、一部分负责执行实现、一部分负责数据存储)。 缓存 一个完整的CPU系统里面有控制部件、运算部件还有寄存器部件。其中寄存器部件的作用就是进行数据的临时存储。既然有内存作为数据存储的场所

C++的栈空间和堆空间

久未见 提交于 2019-11-25 20:08:49
https://www.csdn.net/gather_2b/NtDaIg5sMTktYmxvZwO0O0OO0O0O.html 一直都把堆栈放一起,所以很多人会误以为他们的组合是一个词语,就像“衣服”一样简单,其实不然,今天在下就将最近学习总结的一些与大家分享。 一个由C/C++编译的程序占用的内存分为以下几个部分: 1、栈区(stack):由编译器自动分配释放,存放函数的参数值,局部变量的值等,其操作方式类似于数据结构的栈。 2、堆区(heap):一般是由程序员分配释放,若程序员不释放的话,程序结束时可能由OS回收,值得注意的是他与数据结构的堆是两回事,分配方式倒是类似于数据结构的链表。 3、全局区(static):也叫静态数据内存空间,存储全局变量和静态变量,全局变量和静态变量的存储是放一块的,初始化的全局变量和静态变量放一块区域,没有初始化的在相邻的另一块区域,程序结束后由系统释放。 4、文字常量区:常量字符串就是放在这里,程序结束后由系统释放。 5、程序代码区:存放函数体的二进制代码。 堆和栈的区别: 一、由以上综述就可以得知,他们程序的内存分配方式不同。 二、申请和响应不同: 1、申请方式:stack由系统自动分配,heap需要程序员自己申请,C中用函数malloc分配空间,用free释放,C++用new分配,用delete释放。 2、申请后系统的响应: 栈