本文参考b站UP主zst,原视频:软件设计师 上午题 计算机系统 5-6分
本文旨在从题目出发,只保留真题考到的相关的概念,都是浓缩过的知识点,所以简练而精髓,每一个知识点后都附带真题解析,各位小伙伴可以自行点开观看,方便复习。
计算机基本硬件系统的组成是:运算器、控制器、存储器、输入设备、输出设备。
运算器和控制器集成在一起被称为中央处理单元CPU,CPU是硬件系统的核心。
中央处理单元是计算机系统的核心部件,它负责获取程序指令、对指令进行译码并加以执行。
控制器:
运算器:
此外CPU还需对系统内部和外部的异常做出反应。
运算器由算术逻辑单元ALU、累加寄存器AC、数据缓冲寄存器DR、状态条件寄存器PSW组成。
运算器只能完成运算,控制器控制整个CPU工作,决定计算机运行过程的自动化。不仅保证程序的正确执行,还要处理异常事件。
指令:操作码(+-*/)+地址码(1,2,3)
汇编语言中,用户可以通过访问
不能直接访问指令寄存器,对用户是完全透明的
1k=210 =1024
计算机单位从小到大排列:
1B = 8b
1KB = 1024B
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
最小的数据单位是比特b,最小的存储单位是字节B
十进制(D):0-9
按权展开求和:对应 n进制->十进制 例如:
192(D)=2*100+9*101+1*102 =192(D)
1011(B)=1*20+1*21+0*22+1*23 =11(D)
除n取余法:对应十进制->n进制 例如:
192/10=19...2
19/10=1...9
9/10=0....1
余数从下向上取:192(D)->192(D)
11/2=5...1
5/2=2...1
2/2=1...0
1/2=0...1
余数从下向上取:11(D)->1011(B)
二进制(B):0-1
20=1 | 21=2 | 22=4 | 23=8 | 24=16 | 25=32 | 26=64 |
---|---|---|---|---|---|---|
27=128 | 28=256 | 29=512 | 210=1024 | 211=2028 | 212=4096 | 213=8192 |
八进制(O):0-7
对应三位二进制数 7(O)=111(B)
十六进制(H):0-15(0-9A-F)
对应四位二进制数 F(H)=1111(B)
10 | 11 | 12 | 13 | 14 | 15 |
---|---|---|---|---|---|
A | B | C | D | E | F |
进制加减法:
n进制加法:逢n进1
n进制减法:借1当n
例题:进制加减法
区域(闭区间)的容量:大-小+1
与:有0则0
或:有1则1
同或:相同则1
异或:相同则0
数值在计算机种以二进制展示,称为机器数,符号是0和1,小数点则隐含不占位置。
机器数有无符号数和有符号数之分。
[+0]原 = 0 00000000
[-0]原 = 1 00000000
[+0]反 = 0 00000000
[-0]反 = 1 11111111
[+0]补 = 0 00000000
[-0]补 = 0 00000000
,[[x]补]补 = [x]原[+0]移 = 0 00000000
[-0]移 = 0 00000000
,0的补码和移码都相同当字长为n时,定点数的补码和移码可以表示2n 个数,原码和反码只能表示2n -1个数,表示的范围小,在运算中很容易因结果超出范围而溢出。浮点数是小数点位置不固定,可以表示更大的范围。
一个二进制数N浮点数表示法:N=2E *F。E为阶码,是带符号的纯整数。F为尾数,是带符号的纯小数(整数部分一定是0)。当小数点的位置改变时,阶码也对着改变,可用多个浮点形式表示同一个数。
如果两个浮点数的阶数不同,先对阶,小阶向大阶对齐,浮点数向右移动,损失的精度小
浮点数的表示范围由阶码决定,精度由尾数决定。
规格化就是将尾数的绝对值限定在[0.5,1]
如果浮点数的阶码(包括1位阶符)用R位的移码表示,尾数(包括1位数符)用M位的补码表示,这这种浮点数的数值范围如下:
指令系统采用不同的寻址方式的目的是扩大寻址空间并提交编程灵活性
o->操作数
o->内存单元->操作数
o->寄存器->操作数
o->寄存器->内存单元->操作数
o->内存单元->内存单元->操作数
立即寻址>寄存器寻址>直接寻址->寄存器间接寻址->间接寻址
码距=1,无法检错和纠错
码距=2,可以检错,无法纠错(奇偶校验码,循环冗余校验码)
码距>=3,可以检错和纠错(海明码)
奇偶校验码只能检测出传输过程中的奇数位的错误,不能纠错。通过在编码中增加以为校验位来时编码中1的个数为奇数(奇校验)或为偶数(偶校验),从而使码距为2。
常见的奇偶校验码有三种:水平奇偶校验码、垂直奇偶校验码、水平垂直奇偶校验码
海明码是在数据位时间的特定位置上插入k个校验位,通过扩大码距来实现检错和纠错。
海明码需要满足公式:2k-1>= n+k
循环冗余校验码可以检错,不能纠错。有k个数据位后跟r个校验位,校验位采取CRC编码,通过模2运算来得到。
特性 | RISC(精简指令集计算机) | CISC(复杂指令集计算机) |
---|---|---|
指令种类 | 少、精简 | 多、丰富 |
指令复杂度 | 低(简单) | 高(复杂) |
指令长度 | 固定 | 变化 |
寻址方式 | 少 | 复杂多样 |
实现(译码)方式 | 硬布线控制逻辑 | 微程序控制技术 |
通用寄存器数量 | 多、大量 | 一般 |
流水线技术 | 支持 | 不支持 |
执行n条指令的流水线公式:执行一条指令的时间+(n-1)*(最长时间段)。提高设备利用率
操作周期:最长时间段
加速比=流水线/不采用流水线
一条指令的吞吐率=最长时间段的倒数
n条指令的吞吐率=n/流水线公式
按存储器所处位置分类可以分为内存和外存
按存储器的构成材料分类可以分为磁存储器、半导体存储器和光存储器
按存储器的工作方式分类可以分为读写存储器(RAM)和读存储器
闪存是以块为单位存储的,断电之后信息不会丢失,可以代替ROM,不能代替主存
虚拟存储器是由主存和辅存构成的
空间局部性是访问一个地址之后,之后还会访问相邻的地址
时间局部性是访问一个地址之后,之后还会访问该地址
高速缓存用于存放当前最活跃的程序和数据,特点:
替换算法
cache与主存的地址映射是有硬件直接完成的。
高速缓存中的地址映像方法
计算机在执行程序的过程总,遇到紧急事件,会暂停当前运行的程序,转去处理紧急事件,处理完后自动返回源程序。
在明文消息传输中会遇到:
对称加密(私有密钥加密)
非对称加密(公开密钥加密)
混合加密:用对称加密的密钥加密明文,再用非对称加密的对方的公钥加密对称密钥,接收方接受之后,用私钥解密对称加密的密钥,再用对称加密的密钥解密明文。
摘要:将发送的明文进行Hash算法后得到摘要,放在密文后一起发送过去,与接收方解密后的明文进行相同的Hash算法得到的摘要进行对比,如果一致,没有篡改,否则被篡改了。
数字签名:发送方用自己的私钥对摘要进行签名(加密),得到数字签名放在密文后一起发送过去,接受方用发送方的公钥对数字签名进行验证(解密)。如果验证成功说明该信息没有被假冒且不能被否认,否则被假冒了。
CA:权威机构
数字证书:用户向CA申请数字证书,将个人信息和公钥发给CA,CA颁给用户数字证书,数字证书用CA的私钥进行签名,用CA的公钥验证数字证书,得到用户的公钥
对称加密算法:
非对称加密算法
其他算法