计算机组成原理考研复习

第1章 计算机系统概述

1.微型计算机的发展以微处理器技术为标志

2.机器字长:计算机一次整数运算所能处理的二进制位数

3.操作系统位数:其所依赖的指令集的位数。操作系统位数影响的是系统所能访问存储空间的大小

4.机器语言和汇编语言的区别:
1)机器语言:计算机能够接受和应用的语言,是二进制的编程语言,人类看不懂
2)汇编语言:用助记符来表示计算机操作命令的一种编程语言,它主要面写硬件,比C语言等高级语言低级,比机器语言(就是计算机能直接执行的程序,我们编的程序都要翻译成机器语言才能执行)高级点
简单点就是,机器语言能由机器直接执行,汇编是面向硬件的一种编程语言,比机器语言要高级

5.PC和CS:IP是一样的,都是存储当前想要执行指令的地址。PC和IP只是程序计数器在不同的CPU架构下的不同叫法而已,在X86中称为IP,在ARM中称为PC。在X86中不能直接给IP赋值,但是可以通过jmp来改变它的值;而ARM可以通过LDR直接对PC赋值。(LDR是个伪指令,可以将直接地址加载到寄存器中,以方便跳转到这个地址)

6.取数指令工作过程详解
在这里插入图片描述
最后,每取完一条指令,还须为下一条指令做准备,形成下一条指令的地址,即(PC)+1->PC
可以看到,一条指令的执行分三个阶段:取指令,分析指令,执行指令。
其中我们可以看到MDR里面的内容有时候是指令,有时候是操作数,那么是如何判断的呢?
是通过指令当前处于哪个运行周期来判断的:在取指令阶段,MDR放的肯定是指令;在执行指令阶段,MDR放的肯定是操作数;
那么又是如何判断处于哪个阶段的呢?是通过一些相关寄存器(或者说触发器)的值来判断的

7.裸机:没有配备软件的纯硬件系统

8.冯·诺伊曼机器:
存储程序:将指令以代码的形式事先输入到计算机主存储器中,然后按其在存储器中的首地址执行程序的第一条指令,往后就按照该程序的规定顺序执行其它指令,直到程序执行结束在这里插入图片描述

第2章 数据的表示和运算

1.在整数位中,最低位规定为第0位

扫描二维码关注公众号,回复: 11694442 查看本文章

2.并不是所有十进制小数都可以用二进制准确地表示,比如0.3;但是所有二进制小数都可以用十进制表示

3.今日错因,二进制数中,11+11=?这里你容易错的是,如果有进位,而且是1+1型的,你就容易只进位,却遗漏了原来的1;解决方法就是先写成3的二进制形式:11,再决定进不进位之类的

4.ASCII码是7位二进制编码

5.4的二进制是100还是010?12的二进制呢?

6.在计算机中,通常用无符号数来表示主存地址

7.实现N位(不包含符号位)补码一位乘时,乘积为2N+1位

8.模4补码中,存储只需要一个符号位,在ALU中才是两个符号位

9.关于IEEE754标准的几个问题:
1)如果这个小数无法用二进制表示怎么办?比如f=1.5678E3f
截取,把不能表示的二进制小数部分直接删掉
2)float怎么转成double,估计是直接扩展阶码和尾数的数位吧
3)(d+f)-f不一定等于d,因为d+f有可能溢出;(d+f)-d也不一定等于f,可能等于0,比如d=1.5E100,f=1.5678E3,则(d+f)-d=0,因为在对阶的过程中,f的尾数会被全部移掉,所以在这个例子中d+f=d

10.在IEEE754标准中,尾数的最大值不是1,而是1.1111…1

11.基数和偏置值你要分清楚,比如IEEE754中float的偏置值是127,10进制中的基数是10,就酱

12.精度:指一个数所含有效数值位的位数,比如IEEE754单精度浮点数有23位尾数,并且有一个隐含的整数1,所以精度就是至多24位

13.不管是正数还是负数,补码、反码的符号位都和原码的符号位是一致的;如果是正数,那么三码一致。三码的关系如下:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/yuanren201/article/details/107481552