2021年软件设计师复习笔记重点总结
软考软件设计师知识点速记

软考软件设计师知识点速记一、计算机组成与体系结构。
1. 数据的表示。
- 进制转换:- 二进制转十进制:按权展开求和,例如(101.1)_2 = 1×2^2+0×2^1 +1×2^0+1×2^-1=4 + 0+1+0.5 = 5.5。
- 十进制转二进制:整数部分除2取余,小数部分乘2取整。
- 原码、反码、补码:- 原码:最高位为符号位,0表示正数,1表示负数,其余位表示数值的绝对值。
- 反码:正数的反码与原码相同,负数的反码是在原码的基础上,符号位不变,其余位取反。
- 补码:正数的补码与原码相同,负数的补码是其反码加1。
2. CPU的组成与功能。
- 运算器:主要进行算术运算和逻辑运算,包括算术逻辑单元(ALU)、累加器、状态寄存器、通用寄存器组等。
- 控制器:负责指令的读取、译码和执行,包括程序计数器(PC)、指令寄存器(IR)、指令译码器等。
- CPU的性能指标:主频、字长、缓存(Cache)大小、核心数等。
主频越高,CPU处理速度越快;字长越长,能处理的数据精度越高;缓存越大,CPU访问数据的速度越快;多核心可以并行处理多个任务。
3. 存储系统。
- 层次结构:寄存器 - Cache - 主存 - 辅存。
寄存器速度最快,容量最小;辅存速度最慢,容量最大。
- 主存:- 随机存取存储器(RAM):分为静态随机存取存储器(SRAM)和动态随机存取存储器(DRAM)。
SRAM速度快、成本高、集成度低,常用于Cache;DRAM速度慢、成本低、集成度高,是主存的主要组成部分。
- 只读存储器(ROM):数据在制造时写入,断电后数据不丢失,常用于存储BIOS等固定程序。
- 虚拟存储器:利用程序的局部性原理,将主存和辅存结合起来,为用户提供比实际主存容量大得多的虚拟存储空间。
4. 输入/输出系统。
- 接口:用于连接主机和外部设备,如并行接口、串行接口等。
- 中断:是指CPU在执行程序的过程中,遇到外部设备或内部异常事件时,暂停当前程序的执行,转而去处理该事件的一种机制。
软件设计师考试复习笔记下午部分

软件设计师考试复习笔记(一)下午部分一.数据流图设计1. 逻辑数据流图与物理数据流图的区别:逻辑数据流图说明应该具有那些加工而不关心这些加工是如何实现的;物理数据流图则要说明这些加工是如何实现的。
2.补充和完善数据流:根据数据流平衡原则,即父图和子图的输入和输出流一致每个加工至少有一个输入输出流3.找出多余的文件:如果一个文件仅仅作用于一个加工,即和该文件有关的输入和输出只涉及到一个加工,那么该文件可以作为局部文件出现在该加工的子图中,在父图中可以省略。
如果没有细化图(子图),则不能省略。
二.数据库设计1.SQL语句exists (sql 返回结果集为真)not exists (sql 不返回结果集为真)如下:表AID NAME1 A12 A23 A3表BID AID NAME1 1 B12 2 B23 2 B3表A和表B是1对多的关系 A.ID => B.AIDSELECT ID,NAME FROM A WHERE EXIST (SELECT * FROM B WHERE A.ID=B.AID) 执行结果为1 A12 A2原因可以按照如下分析SELECT ID,NAME FROM A WHERE EXISTS (SELECT * FROM B WHERE B.AID=1) --->SELECT * FROM B WHERE B.AID=1有值返回真所以有数据SELECT ID,NAME FROM A WHERE EXISTS (SELECT * FROM B WHERE B.AID=2) --->SELECT * FROM B WHERE B.AID=2有值返回真所以有数据SELECT ID,NAME FROM A WHERE EXISTS (SELECT * FROM B WHERE B.AID=3) --->SELECT * FROM B WHERE B.AID=3无值返回真所以没有数据NOT EXISTS 就是反过来SELECT ID,NAME FROM A WHERE NOT EXIST (SELECT * FROM B WHERE A.ID=B.AID)执行结果为3 A3===========================================================================EXISTS = IN,意思相同不过语法上有点点区别,好像使用IN效率要差点,应该是不会执行索引的原因SELECT ID,NAME FROM A WHERE ID IN (SELECT AID FROM B)NOT EXISTS = NOT IN ,意思相同不过语法上有点点区别SELECT ID,NAME FROM A WHERE ID NOT IN (SELECT AID FROM B)下面是普通的用法:SQL中IN,NOT IN,EXISTS,NOT EXISTS的用法和差别:IN:确定给定的值是否与子查询或列表中的值相匹配。
自己归纳的软件设计师的知识点

