目录
计算机的基本硬件系统:运算器,控制器,存储器,输入设备,输出设备。其中运算器和控制器等部件被集成为中央处理器(CPU)。
运算器
主要功能:
1)执行所有算术运算,如加、减、乘、除等基本运算及附加运算
2)执行所有的逻辑运算并进行逻辑测试,如与、或、非、零值测试、两个值的比较等。
主要组成部件:
1)算数逻辑单元(ALU):ALU是运算器的重要组成部件,负责处理数据,实现对数据的算术运算和逻辑运算。
2)累加寄存器(AC):简称累加器,它是一个通用寄存器,功能是当运算器的算术逻辑单元执行算术或逻辑运算时,为ALU提供一个工作区。例如:在执行一个减法运算前,先将被减数取出暂存在AC中,再从内存储器中取出减数,然后同AC中的内容相减,运算结果放回AC中,运算器中至少要有一个累加寄存器。
3)数据缓冲寄存器(DR):作为CPU和内存、外部设备之间数据传送的中转站。
4)状态条件寄存器(PSW):保存由算术指令和逻辑指令运行或测试结果建立的各种条件码内容。
控制器
运算器只能完成运算,而控制器用于控制整个CPU的工作,决定了计算机过程的自动化,它不仅要保证程序的正确执行,而且要能够处理异常事件。
主要组成部件:
1)指令寄存器(IR):当CPU执行一套指令时,先把它从内存储器取到缓冲寄存器(DR)中,再送入IR暂存。
2)程序计数器(PC):PC的内容是将要执行下一条指令的地址,执行指令时,CPU自动修改PC内容,顺序执行时,PC自动+1,转移执行,PC保存下一步要执行指令的地址。
3)地址寄存器(AR):AR保存当前CPU所访问的内存单元的地址,由于内存于CPU存在操作速度上的差异,所以需要保存信息地址。
4)指令译码器(ID):对指令中的操作码字段进行分析解释,识别该指令规定的操作,发出控制信号,控制各部件完成相应功能。
注意:用户可见:通用寄存器、程序状态字寄存器、程序计数器、累加寄存器。
用户不可见(透明):指令寄存器、数据缓冲寄存器、存储器地址寄存器、存储器数据寄存器。
计算机单位转换
计算机中最小的数据单位:bit(位);
计算机中最小的存储单位:byte(字节);
1字节(Byte) = 8位(bit) 2^3方
1KB( K,千字节) = 1024B 2^10方
1MB( M,兆字节) = 1024KB
1GB( G,吉字节,千兆) = 1024MB
1TB( T,万亿字节,太字节) = 1024GB
1PB( P,千万亿字节,拍字节) = 1024TB
1EB( E,百亿亿字节,艾字节) = 1024PB
原码、反码、补码、移码
原码:符号位0正1负,其余n-1位表示数值的绝对值。0的原码有两种形式(按8位举例):【+0】=0 0000000,【-0】=10000000。
反码:符号位0正1负,正数的反码=原码,负数的反码是其绝对值位按位取反,0的反码有两种形式:【+0】= 0 0000000,【-0】= 1 1111111。
补码:符号位0正1负,正数的补码、原码、反码相同,负数的补码等于其反码的末位加1,0有唯一的补码:【0】= 0 0000000。
移码:符号位1正0负,后面n-1位与其补码相同,0有唯一的移码:【0】= 1 0000000。
计算机采用补码表示法可以简化计算机运算部件的设计。
浮点数
当机器字长为n时,定点数的补码和移码可表示2^n个数,而其原码和反码只能表示2^(n-1)个数(0的表示占用了两个编码)。
浮点数表示格式如下:
阶符 | 阶码 | 数符 | 尾数 |
浮点数所能表示的数值范围主要由阶符决定,所表示的数值精度由尾数决定。
浮点数规格化:将浮点数尾数部分的绝对值限定在区间【0.5,1】。
工业IEEE754浮点数格式中,阶码采用移码表示,尾数采用原码表示。
寻址方式
寻址速度按从高到低排列。
立即寻址:操作数包含在指令中。
寄存器寻址:操作数存放在某一寄存器中,指令中给出放操作数的寄存器名。
直接寻址:操作数存放在内存单元中,指令中直接给出操作数所在单元的地址。
寄存器间接寻址:操作数存放在内存单元中,操作数所在存储单元的地址放在某个寄存器中。
间接寻址:指令中给出操作数地址的地址。
相对寻址:指令地址码给出的是一个偏移量(可正可负),操作数地址等于本条指令的地址加上该偏移量。
变址寻址:操作数的地址等于变址寄存器的内容加偏移量。
RISC与CISC
指令种类 | 指令复杂度 | 指令长度 | 寻址方式 | 实现(译码)方式 | 通用寄存器数量 | 流水线技术 | |
RISC (精简指令集计算机) | 少、精简 | 低(简单) | 固定 | 少 | 硬布线控制逻辑(组合逻辑控制器) | 多、大量 | 支持 |
CISC (复杂指令集计算机) | 多、丰富 | 高(复杂) | 变化 | 复杂多样 | 微程序控制技术 | 一般 | 支持但不合适 |
流水线公式
流水线作用:提高设备的利用率。
1)流水线控制时间:第一条指令的执行时间 + (n - 1)*执行步骤中最长时间
2)加速比:不采用流水线所用时间 / 采用流水线所用时间
3)操作周期:执行步骤中最长时间段
4)吞吐率:最长时间段的倒数
5)执行n条指令的吞吐率:n / 采用流水线所用总时间
存储器的分类
(1)按照存储器所处位置分为内存(主存)和外存(辅存)。
(2)按构成存储器的材料可分为:磁存储器、半导体存储器和光存储器。
(3)按照存储器的工作方式可分为:
1)读写存储器:RAM(既能读取数据也能写入数据)。
2)只读存储器:ROM、PROM、EEROM、EPROM、Flash(闪存)。
注:Flash闪存介于EPROM与EEROM之间,以块为单位删除,信息不会丢失,可替代ROM,不 可替代主存。
(4)按访问方式分类可分为:按地址访问的存储器和按内容访问的存储区(相联存储器)。
(5)按寻址方式可分为:随机存储器、顺序存储区、直接存储器。
虚拟存储器:由主存+辅存构成。
空间局限性:程序一旦访问某存储单元,不久将来其附近的存储单元也最有可能被访问。
时间局限性:如果程序的某条指令被执行,则不久将来该指令可能被再次执行。
加密技术
(1)对称加密(共享密钥加密):加密和解密是同一把密钥,只有一把密钥,加密解密速度很快,适合大量明文数据加密,但是密钥分发有缺陷。
(2)非对称加密(公开密钥加密):两把密钥,分别为公钥和私钥,用公钥加密只能用私钥解密,用私钥加密只能用公钥解密。一般用接收方的公钥加密明文,防止窃听,密钥分发无缺陷,但是加密解密速度慢。
(3)混合加密:使用对称加密对大量的明文进行加密,再使用非对称加密对加密后的进行再一次加密。
常见的对称密钥算法:DES、3DES、RC-5、IDEA、AES、RC4等。
常见的非对称密钥算法:RSA、ECC、DSA等。
认证技术
摘要:将发送的明文进行Hash算法后得到摘要,放在密文后一起发送过去,与接收方解密的明文进行相同的Hash算法得到摘要进行对比,如果一致,则没有被篡改,否则被篡改。
数字签名:发送方用自己的私钥对摘要进行签名(加密)得到数字签名,放在密文后一起发送过去,接收方用发送方的公钥对数字签名进行验证(解密),如果验证成功,则该消息没有被假冒且不能否认,否则该消息为假冒发送。
数字证书:用户向CA机构(权威机构)申请数字证书,将个人信息和公钥发送给CA机构,CA机构颁给用户数字证书,数字证书用CA的私钥进行签名(加密),用CA的公钥验证(解密),得到用户的公钥(公钥验证)。