theme: awesome-green
这是我参与8月更文挑战的第5天,活动详情查看:8月更文挑战”
前言
该系列文章全篇文字在10w+,全文都是自己备考中的干货,软考涉及很多计算机基础,数据结构,算法分析,编程思想,开发流程等等,不仅适合参加软考的人学习,也适合扩宽自己知识视野的人去学习,每一篇都将会把重点加粗处理,特别是易错点,考试常考平时也容易记错,请一定仔细看! 如果喜欢此系列,记得关注该专栏,能留个小小的点赞就更好了!
一、计算机系统基础知识
章节梳理
原码,反码,补码之间的相互转换
校验码具有查错和纠错,码距是校验码中的一个重要概念,是指一个编码系统任意两个合法编码之间至少有多少个二进制位不同
奇偶校验:通过在编码中增加以为校验码来让编码中1的个数为奇数或者偶数,从而使码距变为2
海明码*:设数据位是n位,校验位是k位,则n和必须满足2^k -1大于或等于n+k的关系
循环冗余校验码(CRC):利用生成多项式位k数据位产生r个校验位来进行编码,其编码长度为k+r。(采用异或运算)
计算机系统基本硬件由:运算器,控制器,存储器,输入设备,输出设备五大部件组成。运算器和控制器等部件集成在一起,统称为中央处理单元(CPU)
CPU:运算器(ALU)主要有两个主要功能:执行所有的算术运算,如+-**以及附加运算,执行所有的逻辑运算并运行逻辑测试。
运算器又称算术逻辑单元(ALU),累加寄存器(AC):通常称为累加器,它是一个通用寄存器。数据缓冲寄存器(DR)用dr暂时存放由内存存储器读写一条指令或者一个数据字,并将不同时段内读写的数据隔开。*状态条件寄存器(PSW):PSW保存由算术指令和逻辑指令运行或测试结果建立的各种条件码和内容。主要分为状态标志和控制标志
控制器:指令寄存器(IR),程序计数器(PC),地址寄存器(AR),指令译码器(ID)
存储系统的层次结构:三层存储结构是:高速缓存(Cache)、主存器(MM)和辅助存储器(外存储器)。
按照位置分类:内存(主存):用来存储当前运行所需要的程序和数据,速度快,容量小。外存(辅存):用来存储当前不参与运行的数据,容量大但是速度慢。
按照工作方式分类:读写存储器:既能读取数据也能存入数据的存储器。只读存储器
按照寻址方式分类:可分为随机存储器(DRAM/RAM),顺序存储器(SAM)和直接存储器(DAM)。(RAM random access memory)这种存储器可对任何存储单元存入或者读取数据,访问任何一个存储单元所需时间都是相同的。(SAM sequentially access memory)访问数据所需时间与数据的存储位置有关,磁带是典型的顺序存储器。(DAM direct access memory)介于随机存取和顺序存取之间的一寻址方式。
- 相联存储器:一种按内容访问的存储器,其工作原理是把数据和数据的某一部分的关键字,将该关键字与存储器中的每一单元进行比较,找出存储器中所有与关键字相同的数据。
高速缓存是位于CPU和主存之间的高速存储子系统,采用高速缓存的主要目的是提高存储器的平均访问速度,使存储器的速度和CPU的速度相匹配。
Cache的存在对于程序员是透明的,其地址变换和数据块的替换算法均有硬件实现。通常被集成到CPU内,特点是容量小,速度快,成本高。由两部分组成:控制和存储部分。存储部分用来存放主存的部分复制信息。控制部分的功能是判断CPU要访问的信息是否存在Cache存储器中,存在既命中,否则反之。
- 地址映像的方法有三种:直接映象(优点:地址变换简单,缺点:灵活性差),全相联映象(优点:位置不受限制,十分灵活,缺点:变换复杂,速度慢),组相联映象(前两者的折中)。
替换算法:随机替换(RAND)、先进先出(FIFO)、近期最少使用(LRU)、优化替换算(OPT)
Cache的性能分析:等效时间=命中率存储时间(周期)+(1-命中率)主存访问时间
- 虚拟储存器是由主存,辅存,存储管理单元及操作系统中的存储管理软件组成的存储系统
CPU与外设之间的数据传送方式: - 1,直接程序控制方式{无条件传送方式,程序查询方式(缺点:降低了CPU效率,对外部的突发事件无法做出实时响应。优点:思想理解容易,工作方式容易)}。 - 2,中断方式(CPU无需等待,不必查询IO状态,既可以抽身出来处理其他任务,因此提高了系统效率){中断优先级控制,中断处理方法}! - 3,*直接存储器存取方式(DMA)是在存储器与IO设备间直接传送数据,既在内存与IO设备之间传送一个数据块的过程中,不需要CPU的任何干涉,是一种完全由DMA硬件完成IO操作的方式。 - 4,输出和输入处理机{字节多路方式,选择传送方式,数组多路方式}
系统总线:ISA总线,EISA总线,PCI总线(数据,地址,控制总线)
在单机系统中,三总线结构的计算机的总线系统由系统总线,内存总线,IO总线组成。其中系统总线用于CPU和内存之间传送地址,数据和控制信息。
指令系统:1寻址方式(立即寻址,寄存器寻址,直接寻址,寄存器间接寻址,寄存器相对寻址,基址加变址寻址方式,相对基址加变址寻址)
CISC、RISC:CISC(complex instruction set computer复杂指令集计算机,数量多,使用频率差别大,研制周期长)、RISC(reduced instruction set computer 精简指令集计算机 寻址方式少,提高执行速度,优化编译程序)
指令控制方式:顺序方式,重叠方式,流水方式
流水方式:取指➡分析➡执行(三个步骤都不同位置执行)
计算机可靠性模型:串联系统:可靠性为R=R1R2....Rn 失效率为1-可靠性、并联系统:可靠性为R=(1-R1)(1-R2)......(1-Rn){提高计算机可靠性:一是提高元器件的质量,改进加工工艺与工艺结构,二是发展容错技术}
计算机系统的性能评价:性能评测常用方法:时钟频率,指令执行速度,等效指令速度法,数据处理速率法(PDR),核心程序法
基准测试程序:目前一致承认的系欸是性能比较好的方法(常见的四种:整数测试程序,浮点测试程序,SPEC基准测试程序,TPC基准测试程序)
易错题和知识点整合
掌握16进制,2进制,8进制,10进制的转化
2^10=1024 2^18=256k 2^15=32k
DRAM(dynamic random access memory)动态随机存取存储器,为最常见的系统内存。SRAM(静态存取功能内存,不需要刷新电路既能保存它内部存储的数据,用来作为高速缓存存取器,即Cache)
取指周期取出的是指令,执行周期取出的数据。
VLIW是(very long instruction word)超长指令字的简称,是一种非常长的指令组合,它把许多条指令连在一起,增加运算的速度。
移位运算符:在二进制的基础上对数字进行平移。按照平移的方向和填充数的规则分为三种:<<(左移)、 >>(带符号的右移)、 >>>(无符号右移)。在数字没有溢出的前提下,对于正数和负数,左移一位都相当于2,左移n位就相当于2的n次方,右移反之。
总线周期通常指的是CPU完成一次访问存储器或IO端口操作所需要的时间。
浮点数:N=2^e*F e为阶码,决定浮点数能表示的数值范围;f为尾数,决定浮点数所能表示的数值精度。
浮点数:当机器字长为n时,定点数的补码和移码可表示2^n个数,而其原码和反码只能表示2^n -1个数(0的表示占用了两个编码)
按照顺序方式执行指令的话执行完n条的时间为:(取指时间+分析时间+执行时间)*n
某机器字长为n,最高位是符号位,其定点数的最大值为2^n-1 -1
DMA控制方式是主存与外设之间直接建立数据通路进行数据的交换处理