1、数据的表示
1.1 进制转换
整型有4种进制形式:
1.十进制(D): 都是以0-9这九个数字组成,不能以0开头。
2.二进制(B): 由0和1两个数字组成。
3.八进制(O): 由0-7数字组成,为了区分与其他进制的数字区别,开头都是以0开始。
4.十六进制(H):由0-9和A-F组成。为了区分于其他数字的区别,开头都是以0x开始。
整数部分转化
1.1.1、十进制转二进制
(1)十进制转二进制的转换原理:除以2,反向取余数,直到商为0终止。
(2)具体做法:
将某个十进制数除2得到的整数部分保留,作为第二次除2时的被除数,得到的余数依次记下,重复上述步骤,直到整数部分为0就结束,将所有得到的余数最终逆序输出,则为该十进制对应的二进制数。
例如:9(十进制)→1001(二进制)
1.1.2、十进制转八进制
(1)转换原理:除以8,反向取余数,直到商为0终止。
(2)具体步骤与二进制一样,除数换为8
例子:则为:796–>1434
1.1.3、十进制转十六进制
(1)转换原理:除以16,反向取余数,直到商为0终止.
(2)具体步骤也和二进制、八进制一样,除数换为16
例如:796–>31c
小数部分转换
1.1.4 、十进制转二进制
(1)原理:十进制小数转换成二进制小数采用 “乘2取整,顺序输出” 法。
例题: 0.68D = ______ B(精确到小数点后5位)
如下所示,0.68乘以2,取整,然后再将小数乘以2,取整,直到达到题目要求精度。得到结果:0.10101B.
例如:十进制小数0.68转换为二进制数
具体步骤:
0.68* 2=1.36 -->1
0.36* 2=0.72 -->0
0.72* 2=1.44 -->1
0.44* 2=0.88–>0
0.88* 2=1.76 -->1
已经达到了题目要求的精度,最后将取出的整数部分顺序输出即可
则为:0.68D–>0.10101B
1.1.5 、十进制转八进制
(1)原理:十进制小数转换成八进制小数采用 “乘8取整,顺序输出” 法。
(2)思路和十进制转二进制一样
例题: 10.68D = ______ Q(精确到小数点后3位)
解析:如下图所示,整数部分除以8取余数,直到无法整除。小数部分0.68乘以8,取整,然后再将小数乘以8,取整,直到达到题目要求精度。得到结果:12.534Q.
例如:十进制数10.68转换成八进制数,分为整数部分和小数部分求解
步骤:
(1)整数部分
10/8=1 -->2
1/8=0 -->1
倒序输出为12
(2)小数部分
0.68* 8=5.44 -->5
0.44* 8=3.52 -->3
0.52* 8=4.16 -->4
已经达到了题目要求的精度,即可结束
则小数部分为:0.68–>0.534
因此10.68D -->12.534Q
1.1.6、十进制转十六进制
(1)原理:十进制小数转换成十六进制小数采用 “乘16取整,顺序输出” 法。
例题: 25.68D = ______ H(精确到小数点后3位)
解析:如下图所示,整数部分除以16取余数,直到无法整除。小数部分0.68乘以16,取整,然后再将小数乘以16,取整,直到达到题目要求精度。得到结果:19.ae1H.
(1)整数部分
25/16=1 -->9
1/16=0 -->1
倒序输出为:19
(2)小数部分
0.68* 16=10.88 -->a(即十进制中的10)
0.88* 16=14.08 -->e
0.08* 16=1.28 -->1
已经达到了要求的精度,顺序输出为:ae1
则:25.68D -->19.ae1H
总结:小数部分转换原理都是乘进制数取整数部分,再将整数部分顺序输出。
其他进制向十进制转换
1.1.7 、二进制、八进制、十六进制数转换为十进制数
方法:“位权展开求和”即按位权展开,然后按照十进制规则进行求和运算,其结果就是转换后对应的十进制数。如:
二进制转换为十进制:
(1001.01)2=1 * 2 3+0 * 22+0 * 21+1 * 20+0 * 2-1+1 * 2-2=9.25
八进制转换为十进制:
(543.21)8=5 * 82+4 * 81+3 * 80+2 * 8-1+1 * 8-2=355.3125
十六进制转换为十进制:
(2CF.5)16=2 * 162+ 12 * 161+15 * 160+5 * 16-1=719.3125
1.2 码制(原码,反码,补码,移码)
原码:最高位符号位,其余低位表示数值的绝对值
反码:正数的反码与原码相同,负数的反码是其绝对值按位取反(符号位不变)
补码:正数的补码与原码相同,负数的补码是其反码位+1(符号位不变),使用补码可以简化计算机运算部件的设计
移码:补码的符号位按位取反
1.3 浮点数的表示
格式:N=尾数*基数**(指数)
数符是尾数的符号位,阶符是指数的符号位
比较大小:先比较指数,再比较尾数
运算过程:对阶-> 尾数计算-> 结果格式化
特点:
1.一般尾数用补码,阶码用移码
2.阶码的位数决定数的表示范围,位数越多表示的数越大
3.尾数的尾数决定数的有效精度,位数越多精度越高
4.对阶时,小数向大数看齐
5.对阶是通过小数的尾数右移实现的(算术右移)
1.4 逻辑运算
关系运算符:< 、<= 、>、 >=、 ==、 !=
关系运算符优先级低于算数运算符,高于赋值运算符
逻辑运算:或(||、+、∪、V、OR)、与(&&、*、点、^,∩、AND)、异或(XOR)、非
优先级:!> 算术运算符 >关系运算符 > && > || >赋值运算符
短路原则:A&&B运算中,只有A真才会判断B;A||B,只有A假才会判断B
2、校验码
码距:任何一种编码都由许多码字构成,码距是指一个编码系统中任意两个合法编码之间有多少个二进制位不同
2.1 奇偶校验码
奇偶校验码只能检一位错,并且不能纠错,这种方法通过在编码中增加一位检验位来使编码中1的个数为奇数(奇校验)或者为偶数(偶校验),从而使码距变成2
2.2 CRC循环冗余校验码
循环冗余校验码CRC只能检错,不能纠错 ,使用了模2运算来构造校验位
多项式最高次方为4,所以补上4个0,然后开始除以多项式,进行异或运算,将最后的结果补全位数(位数跟多项式的最高位一样,通过补0进行补全),然后跟在在原始报文后面
检验: 将收到的信息进行模2除法,如果正确,余数为0,如果某一位出错,则余数不为0,不同的位数出错,其余数不一样,余数和出错序号之间有唯一对应关系。
2.3 海明校验码
海明码是一种利用奇偶性来检错和纠错的校验方法。海明码的构成方法是在数据位之间的特定位置上插入k个检验位,通过扩大码距来实现检错和纠错。
设数据位是n位,检验位是k位,则n和k必须满足以下关系:
【海明码】(容易看懂) - LesRoad - 博客园 (cnblogs.com)
2.4 校验码比较
3、 CPU组成(运算器和控制器)
计算机结构:
外设:输入设备、辅助存储器、输出设备
主机:CPU(运算器、控制器)、主存储器
运算器:
1.算术运算单元ALU:数据的算术运算和逻辑运算
2.累加寄存器AC:通用寄存器,为ALU提供一个工作区,用在暂存数据
3.数据缓冲寄存器DR:写内存时,暂存指令或数据
4.状态条件寄存器(存在争议,也可以划分到控制器当中)PSW:存状态标志与控制标志,程序员可以以次利用状态标志进行判断和跳转
控制器(产生每条指令的操作信号并送往对应部件):
1.程序计数器PC:存储下一条要执行的指令的地址(从PC取得指令地址后从内存或者告诉缓存读取指令后暂存在IR),程序员可访问
2.指令寄存器IR:存储即将执行的指令(为分析一条指令,操作码和地址码都应该存入指令寄存器IR中),对用户是完全透明的,程序员不能访问
3.指令译码器ID:对指令中的操作码字段进行分析解释(主要是指令译码)
4.时序部件:提供时序控制信号
冗余技术通常分为4类:
1.结构冗余:按照工作方法可以分为静态、动态、混合冗余
2.信息冗余,指的是为了检测或纠正信息在运算或传输中的错误另外假的一部分信息
3.时间冗余,指重复执行指令或程序来消除瞬时错误带来的影响
4.冗余附件技术,为了实现上述冗余技术所需的资源和技术
4、寻址方式
指令系统使用不同的寻址方式:扩大寻址空间并提高编程灵活性
一条指令就是机器语言的一个语句,它是一组有意义的二进制代码
指令的基本格式:操作码字段+地址码字段
5、CISC和RISC
CICS和RISC是两个计算机指令不同的发展方向 ,RISC通常比CISC配置更多的寄存器,子程序库通常比CISC大得多,更适合VLSI工艺的规整性要求
VLIW是超长指令字的简称 ,它把许多条指令连在一起,增加了运算的速度
Flynn分类法基于信息流将计算机分成4类:
1.单指令流单数据流机器(SISD)
一种传统的串行计算机,早期的计算机都是SISD机器
2. 单指令流多数据流机器(SIMD):
一个指令处理多个数据流,这类机器在数字信号处理、图像处理以及多媒体信息等领域非常有效,现在人们使用的单核计算机基本都属于SIMD机器
3.多指令单数据流机器(MISD)
多指令处理单个数据流,实际情况中,该机器只是作为理论模型出现
4.多指令多数据流机器(MIMD)
多指令处理多个数据流,intel和AMD的双核处理器就属于MIMD范畴
6、流水线技术
流水线方式下可以同时执行多条指令,提高了各部件的利用率,提高了系统的吞吐率
时间:
理论公式:(t1 + t2 ....) +( n-1)*t
实际公式:k*t+(n-1) * t
流水线的吞吐率:单位时间内流水线所完成的任务数量或输出的结果数量。如果各段流水的操作时间不同,则流水线的吞吐率是最长流水段操作时间的倒数
吞吐率: TP=指令条数/流水线执行时间
最大吞吐率取决于流水线中最慢一段所需的时间,要使加速比和效率最大化,应该对流水线各级采用相同的运行时间
流水线的操作周期应为指令最长阶段所花的时间
7、存储系统
7.1 层次化存储
局部性原理(时间局部性、空间局部性)是层次化结构的支撑
虚拟存储体系:内存+外存
三级存储体系:内存+外存+cache
分类:
1.存储器位置:内存、外存
2.存取方式
2.1 按内容:相联存储器(如cache)
2.2 按地址:随机存储器(如内存)、顺序存取存储器(如磁带)、直接存取存储器(如磁盘)
3.按工作方式:随机存取存储器RAM(如内存DRAM)、只读存储器(如BIOS)
DRAM:动态随机存储器,用来做主存
SRAM:静态随机存储器,速度快,价格高,用来作为cache
Cache:高速缓存,不会增加主存容量
EEPROM:电可擦可编程只读存储器
7.2 Cache
cache位于主存与CPU之间,高速缓存cache与主存之间的地址映射是由硬件自动完成的
在计算机的存储系统体系中,Cache是访问速度最快的层次(若有寄存器,则寄存器最快)
使用Cache改善系统性能的依据是程序的局部性原理
命中率随cache容量增大而增大
直接相联映像:硬件电路较为简单,但冲突率很高(如每个区的一号页放在cache的一号页区域)
全相联映像:电路难于设计和实现,只适用于小容量的cache,但冲突率较低(只要cache空闲,就往空闲位置放)
组相联映像:直接相连与全相联的折中
注:主存与cache之间的地址映射由硬件直接完成
地址映射是将主存与Cache的存储空间划分为若干个大小相同的页(或称之为块)
7.3 贮存编址技术
存储单元个数=最大地址-最小地址+1
总容量=存储单元个数*编址内容
编址内容:
按字编址:存储体的存储单元是字存储单元,即最小寻址单元是一个字
按字节编址:存储体的存储单元是字节存储单元,即最小寻址单元是一个字节
根据存储器所要求的容量和选定的存储芯片的容量,就可以计算出所需的芯片总数,即总片数=总容量/每片的容量
8、输入输出技术
1.程序控制(查询)方式:分为无条件传送和程序查询方式两种。方法简单,硬件开销小,但I/O能力不高,严重影响CPU的利用
2.程序中断方式:与程序控制相比,中断方式因为CPU无需等待而提高了传输请求的速度
3.DMA方式(直接存取方式):DMA方法是为了在主存与外设之间实现高速、批量数据交换而设置的。DMA方式比程序控制与中断方式都高效 (不需要CPU执行程序来传送数据)
(DMAC向总线裁决逻辑提出总线请求;CPU执行完当前总线周期即可释放总线控制权,此时DMA响应(即在一个总线周期结束后响应DMA请求),通过DMAC通知I/O接口开始DMA传输)
4.通道方式:
5.I/O处理机(效率最高):
BIOS(基本输入输出系统)是一组固化在计算机主板上的一个ROM芯片上的程序,它保存计算机最基本的输入输出程序,它可以从CMOS中读写系统设置的具体信息
I/O设备管理软件一般分为4层:中断处理程序、设备驱动程序、与设备无关的系统软件和用户级软件。通常最先获得键盘或鼠标输入信息的是中断处理程序
中断响应时间是从发出中断请求到开始进入中断服务程序所需的时间 ;中断向量是中断服务程序的入口地址,为了提高响应速度,通常把所有中断服务的入口地址(或称中断向量)汇集成中断向量表;使用堆栈来保护断点和现场是便以实现多级中断嵌套的 最有效的方法
按照是否可以屏蔽,将中断分为两大类:不可屏蔽中断(又称之为非可屏蔽中断)和可屏蔽中断。不可屏蔽中断一旦提出请求,CPU必须无条件响应,而对可屏蔽中断,CPU可以响应,也可以不响应。典型的非可屏蔽中断是电源掉电,一旦出现,无条件响应,否则其他工作是无意义的。典型的可屏蔽中断是打印机中断,CPU对打印机的请求可以快一点,也可以慢一点。对于软中断,它不受中断允许标志位的影响,所以是非屏蔽中断范畴
9、总线
一条总线同一个时刻仅允许一个设备发送,但运行多个设备接收
系统总线包含:控制总线CB、数据总线DB(字长)、地址总线AB(内存容量)。
ISA总线也成为AT总线,是对XT总线的拓展,以适用8/16位数据总线要求;EISA总线在原来ISA的98条总线上又增加98条信号线,也就是两条ISA信号线之间添加一条EISA信号线;PCI总线是一种局部总线,定义了32位数据总线,且可拓展为64位
单总线结构中,CPU与主存之间,CPU与I/O设备之间,I/O设备与主存之间,各种设备之间都通过系统总线交换信息。单总线结构的优点是控制简单方便,扩充方便,但同一时刻只能在两个设备之间传送数据,所以单总线结构的主要缺点是系统总体数据传输的效率和速度受到限制(性能不高)。
并行总线适合近距离高数据传输;串行总线适合长距离数据传输;专用总线在设计上可以与连接设备实现最佳匹配;适用总线结构和总线复用可以减少总线中信号线的数量,以较少的信号线传递更多的信息
总线宽度是指总线的线数,即数据信号的并行传输能力,也体现总线占用的物理空间和成本;时钟频率(俗称主频)可以理解为一秒(1 s)内,震荡周期的个数称为时钟频率;总线带宽是指总线的最大数据传输率,即每秒传输的数据总量,总线的宽度和时钟频率共同决定了总线带宽
10、可靠性
可靠性指标:
软件产品的可靠性取决于潜在错误的数量、潜在错误的位置、软件产品的使用方式,并不取决于软件产品的开发方式。
11、性能指标
12、信息安全和病毒防护
应用级网关可以工作在OSI七层模型中的任一层,能够检查进出的数据包,通过网关复制传递数据,防止在受信任服务器和客户机与不受信任的主机间直接建立联系。是内部网络和外部网络的隔离点。
与安全电子服务无关有关的协议:SSL和HTTPS涉及到邮件传输过程中的安全,PGP(优良保密协议)是一套用于信息贾母验证的应用程序,S/MIME是安全多用途互联网邮件扩展协议(注意MIME是扩展电子邮件标准,与安全电子邮件无关)
SSH协议是在中断设备和远程站点间建立安全连接的协议,是建立在应用层和传输层之上的,利用该协议可以有效防止远程管理过程中的信息泄露问题,最初是UNIX上的程序,后又迅速扩展到其他平台上。
使用数字证书(具有发送方公钥)进行用户身份认证,使用数字签名(如RSA)确保信息不可否认(发送方身份不可抵赖,但不可验证接收者的合法性)。S将发送的信息使用S私钥加密进行数字签名,接收方使用S公钥验证真实性。用户可在一定的认证机构(CA)处取得能证明身份的数字证书,与该用户在该机构取得的数字证书可通过相互的公钥认证彼此的身份,当双方的证书来自于不同的机构的时候,需先确定彼此机构的可信度,即两个CA之间先交换公钥进行确认CA的合法性(利用CA签名验证真伪性),然后再进行用户身份的验证,为了保证数据证书不被篡改,还需要使用CA的私钥对数字证书进行加密
私钥用于签名和解密,公钥用于加密和认证
非对称加密又称为公开密钥加密,而共享密钥加密指对称加密。常见的对称加密算法有DES、三重DES、RC-5、IDEA、AES;非对称加密算法有:ECC、DSA、RSA等;摘要算法有MD5(输出是由4个32位分组组成,然后将这几个分组级联后将生成一个128位散列值)主要是为了防止发送的报文被篡改;RC5用于对大量明文信息进行加密
引导区病毒破坏的是引导盘、文件目录等;宏病毒破坏的是OFFICE文件相关;木马的作用一般强调远程控制(如X卧底、冰河,客户端在攻击者的机器上,服务端在受攻击者的机器上);蠕虫病毒是一个程序或程序序列利用网络进行复制和传播,如震网、熊猫烧香、红色代码、爱虫病毒、爱丽兹病毒、Nimda、欢乐时光等;CIH是系统病毒
病毒名称一般分为三部分:worm表示蠕虫病毒、Trojan表示特洛伊病毒、Backdoor表示后门病毒、Macro表示宏病毒
防火墙最基本的功能就是控制计算机网络中,不同信任程度区间传送的数据流。防火墙对流经它的网络通讯进行扫描,这样能过滤掉一些攻击(包过滤的依据是源IP地址,源端口号、目标IP地址、目标端口号,以免其在目标计算机上被执行。防火墙还可以关闭不使用的端口,隐蔽内部细节。所有的访问都经过防火墙,所有防火墙能记录下这些访问并做出日志记录,同时也提供网络使用情况的统计数据。(防火墙具有记录访问过程、包过滤、服务器代理的功能,但是不能杀毒)。防火墙的工作层次越高,安全性越高,效率越低,若防火墙具有内部信息隐藏的特点,则安全性高效率低,若防火墙使用过滤机制(对应用和用户是透明的),则效率高安全性低
DMZ是为了解决安装防火墙之后外部网络不能访问内部网络服务器的问题而设立的一个非安全系统与安全系统之间的缓冲区,DMZ不访问内网或外网,这个缓冲区位于企业内部网络和外部网络之间的小区域,这个小区域网络可以放置一些必须公开的服务器设施,比如企业web服务器、FTP服务器和论坛等
网络攻击分为主动攻击和被动攻击两种。主动攻击包含攻击者访问它所需信息的故意行为,攻击者是主动做一些不利于你和你的公司的事情。比如通过远程登录到特定机器的邮件端口以找出企业的邮件服务器的信息、如伪造无效IP地址去连接服务器使得接收到错误IP地址的系统浪费时间去连接那个非法地址。主动攻击包括拒绝服务攻击(DOS,目的是让目标机器停止服务)、分布式拒绝服务(DDOS)、信息篡改、资源使用、欺骗、伪装、重放等攻击方法。被动攻击主要是收集信息而不是访问,数据的合法用户一般对这种活动无察觉,包括嗅探、信息采集、流量分析、系统干涉等,
入侵检测技术包括:专家系统、模型检测、简单匹配。设备防雷击属于物理线路安全措施、入侵检测和流量控制是网络安全设施、漏洞发现和补丁管理是系统安全设施、数据库安全是应用安全;
漏洞扫描技术是检测远程或本地系统安全脆弱性的一种安全技术,通过与目标主机TCP/IP端口建立连接并请求某些服务,记录目标主机的应答,搜集目标主机相关信息(如匿名用户是否可以登录等),从而发现主机某些内在的安全弱点,故而利用漏洞扫描技术可以获取FTP服务器中是否存在可写目录的信息 。漏洞扫描系统是一种自动检测目标主机安全弱点的程序,依据是系统漏洞库,黑客可以利用漏洞扫描系统发现目标主机的安全问题并发起攻击,管理员利用扫描出来的漏洞进行修补以提高可靠性。(用于检测入侵者的系统叫做 入侵检测系统)
在window系统中,用户默认权限由高到低的顺序是administrators--power users--users--everyone。windows IIS 服务支持的身份认证方式有.NET passport身份验证(对IIS请求必须查询字符串或cookie包含有效.NET passport凭据,提供了单一登录安全性)、集成windows身份验证、摘要式身份验证(用户凭据作为MD5或消息摘要在网络中进行传输,这样就无法根据原始用户名和密码进行阶码)、基本身份验证(用户凭据以明文形式传递,安全级别最低)