各种算法的知识:分治法:分解成几个小得子段,一个个的解决,在合并;动态规划法:也和分治法把问题分成若干个小问题,但是每次记录计算的结果,字段不需要重复计算。
(一般用于求最优解)贪心发:贪心算法和动态规划法类似,但是仅根据当前已有的信息做出选择,而作了选择就不会更改,是从局部考虑问题的。
回溯法:从根出发搜索问题的所有解或任一解。
分支限界法:与回溯法类似,但是只找出满足约束条件的一个解。
概率算法:近似算法:各种排序的知识:直接插入排序:在插入第i个元素时,i之前的元素已经排好,此时的R[i]和他之前的数进行比较,找到合适的位置。
时间复杂度是:O(n^2) 空间复杂度是:O(n^2);冒泡排序:首先是前两个数比较大小,选择较大的数和下面的数比,再选出较大的,第一轮选出了最大的数,第二轮除去第一轮最大的数,选出最大的,也就是大二大的。
以此类推。
时间复杂度为O(n^2)空间复杂度为O(1)选择排序:从第一个数开始,它和在他后面的数比较,如果后面的数小于它,就交换位置,否则不交换位置。
时间复杂度为O(n^2)空间复杂度为O(1)希尔排序:一般用的排序的基数是:5 ,3,1;5就是两个数之间的距离(2,21,5,4,8,7,9,7;其中2和7的距离就是5,其余以此类推),步骤是:1.选出距离是5的元素,把这几个元素排成有序的。
其余以此类推。
时间为O(n^1.3)空间O(1);快速排序:第一次把要排序的数列划分为两个部分,其中小的部分的所有元素都比较大部分最小的元素小;然后再划分较小部分为2个部分,在使用快速排序方法;时间复杂度:O(nlogn)空间复杂度:O(logn))堆排序:这里主要有大顶堆,和小顶堆,最常用的是树的构造。
大顶堆得构建是:先按层次构建二叉树,再从二叉树的下方开始,把大的元素换到根的位置。
时间复杂度为:O(nlogn)归并排序:讲几个有序的文件合并为一个有序的文件。
Html中的知识点:Alink 设置正在被鼠标击中的链接的颜色Vlink 设置使用链接的颜色Background 用于设置背景图片的urlBgcolor 设置文档整体背景颜色Mailto 是指定电子邮件的超链接瀑布模型:适合软件需求和明确的开发V模型:是瀑布模型的一种演化模式,将测试和分析与设计关联进行,加强分析与设计的验证。
软件设计师学习重点

