<span>软考计算机系统知识</span>
计算机系统知识
考点归纳
1、数值的计算
各进制数相互间的转换、二进制的特点、原码、反码、补码、移码的特点、数值的表示范围
2、计算机系统的组成
计算机包含的部件、常见的寄存器及各寄存器的作用重点
、计算机的性能和基本工作原理、计算机体系结构的分类、指令系统基础、寻址方式重点
、CISC和RISC、流水线工作原理、流水线的计算重点
、总线系统
3、存储系统
存储器的分类、主存-Cacher的工作原理、命中率计算、存储芯片容量计算重点
、虚拟存储器重点
、RAID类型和特点、主存、存储器地址编码
4、可靠性与性能评价
可靠性计算重点
、系统性能评价
5、校验码
循环冗余校验码(CRC)、海明效验码、奇偶校验码的基本原理
6、输入输出
常见的I/O设备、I/O控制方式
基础知识
硬件基本组成
- 计算机系统是由硬件与软件组成的
- 计算机系统的基本硬件系统由运算器、控制器、存储器、输入设备、输出设备
- 运算器与控制器等部件被集成为CPU
- 存储器分内存与外存
- 输入设备与输出设备统称外部设备
中央处理单元CPU
- 功能:程序控制、操作控制、时间控制、数据处理以及对系统内外的中断做出响应并及时处理
- 组成:运算器、控制器、寄存器组
- 运算器
- 算术逻辑单元ALU:负责处理数据,实现对数据的算术运算和逻辑运算
- 累加寄存器AC:为ALU提供一个工作区,维持ALU的运算
- 数据缓冲寄存器DR:对内存储器进行读/写操作时,暂时存放其指令或数据字,将不同时间段的数据分隔
- 状态条件寄存器PSW:保存由指令运行或测试的结果建立的各种条件码内容
- 控制器
- 指令寄存器IR:当CPU执行一条指令时,先将它从内存储器取到缓冲寄存器中,再送入IR暂存
- 程序计数器PC:寄存信息、计数功能
- 地址寄存器AR:保存当前CPU所访问的内存单元的地址
- 指令译码器ID:对指令中的操作码字段进行分析解释,识别操作
- 寄存器组
- 分专用寄存器、通用寄存器
数据表示
-
进制转换
- 十进制转二进制
把被转换的十进制整数反复地除以2,直到商为0,所得的余数(从末位读起)就是这个数的二进制表示。简称“除2取余法”。
例: (221)10=(11011101)2
- 二进制转十进制
方法是:二进制数按权展开求和。
例:(10110)2转换成十进制数(22)10
- 十进制转二进制
-
原码、反码、补码和移码
-
1、带符号数的表示
通常的做法是约定一个数的最高位为符号位,若该位为0,则表示正数;若该位为1,则表示负数。
1.原码
用最高位表示符号位,数值部分用二进制绝对值表示,这就是原码的表示方法。例如:+11的原码:00001011 -11的原码是:10001011
2.反码
原码变反码规则:正数的反码和其原码形式相同,负数的反码是除符号位,其他各位逐位取反(即0变1,1变为0) 。+11的原码:00001011 -11的原码是:10001011 例如:+11的反码:00001011 -11的反码是:11110100
3.补码
补码规则为:正数的补码和其原码形式相同,负数的补码是原码除符号位以外逐位取反(即0变1,1变为0),最后在末尾加1。+11的原码:00001011 -11的原码是:10001011 例如:+11的补码:00001011 -11的补码是:11110101
将补码转换为真值:[[X]补]补=[X]原
4.移码(增码)
无论正数、负数,在补码的基础上对符号位取反,一般用做浮点数的阶码,引入的目的是为了保证浮点数的机器零为全0。+11的补码:00001011 -11的补码是:11110101 例如:+11的移码:10001011 -11的移码是:01110101
-
- 负数的左移右移
-
1)负数的右移:负数右移的话,由于要保持它是负数,所以负数的二进制的右边补1。如果一直右移的话,最后就就变成0xFFFFFFFF 即-1
如: -4>>1 为-2 ;-4>>2为-1 -
2)负数的左移:跟正整数左移一样,右边补0,一直左移的话,最后就是0啦。-2<<2 为-4 ; -2<<31为0
-
-
定点数与浮点数
-
计算机中,通常是用定点数来表示整数和纯小数,分别称为定点整数和定点小数。对于既有整数部分、又有小数部分的数,一般用浮点数表示。
1、定点数
- 定点整数:小数点的位置固定在最低位的右边,不占位
- 定点小数:小数点的位置固定在符号位与最高数值位之间,表示一个纯小数。
2、浮点数
用类似科学计数法来表达,即
N=M*Re
M称为尾数,R称为基数,e为阶码(指数)
比如 1001.101 的规范浮点数表达为 1.001101 ×23浮点数利用指数达到了浮动小数点的效果,从而灵活地表达更大范围的实数。
-
原码定点整数-(-1+2(n-1))~+(-1+2(n-1)),定点小数-(1-2(1-n))~+(1-2(1-n))
-
反码定点整数-(-1+2(n-1))~+(-1+2(n-1)),定点小数-(1-2(1-n))~+(1-2(1-n))
-
补码定点整数-2(n-1)~+(-1+2(n-1)),定点小数-1~+(1-2^(1-n))
-
移码定点整数-2(n-1)~+(-1+2(n-1)),定点小数-1~+(1-2^(1-n)) -
-
-
校验码
-
奇偶校验码:在编码中增加一位校验位来使编码中1的个数为奇数(奇校验)或者为偶数,使码距变为2
- 奇偶校验较简单,串口通信中使用奇偶校验作为数据校验的方法 。
- 奇校验:被传输的有效数据中“1”的个数是奇数个,校验位 填“0”,否则填“1”;
- 偶校验:被传输的有效数据中“1”的个数是偶数个,校验位 填“0”,否则填“1”。
例:奇校验 1000110(0) 偶校验 1000110(1)
使用一位奇偶校验的方法能够检测出一位错误,但无法判断是哪一位出错。
当发生两位同时出错的情况时,奇偶校验也无法检测出来。所以奇偶校验常用于对少量数据的校验,如一个字节。 -
海明码:设数据位是n位,校验位是k位,其关系:-1+2^k >= n+k
- 还需要记住以下几个关键的关系。
• 可查出多少位错误:可以发现“ ≤码距-1” 位的错误。
• 可以纠正多少位错误:可以纠正“ <码距/2” 位的错误,因此如果要能够纠正n位错误,所需最小的码距应该是“ 2n+1” 。
- 海明码的原理
在数据中间加入几个校验码,码距均匀拉大,当某一位出错,会引起几个校验位的值发生变化。 - 海明不等式:
校验码个数为k,可以表示2k个信息,1个信息用来表示“没有错误”,其余2k -1个表示数据中存在错误,如果满足2k-1≥m+k( m+k为编码后的数编总长度),则在理论上k个校验 码就可以判断是哪一位(包括信息码和校验码)出现了问题。 - 海明码的编码规则
校验位依次放在第2i(i=0,1,2,3…)位,其余位置为信息位。
4个信息位k0,k1,k2,k3;3个校验位r0,r1,r2。
第 i 个信息位的位数为参与校验它的校验位的位数之和。
如上例 7=4+2+1;6=4+2;5=4+1;3=2+1。
若三个校验方程都成立,即方程式右边都等于0,则说明没有出现错误。若不成立,即方程式右边不等于0,说明有错。 从三个方程式右边的值,可以判断那一位出错。出错位置为从下向上看相应的二进制数值,若三个方程式右边的值为100,说明第4位出错。
- 还需要记住以下几个关键的关系。
-
循环冗余效验码CRC:若信息码是k位,则校验码即为n-k位,n为CRC码的字长
-
例:信息位为1010 0110,生成多项式为 a(x)= X5+X4+X+1,则: 1010 0110 左移5位-> 1010 0110 0000 0 用1010 0110 0000 0 和110011 进行模2运算(异或) 余11000 即校验码11000,所以CRC码是1010 0110 11000。
-
-
计算机体系结构
- 体系结构的发展
-
常见的分类法包括Flynn、冯氏分类法两种。
-
根据指令流、数据流和多倍性三方面进行分类。
-
流水线技术
流水线技术是指在程序执行时,多条指令重叠进行操作的一种任务分解技术。把一个任务分解为若干顺序执行的子任务,不同的子任务由不同的执行机构来负责执行,而这些执行机构可以同时并行工作。 -
(1)计算执行时间
- 假定有某种类型的任务,可分成N个子任务,每个子任务需要时间t,则完成该任务所需的时间为
N×t
。 - 若以传统的方式,完成k个任务所需的时间是
kNt
。 - 使用流水线技术,花费的时间是
Nt+(k-1)t
。
注意,如果每个子任务所需的时间不同,其时间取决于执行顺序中最慢的那一个。
例1:若指令流水线把一条指令分为取指令、分析和执行三部分 ,三部分的时间分别是取指令2ns,分析2ns,执行1ns。最长的是2ns,因此100条指令全部执行完毕所需要的时间是:(2ns+2ns+1ns)+(100-1) x2ns=203ns
吞吐率为 100×109 /203=4.93×108/s
- ①流水线的吞吐率
TP=n/Tk
指在单位时间内流水线所完成的任务数量或输出的结果数量。
n为任务数,Tk是处理完成n个任务所用的时间 - ②加速比
是指不采用流水线的执行时间/采用流水线的执行时间。
用来衡量并行系统或程序并行化的性能和效果。
例1中的加速比为 500/203=2.46
(如果不采用流水线,则执行100条指令需要500 ns)。
- 假定有某种类型的任务,可分成N个子任务,每个子任务需要时间t,则完成该任务所需的时间为
-
(2)影响流水线的主要因素
- 转移指令:因为前面的转移指令还没有完成,流水线无法确定下一条指令的地址,因此也就无法向流水线中添加这条指令。
- 共享资源访问的冲突:后一条指令需要使用的数据,与前一条指令发生冲突,或者相邻的指令使用了相同的寄存器
- 响应中断:当有中断请求时,流水线也会停止。对于这种情况有两种响应方式:
- 精确断点法:立即停止,这种方法能够立即响应中断;
- 不精确断点法:流水线中的指令继续执行,不再新增指令到流水线。
- 指令系统
- CISC复杂指令集计算机
- RISC精简指令集计算机
-
存储系统
- 分类
- 按所处位置分:内存、外存
- 构成材料分类:磁存储器、半导体存储器、光存储器
- 工作方式分:读/写存储器、只读存储器
- 按寻址方式分类:随机存储器RAM、顺序存储器SAM、直接存储器DAM
- 相联存储器
- 高速缓存
- 虚拟存储器
- 外存储器
- 磁盘阵列技术
- 分类
-
输入/输出技术
- 略
-
总线结构
- 分类:数据总线、地址总线、控制总线
-
安全性、可靠性与系统性能评测基本知识
- 安全概述
- 计算机的安全等级:A1>B3>B2>B1>C2>C1>D
- 安全威胁:授权侵犯、拒绝服务、窃听、信息泄露、截获/修改、假冒、否认、非法使用、人员疏忽、完整性破坏、媒体清理、物理入侵、资源耗尽
- 影响因素
- 加密与认证技术
- 加密技术
- 对称加密算法:DES、3DES、RC-5、IDEA、AES
- 非对称加密算法:RSA、
- 认证技术
- 机构认证、数字证书库、密钥备份与恢复系统
- MD5是一种Hash函数
- 加密技术
- 计算机可靠性
- 串联系统:R=R1R2R3……
- 并联系统:R=1-(1-R1)(1-R2)……(1-Rn)
- 系统的性能评价
- 常用方法:时钟频率、指令执行速度、等效指令速度法、数据处理速率、核心程序法
- 基准测试程序
这一章主要知识点就这么多!!!如有不足,请留言!