第一章
1.1 CPU 的组成
1.1.1 运算器:
功能:
(1)执行所有的算术运算。如加、减、乘、除等基本运算及附加运算。
(2)执行所有的逻辑运算并进行逻辑测试。如与、非、或、零值测试或两个值的比较等。
组成:
(1)算术逻辑单元(ALU):负责处理数据,实现对数据的算术运算和逻辑运算。
(2)累加寄存器(AC):也称累加器,当算术逻辑单元 ALU 执行运算时,为其提供一个工作区。
(3)数据缓冲寄存器(DR):对内存进行读写操作时,用 DR 暂时存放由内存储器读写的一条指令
或一
个数据字。作为 CPU 和内存、外设之间在操作速度上的缓冲,以及数据传送的中转站。
(4)状态条件寄存器(PSW):保存根据算术指令和逻辑指令运行或测试的结果建立的各种条件
码的
内容,主要分为状态标志和控制标志。如运算结果进位标志(C)、运算结果溢出标志(V)、运
算结
果为 0 标志(Z)、运算结果为负标志(N)、中断标志(I)、方向标志(D)等。
1.1.2 控制器:
功能:决定了计算机运行过程的自动化。它不仅要保证程序的正确执行,而且要能够处理异
常事件。
包括:指令控制逻辑、时序控制逻辑、总线控制逻辑和中断控制逻辑等几个部分。
控制器在工作过程中主要使用以下部件:
(1)指令寄存器(IR):用来暂时存放一条指令, 由指令译码器根据指令寄存器中的内容产生各
种微
操作指令,控制其它部分协调工作。
(2)程序计数器(PC):存放的是将要执行的下一条指令的地址。
(3)地址寄存器(AR):保存当前 CPU 所访问的内存单元的地址。由于内存和 CPU 存在操作速度
上的差
异,所以需要使用 AR 保持地址信息,直到内存读/写操作完成为止。
(4)指令译码器(ID):对指令中的操作码字段进行分析解释,识别该指令规定的操作,然后向操
作
控制器发出具体的控制信号。
1.1.3 寄存器组:
(1)专用寄存器:运算器和控制器中的寄存器是专用寄存器,其作用是固定的。
(2)通用寄存器:用途广泛并可由程序员规定其用途,其数目因处理器不同而不同。
1.1.4 数的表示
原码表示法:
最高位是符号位,0 表示正号,1 表示负号。其余 n-1 位表示数的绝对值。
0 的原码表示有两种形式: [+0] 原=00000000,[-0]原=1 000000
也就是说在原码中,00000000 和 1 0000000 都表示 0
原码可以表示的定点整数范围为: - (2n-1-1) ~ +(2n-1-1)
可以表示的数的量为: (2n-1-1) X2+1=2n-1
1.1.5 反码表示法:
正数的反码与其原码相同,负数的反码是其绝对值按位求反。
0 的反码表示有两种形式: [+0]反=0 0000000,[- 0]反=1 1111111
也就是说在反码中,00000000 和 11111111 都表示 0
反码可以表示的定点整数范围为: -(2n-1-1) ~ +(2n-1-1),,,n=8 时,即为-127 ~ 127
可以表示的数的量为: (2n-1-1) X2+1=2n-1
1.1.6 移码表示法
移码表示法是在数 X.上增加一个偏移量来定义的,常用于表示浮点数中的阶码。
在偏移量为 2n-1 的情况下,只需要将一个数的补码的符号位取反,就可以得到它的移
码。
0 的移码也只有一种表示形式: [+0]补=1 000000,,[-0]补=1 0000000
而-128 的移码为 0 0000000, 因此,与补码一样,
移码可以表示的定点整数范围为: -2n-1 ~ +(2n-1-1)
可以表示的数的量为: 2n-1+(2n-1-1)+1=2n
[+45]
源码 将 10 进制转为 2 进制
0 0101101
源码 两个数表示 0 范围±2n-1
反码 两个数表示 0 范围±2n-1
保持上面不变
补码 一个数表示 0 范围+2n ~ -2n-1 保持上面不变
移码 一个数表示 0 范围+2n ~ -2n-1 把补码的符号位取反
[-45]
1 0101101
除第一位,01 全部兑换
反码加 1
把补码的符号位取反
1.1.7 浮点表示
十进制中,83. 125 可以表示成 102 X 0.83125 或者 103 X 0.083125 或者 104X 0.0083125 等
等。
同样地,二进制数 1011.10101 可以写成 24 X 0.101110101、25 X 0.0101110101 或者 26 X
0.00101110101。
因此,一个二进制数 N 我们可以写成一种更一般的形式:
N=2EX F
其中,E 称为阶码,F 称为尾数。阶码通常为带符号的纯整数,尾数为带符号的纯小数。
1、进制的缩写:
二进制简写为 B。八进制简写为 0。十进制简写为 D。十六进制简写为 H。
2、二/八/十六进制转为十进制(按权展开) :
二进制 10100.01 (B)=1X24+0X23+1X22+0X21+0X20+0X2-1+1X2-2
八进制 256.3(0)=2X82+5X81+6X 80+3X 8-1
十六进制 6F8A(H)=6X163+15X 162+8X 161+10X 160
3、十进制转为二/八/十六进制(整除取余法)
十进制 100 转为二进制: 1100100 (B)
十进制 100 转为八进制: 144 (0)
+进制 100 转为十六进制: 64 (H)校验码
二进制转十进制 :位数值*2n 相加,从 2 的 0 次方开始
二进制转八进制:三位 2 进制合成一个八进制,从后面开始算
二进制转十六进制:四位 2 进制合成一个十六进制,从后面开始算
十进制转二进制:取 2 的余数,从下往上开始算
八进制转二进制:分开取余,三位一组
十六进制转二进制:分开取余,四位一组
(1)奇偶校验码
通过在编码中增加一位校验位来使编码中 1 的个数变为奇数(奇校验)或偶数(偶校验),
从而使码距变为 2。对于奇校验,它只能发现奇数位出错的情况,却不能发现偶数位出错的
情况。
(2)海明码
也是利用奇偶性来检错和纠错的校验方法。设数据位是 n 位,校验位是 k 位,则 n 和 k
必须满足以下关系:
2k-1≥n+k, k 取满足关系的最小值(必须记住)
(3)循环冗余校验码(CRC)
它利用生成多项式为 k 个数据位产生 r 个校验位来进行编码,其编码长度为 k+r。CRC
编码采用的是模 2 运算,即异或运算:相异为真,非异为假。
1.2 计算机体系结构分类
(1)按处理机的数量进行分类:
单处理系统
并行处理与多处理系统
分布式处理系统
(2)微观上按并行程度分类: FIynn 分类法、冯泽云分类法、Handler 分类法等等
C I SC 和 RISC
流水线技术
流水线周期:各子任务中执行时间最长的(最慢的)子任务的执行时间。
流水线执行完 n 条指令所需要的时间:
Tn=执行一条指令所需时间+(n-1)*流水线周期
吞吐率:是指单位时间里流水线处理机流出的结果数。对指令而言,就是单位时间里执行的
指令数。
最大吞吐率:p=1/max(t1,t2,t3.。。),即最长子过程所用时间的倒数。
实际吞吐率:TP=n/Tn
存储系统
1、存储器的分类:
●按存储器所处的位置:可分为内存和外存。
●按构成存储器的材料:可分为磁存储器、半导体存储器和光存储器。
●按存储器的工作方式:可分为读写存储器和只读存储器。
●按访问方式:可分为按地址访问的存储器和按内容访问的存储器。
●按寻址方式:可分为随机存储器、顺序存储器和直接存储器。
2、随机访问存储器:
●静态随机访问存储器(SRAM)
●动态随机访问存储器(DRAM)
存储系统
地址映像
(1)直接映像:主存的块与 Cache 块的对应关系是固定的,主存中的块只能存放在 Cache 存储
器的相同块号中。
优点:地址变换简单、访问速度快。
缺点:块冲突率高、Cache 空间得不到充分利用。
地址映像
(2)全相联映像:主存与 Cache 存储器均分成
容量相同的块。允许主存的任一块可以调入 Cache
存储器的任何一个块的空间中。
优点:灵活,块冲突率低,只有在 Cache 中的块全
部装满后才会出现冲突,Cache 利用率高。
缺点:无法从主存块号中直接获得所对应 Cache 的
块号,变换比较复杂,地址变换速度慢,成本高。
(3)组相联映像:是前两种方式的折衷。
将 Cache 中的块再分成组。组采用直接映像
方式而块采用全相联映像方式。主存的任
何区的 0 组只能存到 Cache 的 0 组中,1 组只
能存放到 1 组中,依此类推。而组内的块可
以存入 Cache 中相同组的任一块中。
公式:
主存地址位数=区号+组号+主存块号+块内地址
Cache 地址位数=组号+组内块号+块内地址
存储系统
(1) Cache 的性能分析:
设 Hc 为 Cache 的命中率,tc 为 Cache 的存取时间,tm 为主存的访问时
间,则 Cache 存储器的等效加权平均访问时间 t 为:
ta=Hctc+ (1-Hc)tm
(2)虚拟存储器实际上是一种逻辑存储器。
(3)相联存储器是一种按内容访问的存储器。
磁盘容量的计算:
●道密度:沿径向的单位距离的磁道数。
位密度:每个磁道上单位距离可记录的位数。
每个扇区内可存放的数据块大小是相同的。每条磁道也都记录相同大小的数据量。
非格式化容量(按周长) =面数 X (磁道数/面) X 内圆周长 X 最大位密度
格式化容量(按扇区) =面数 X (磁道数/面) X (扇区数/道) X (字节数/扇区)
N 个盘片,有效盘面=2n-2
磁道数=(外半径 cm -内半径 cm)*磁道密度
字节编址计算,大址-小址+1,单位为 byte
输入输出技术
内存与接口的编址方式:
(1)内存与接口独立编址:地址空间不同,指令不同。
优点:指令容易区分使用和辨认。
缺点:接口指令太少,功能弱。
(2)内存与接口统一编址:地址空间统一,在同一地址空间再划分,划分好后不共用,各用各
的,指令共用。
优点:用于内存的指令可以用于接口,大大增强了对接口的操作功能。
缺点:内存地址不连续,内存和接口共用指令导致程序维护不便。
●程序控制方式:
1、无条件传送:外设总是准备好的,无条件,随时接收和提供数据。
2、程序查询方式: CPU 利用程序来查询外设的状态,准备好了再传数据。
3、中断方式: CPU 不等待,也不执行程序去查询外设的状态,而是由外设在准备好以后,向
CPU 发出中断请求。
以上三种方式都需要 CPU 的参与。
4、DMA 方式:不需要 CPU 干预,实际操作是由 DMA 硬件直接执行完成的。
5、通道方式和外围处理机方式:更进一步 减轻了 CPU 对 I/0 操作的控制,更进一步提高了
CPU 的工作效率,但是以增加更多硬件为代价的。
1.3 加密
1.3.1 对称加密技术
密文
10001 10111
●对称加密技术:文件加密和解密使用相同的密钥,或者虽然不同,也可以从其
中一个很容易地推导出另一个。
1101100010
明文
代表算法:
(1) DES: 主要采用替换和移位的方法加密。它用 56 位密钥对 64 位二进制数据块
进行加密。
(2) 3DES: 用两个 56 位的密钥。
(3) RC-5:它是参数可变的分组密码算法,三个可变的参数是:分组大小、密钥大小和加密
轮数。在此算法中使用了三种运算:异或、加和循环。
1101100010
明文
(4) IDEA: 类似于 DES, 其密钥长度为 128 位。
(5) AES: 基于排列和置换运算。
1.3.2 非对称加密技术
●非对称加密技术:同样使用两个密钥:加密密钥和解密密钥,一个是公开的,一
个是非公开的私有密钥。他们是一对,只有使用对应的密钥才能解密。
非对称加密有两个不同的体制:加密模型和认证模型。
(1)加密模型:
非对称加密算法的保密性较好,它消除了最终用户频繁交换密钥的需要,但加密
和解密花费时间长、速度慢,不适合于对文件加密,而只适用于对少量数据加密。
代表算法: RSA, 基于大素数分解的困难性。
信息摘要
●Hash 函数:输入一个长度不固定的字符串,返回一串固定长度的字符串,又称
Hash 值 。
●单向 Hash 函数用于产生信息摘要。
●对于特定的文件而言,信息摘要是唯一的。
●在某特定的时间内, 无法查找经 Hash 操作后生成特定 Hash 值的原报文,也
无法查找两个经 Hash 操作后生成相同 Hash 值的不同报文。
●在数字签名中,可以解决验证签名和用户身份验证、不可抵赖性的问题。
●MD2、MD4 和 MD5 是被广泛使用的 Hash 函数,它们产生-种 128 位的信息摘
要。
●SHA 产生 160 位的信息摘要。