一、计算机系统基础知识1.CPU 的功能的功能:程序控制、操作控制、时间控制、数据处理。
2.计算机系统组成示意图计算机系统组成示意图:3.数据表示数据表示:原码、反码、补码、移码。
(0为正,1为负)4.移码移码:如果机器字长为N ,偏移量为2N-1,则[X]移=2N-1+[X]补(X 为纯整数)。
[X]移=1+X (X 为纯小数)。
5.IEEE754:符号位(1位,0正1负)+阶码(8位,+127)+尾数(23位,小数点在最高位之后,随后省略最高位)。
6.浮点数加减浮点数加减:0操作数检查,对阶操作(小阶变大阶),尾数加减(阶码用双符号位,尾数用单符号位),结果规格化,舍入处理(判定溢出)。
7.常用校验码常用校验码:奇偶校验码(只能检错)、海明码(纠错加检错)、循环冗余校验码(CRC )。
8.计算机体系结构分类计算机体系结构分类:单处理系统,并行处理与多处理系统,分布式处理系统。
9.指令集的发展:CISC (复杂指令集计算机):增强原有指令的功能,用更为复杂的新指令取而代之;RISC (精简指令集计算机):减少指令总数简化指令功能,优化编译降低复杂度。
10.指令控制方式指令控制方式:顺序方式,重叠方式,流水方式。
11.RISC 中的流水线技术中的流水线技术:超流水线技术,超标量技术,超长指令字技术。
12.并发性的解决并发性的解决:阵列处理机,并行处理机,多处理机。
13.主存与cache 地址映射方式地址映射方式:全相联映射-将主存一个块的地址与内容一起存入cache 中,软件设计师学习重点拷贝灵活但是比较器电路难设计实现;直接映射-一个主存块只能拷贝到cache 的特定行上去,硬件简单成本低但是容易冲突效率下降;组相联映射-主存块放到哪个组是固定的,但是放到哪一行是灵活的,折中办法广泛采用。
14.虚拟存储器虚拟存储器:页式:页表硬件小,查表速度快但不利于存储保护;段式:界限分明便于程序的模块化设计,易于编译修改和保护,但主存利用率低,产生大量碎片,查表速度慢;段页式:折中办法,广泛采用,但地址变换速度比较慢。
2021软考中级软件设计师备考知识点汇总part11

第1题单选题若某人持有盗版软件,但他本人确实不知道该软件是盗版的,则()承担侵权责任。
A.应由该软件的持有者B.应由该软件的提供者C.应由该软件的提供者和持有者共同D.该软件的提供者和持有者都不【解析】正确答案:B。
“盗版软件”即侵权的软件复制品。
《计算机软件保护条例》使用了软件侵权复制品持有人主观上知道或者应当知道所持软件是否为侵权复制品为标准。
知道软件是侵权复制品而使用运行,持有人主观上应当属于故意,即明知故犯;有合理理由推论或者认定持有人应当知道其对所使用运行的软件为侵权复制品,如主观上存有疏忽大意等过失,而使用运行了侵权复制品,应当承担法律责任。
主观上不知或者没有合理理由应知的持有人,对该软件的使用运行等行为不承担民事赔偿责任。
但是当其一旦知道了所使用的软件为侵权复制品时,应当履行停止使用、销毁该软件的法律义务。
《计算机软件保护条例》第二十八条规定,软件复制品的出版者、制作者不能证明其出版、制作有合法授权的,或者软件复制品的发行者、出租者不能证明其发行、出租的复制品有合法来源的,应当承担法律责任。
第2题单选题设循环队列Q的定义中有rear和len两个域变量,其中rear表示队尾元素的指针,len表示队列的长度,如下图所示(队列长度为3,队头元素为e)。
设队列的存储空间容量为M,则队头元素的指针为()。
A.(Q.rear+Q.len-1)B.(Q.rear+Q.len-1+M)%MC.(Q.rear-Q.len+1)D.(Q.rear-Q.len+1+M)%M【解析】正确答案:D。
对于循环队列,求队头元素的指针的计算公式为:(rear-len+1+M)%M。
求队列中元素个数公式为:(rear-fear+M)%M。
其中fear表示队列的对头指针。
第3题单选题在程序执行过程中,高速缓存(Cache) 与主存间的地址映射由()A.操作系统进行管理B.存储管理软件进行管理C.程序员自行安排D.硬件自动完成【解析】正确答案:D。
软件设计师考试知识点总结

软件设计师考试知识点总结一、知识概述《软件设计师考试知识点》①基本定义:软件设计师考试涵盖的知识很多,从计算机基础知识、程序设计语言到软件设计的方法、算法分析等。
简单说就是考查是否具备软件设计各个方面的能力的考试内容的集合。
②重要程度:这在计算机相关学科和软件行业中非常重要。
它是衡量一个人能否胜任软件设计工作、进行软件项目开发的基础。
很多软件企业把这个考试成绩作为招聘和技术能力评估的参考。
③前置知识:需要提前掌握基础的计算机理论,像计算机组成原理(就是计算机硬件结构那一套,CPU、内存、硬盘怎么协同工作),数据结构(如数组、链表是怎么存储和操作数据的),操作系统(比如系统怎么管理进程、内存等)编程语言(比如C语言或者Java的基本语法、数据类型等)。
④应用价值:在实际应用中,通过这个考试意味着你有能力设计出高效、安全、可靠的软件。
就拿开发一款手机APP来说,懂得软件设计师的知识,你就能设计出合理的软件架构,让用户使用起来更流畅、不卡顿,而且安全隐私也能得到保障,还可以合理利用手机资源,不会让电池消耗太快等。
二、知识体系①知识图谱:软件设计师知识体系就像一颗大树,基础知识像树根,支撑整个体系。
程序设计语言、数据结构、算法等知识相当于树干,是主体部分。
软件设计方法、软件项目管理知识是树枝,延伸到各个应用方面。
最后的软件工程、面向对象分析设计这些就是树叶,是整体知识体系中的具体应用成果。
②关联知识:与很多计算机知识紧密相连,像网络知识(如果设计的软件要联网,就得懂网络协议等网络知识),数据库知识(软件可能要存储数据,那数据库的设计、操作就得懂得)。
③重难点分析:掌握的难点在于知识点繁多且复杂。
比如说算法和数据结构这部分,有各种各样的算法,像排序算法就有冒泡排序、快速排序一大堆,它们的原理、复杂度分析这些很让人头疼。
关键点在于清楚每个知识点之间的逻辑联系,不能孤立地看每个知识点。
④考点分析:在考试中很重要,考试会从各个知识点进行考查。
2021年软考系统架构设计师高级学习笔记汇总

软考系统架构设计师学习笔记第一章1.1.1系统架构师概念当代信息系统"架构”三要素:构件、模式、规划;规划是架构基石,也是这三个贡献中最重要。
架构本质上存在两个层次:槪念层,物理层。
1.2.1系统架构师泄义负责理解、管理并最后确认和评估非功能性系统需求,给出开发规范,搭建系统实现核心架构,对整个软件架构、核心构建、接口进行总体设计并澄淸核心技术细节。
重要着眼于系统"技术实现",同步还要考虑系统"组织协调"。
要对所属开发团队有足够理解,可以评估该开发团队实现特左功能需求目的和资源代价。
1.2.2系统架构师技术素质对软件工程原则规范有良好把握。
1.2.3系统架构师管理素质系统架构师是一种高效工作团队创立者,必要尽量使所有团队成员想法一致,为一种项目订制淸晰、强制性、有元件目的作为整个团队动力;必要提供特定办法和模型作为抱负技术解决方案;必要避免踌躇,必要具备及时解决技术问题急迫感和自信心。
1.2.4系统架构师与其她团队角色协调系统分析师,需求分析,技术实现系统架构师,系统设计,基于环境和资源系统技术实现项目管理师,资源组织,资源实现由于职位角度出发产生冲突制约,不也许较好地给岀开发规范,搭建系统实现核心架构,并澄淸技术细节,扫淸重要难点。
因此把架构师左位在项目管理师与系统分析师之间,为团队规划淸晰目的。
对于大型公司或项目,如果一人承担各种角色,往往容易发生顾此失彼现象。
1.3系统架构师知识构造需要从大量互相冲突系统办法和工具中区别出哪些是有效,那些是无效。
1.4从开发人员到架构师总结自己架构模式,进一步行业总结规律。
几天培训不太也许培养出合格软件架构师,厂商培训和认证,最后目是培养自己市场,培养一批忠诚顾客或产品代言人,而不是为中华人民共和国培养软件架构师。
软考系统架构设计师学习笔记第二章《计算机网络基本知识》计算机系统由硬件和软件构成,软件普通分为系统软件和应用软件。
软件设计师考试笔记考点(知识点)归纳总结

1、软件开发模型(1)原型法--适用于需求不明确的开发(2)瀑布模型--适用于需求已经明确的开发(3)螺旋模型--适用于风险较大的大中型项目(4)喷泉模型--主要用于描述面向对象的开发过程2、成本估算时,COCOMOⅡ方法以规模作为成本的主要因素,考虑多个成本驱动因子。
3、高内聚低耦合是软件设计的一个原则,其中内聚指模块内部各元素之间联系的紧密程度,也就是代码功能的几种程度。
耦合指模块之间互相联系的紧密程度。
4、通信内聚:如果一个模块的所有成分都操作同一个数据集或生成同一个数据集,则称为通信内聚;5、巧合内聚:也称偶然内聚,模块内各部分之间没有联系,或即使有联系,也很松散,是内聚程序最低的模块。
6、过程内聚:某模块内涉及多个功能,这些功能必须以特定的次序执行,则该模块的内聚类型为过程内聚7、数据耦合:指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言的值传递。
例如模块A将学生信息,即学生姓名、学号、手机号等放到一个结构体中,传递给模块B,则称模块A 和B之间的耦合类型为数据耦合8、CMM模型将软件过程的成熟度分为5各等级(1)初始级:软件过程的特点是无秩序的,有时甚至是混乱的。
项目成功往往依赖于个人。
(2)可重复级:已经建立了基本的项目管理过程,可用于对成本、进度和功能特性进行跟踪。
(3)定义级:用于管理和工程的的软件过程均已文档化、标准化,并形成整个软件组织的标准软件过程。
(4)管理级:软件过程和产品质量有详细的度量标准。
(5)优化级:通过对来自过程、新概念和新技术等方面的各种有用信息的定量分析,能够持续性地进行过程改进。
9、软件测试(1)白盒测试又称结构测试,主要用于单元测试阶段,测试者完全知道程序的结构和处理算法(2)黑盒测试又称为功能测试,主要用于集成测试盒确认测试阶段。
(3)α测试是用户在开发者的场所由开发者指导完成的测试(4)β测试是在一个或多个用户的现场由该软件的最终用户实施的,开发者通常不在现场。
软件设计师01.学习重点笔记

模2除法,按位进行异或操作。
海明校验码:2^r>=x + r + l;X为信息为的长度,⅛:1011, X为4;
当进行异或操作时,两个二进制的数相比之后,若前而的树为零,则再与第三个数相比 时,位为零的可以不再进行相比。
第二章程序语言基础
1.递归下降分析法和预测分析法是常用的自顶向下分析法。算符优先分析法和LR分析法属 于自底向上的语法分析方法。
7.磁道题目的延迟时间:
8.不发生死锁的公式:k*(n-l) + l: k为进程数,n为所需要的资源:
死锁发生的必要条件
(1)互斥条件:即一个资源每次只能被一个进程使用,在操作系统中这是真实存在的情 况。
(2)保持和等待条件:有一个进程已获得了一些资源,但因请求其他资源被阻塞时,对 已获得
的资源保持不放。
1•瀑布模型:结构化方法。适用于需求明确场合,二次开发。
2.原型:先做一个简易的系统给用户体验,再让用户明确他想要的功能,针对需求不明确的 情况。需求不淸晰且规模不太大时采用原型化方法最合适
3.演化模型:原型一步一步演化完善为演化模型
4.增量模型:先做一点,再接着做,特点是可以更早的让用户和核心功能接触
端到靖连接
实现发送端和接收靖的端到端的数据分组传送,负责保证实现数据包 无羞脉 按顺序.无丢失和无冗余的传爺。其服务访问点为端口。代 表性协议KTCP.UDP、SPX等
网络层
分组传報和路由选择
通过网络连接交换传输层实体发岀的数据,解决路由选择、网络拥塞. 异构网烙互联的问题。服务访问点为逻辑地址(网络地址)。代表性协 议有IP、IPX等
表示层
数据表示
使应用层可以根摇其服务解释数摇的涵义。通常包括数摇编码的约定、 本地句法的转换。例如JPEG、ASCIk GIFS DESH MPEG等
软件设计师知识点总结(重点)

软件设计师知识点总结一、软件工程软件工程基础知识软件生命周期:软件的生存期划分为制定计划、需求分析、设计、编程实现、测试、运行维护等几个阶段,称为软件生命周期。
软件开发模型常见的软件开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型。
瀑布模型(Waterfall Model):'缺点:瀑布模型缺乏灵活性,无法通过开发活动澄清本来不够明确的活动。
因此,当用户需求比较明确时才使用此模型。
演化模型(Evolutionary Model):也称为快速原型模型。
快速原型方法可以克服瀑布模型的缺点,减少由于软件需求不明确带来的开发风险,具有显著的效果。
螺旋模型(Spiral Model):将瀑布模型和演化模型相结合,综合了瀑布模型和演化模型的优点,并增加了风险分析。
包含4个方面活动:制定计划:风险分析:实施工程:客户评价:喷泉模型(Water Fountain Model):主要用于描述面向对象的开发过程。
喷泉一词体现了面向对象开发过程的迭代和无间隙特征。
即允许开发活动交叉、迭代地进行。
、迭代:模型中的开发活动常常需要重复多次,在迭代过程中不断完善软件系统。
无间隙:指在开发活动(如分析、设计、编码)之间不存在明显的边界。
V模型(V Model):该模型强调测试过程应如何与分析、设计等过程相关联。
增量模型(Incremental Model):好处是软件开发可以较好地适应变化,客户可以不断地看到所开发的软件,从而降低开发风险。
构件:是由多种相互作用的模块所形成的提供特定功能的代码片段构成.软件开发方法软件开发方法是一种使用早已定义好的技术集及符号表示习惯来组织软件生产的过程。
包括:结构化的方法、Jackson方法、面向对象开发方法结构化方法指导思想是自顶向下、逐层分解,基本原则是功能的分解与抽象。
、Jackson方法:是面向数据结构的开发方法,包括JSP(Jackson Structure programming)和JSD (Jackson System Development)面向对象开发方法:面向对象方法是以对象为最基本的元素,对象也是分析问题和解决问题的核心。
软件设计师 软考知识点

软件设计师软考知识点一、知识概述《数据结构之栈》①基本定义:栈就像是一个只有一个口的盒子,你往里面放东西(进栈)或者拿东西(出栈)都只能从这个口来操作。
就像我们叠盘子,只能从最上面放盘子或者拿盘子。
②重要程度:在软件设计师的知识体系里那是相当重要的,它是数据结构的基础部分。
很多算法和程序设计中,栈经常用来处理一些具有先后顺序关系的数据。
③前置知识:得先了解一些基本的数据类型和变量的概念,比如知道整数、字符这些基本的数据是什么,不然栈里装啥你都懵。
④应用价值:比如说在函数调用的时候,栈可以记录函数内部的一些临时变量的值,还有返回地址等信息,就像一个任务记录员一样。
再比如表达式求值的时候,栈也能派上大用场。
二、知识体系①知识图谱:在数据结构这个大板块里,栈是线性结构中的一种特殊形式,就像是线性结构家族里性格比较独特的一员。
②关联知识:和队列关系比较紧密,队列也是一种线性结构,不过它的进出规则和栈不一样,栈是后进先出,队列是先进先出,这就像是两个人,性格完全不同。
还和数组、链表等数据结构也有联系,像有时候数组可以用来简单地实现栈的功能呢。
③重难点分析:掌握难度在于它的进出规则和操作的逻辑性。
关键点是要理解后进先出的这种特殊性质,而且在实际编程中怎么运用它。
④考点分析:在软考里,经常会出栈的进出元素顺序、栈的基本操作(如入栈、出栈操作后栈的状态)这类题目。
考查方式以选择题或者简单的编程题为主,有时候会把栈和其他知识点结合起来考。
三、详细讲解(属于理论概念类)①概念辨析:栈就是一种只能在一端进行插入和删除操作的数据结构,这个操作的一端就叫做栈顶,另一头叫栈底。
好比一个竖起来的易拉罐,东西只能从罐口进和出,罐口就是栈顶,罐底就是栈底。
②特征分析:它最大的特点就是后进先出(LIFO)。
给你举个例子,你把书一本本往一个很窄的通道里放,拿的时候肯定是先拿最后放进去的书,这就是栈的特性。
③分类说明:有顺序栈和链栈。
2021年软件设计师知识点汇总

计算机系统构成运算器:算术/逻辑运算单元ALU、累加器ACC、寄存器组、多路转换器、数据总线构成。
控制器:计数器PC、时序产生器、微操作信号发生器,指令寄存器、指令译码器。
CPU功能:程序控制、操作控制、时间控制、数据解决(最主线)。
相联存储器是按内容访问,用于高速缓冲存储器、在虚拟存储器中用来作段表页表或快表存储器、在数据库和知识库中。
CACHE高速缓存地址映像办法:直接地址映像(主存分区,区别块)、全相联映像(主存分块)、组相联映像(主存分区,区别块、块成组,CACHE分块成组)。
替代算法:随机、先进先出、近期至少用、优化替代算法。
性能分析:H为CACHE命中率,tc 为Cache存取时间、tm为主存访问时间,Cache等效访问时间ta=H tc+(1-H) tm 提高了tm/ta倍。
虚拟存储器由主存、辅存、存储管理单元和操作系统软件构成。
RISC精简指令集:指令种类少、长度固定、寻址方式少、至少访内指令、CPU 内有大量寄存器、适合流水线操作。
内存与接口统一编址:都在一种公共地址空间里,独立使用各自地址空间。
长处是内存指令可用于接口,缺陷内存地址不持续,读程序要依照参数判断访内还是访接口。
便宜冗余磁盘阵列RAID:0级不具备容错能力但提高了传播率N倍、1级镜像容错技术、2级汉明码作错误检测、3级只用一种检测盘、4级是独立地对组内各磁盘进行读写阵列,用一种检测盘、5级无专门检测盘。
中断方式解决办法:多中断信号线法、中断软件查询法、菊花链法(硬件)、总线仲裁法、中断向量表法(保存各中断源中断服务程序入口地址)。
直接存储器存取DMA:内存与IO设备直接成块传送,无需CPU干涉。
依照占据总线办法不同分为CPU停止法、总线周期分时法、总线周期挪用法。
输入输出解决机用于大型机:数据传送方式有字节多路方式、选取传送方式、数组多路方式。
指令流水线:操作周期是最慢操作时间。
建立时间是达到最大吞吐率时间。
总线内总线:ISA、EISA、PCI;外总线:RS-232(3根线全双工15米)、SCSI (并行外总线、16位、最大320M秒、最多63个设备20米)、USB(4条线480M 秒接5层127个设备)、IEEE-1394(串行6条线3.2G秒热插)阵列解决机:单指多数据流SIMD,同步同步执行同一指令。
2021软考中级软件设计师备考知识点汇总part7

第1题单选题设S 是一个长度为n的非空字符串,其中的字符各不相同,则其互异的非平凡子串(非空且不同于S本身)个数为()。
A.2n-1B.n²C.n(n+1)/2D.(n+2) (n-1)/2【解析】正确答案:D。
比如S字串为“abcdefg”,长度为7.则S中的包含的互不相同的字串有如下一些:1.长度为6的个数为2:“abcdef”和“bcdefg”2.长度为5的个数为3:“abcde”,“bcdef”,“cdefg”.6.长度为1的个数为7:“a”,“b”,“c”,“d”,“e”,“f”,“g”个数总和就是2+3+4+5+6+7 =(2+7)×(7-2+1)/2同理,字符串长度为n,一个字符的字符串个数为n,除原字符串外最长的字符串为n-1个字符,个数有2个,按照推理,共有:2+3+……+n=(2+n)(n-1)/2个。
其中:等差数列{an}的通项公式为:an=a1+(n-1)d。
前n项和公式为:Sn=n×a1+n(n-1)d/2或Sn=n(a1+an)/2。
第2题单选题拓扑排序是指有向图中的所有顶点排成一个线性序列的过程,若在有向图中从顶点vi 到vj有一条路径,则在该线性序列中,顶点vi必然在顶点vj之前。
因此,若不能得到全部顶点的拓扑排序序列,则说明该有向图一定()。
A.包含回路B.是强连通图C.是完全图D.是有向树【解析】正确答案:A。
本题考查图数据结构。
对有向图进行拓扑排序的方法如下:(1)在AOV网中选择一个入度为0(没有前驱)的顶点且输出它。
(2)从网中删除该顶点及其与该顶点有关的所有边。
(3)重复上述两步,直至网中不存在入度为0的顶点为止。
执行的结果会有两种情况:一种是所有顶点己输出,此时整个拓扑排序完成,说明网中不存在回路;另一种是尚有未输出的顶点,剩余的顶点均有前驱顶点,表明网中存在回路,拓扑排序无法进行下去。
第3题单选题以下关于软件维护和可维护性的叙述中,不正确的是()。