软件资格证考试——初级程序员
软件资格证考试——初级程序员
文章目录
- 软件资格证考试——初级程序员
- 开发中使用的各种模型
- 白盒测试与黑盒测试
- 白盒测试中各种覆盖
- 软件测试
- 结构化分析方法
- 模块化
- 结构图
- 进度管理
- 项目开发等级
- 函数调用
- 代码运行的内存区域
- excle函数
- 多态函数
- ip地址
- 木马病毒
- 包过滤防火墙
- RAM
- CPU指令集
- 树的节点关系
- 主存辅存
- 多媒体
- 媒体分类
- 算法描述工具
- 图片分类
- 虚拟存储器
- 大根堆的判定
- cpu组成
- 有向图与无线图的关系
- 防火墙
- 进程并发
- 面向对象分析与面向对象设计
- 加密算法
- I/O设备
- UML
- 图像数据量
- 函数调用
- 硬盘的平均时间
- 磁盘调度算法
- 敏捷开发
- 排序算法
- 奇偶校验码
- 存储器
- 并发
- 真彩色与伪彩色
- 数据库设计
开发中使用的各种模型
- RUP是统一过程的商业版本,是用例和风险驱动、以架构为中心、迭代的增量开发过程。
- XP是一种轻量级(敏捷)、高效、低风险、柔性、可预测的、科学的软件开发方式,不断迭代。
- XP (极限编程)是一种轻量级(敏捷)、高效、低风险、柔性、可预测的、科学的软件开发方式。
- 它由价值观、原则、实践和行为四个部分组成,彼此相互依赖、关联, 并通过行为贯穿于整个生存周期。
- 其四大价值观包括沟通、简单、反馈和勇气。
- 螺旋模型将开发过程分为几个螺旋周期,每个螺旋周期在前一个螺旋周期的基础上迭代进行开发。
- 瀑布模型将软件生存周期各个活动规定为依线性顺序连接的若干阶段的模型。
- 适合于软件需求很明确的软件项目的模型。
- V模型是瀑布模型的一种演变模型,将测试和分析与设计关联进行,加强分析与设计的验证。
- 原型模型是一种演化模型,通过快速构建可运行的原型系统,然后根据运行过程中获取的用户反馈进行改进,特别适用于对软件需求缺乏准确认识的情况。
- 螺旋模型将瀑布模型和演化模型结合起来,加入了后两种模型均忽略的风险分析。
白盒测试与黑盒测试
- 白盒测试也称为结构测试,根据程序的内部结构和逻辑来设计测试用例,对程序的路径和过程进行测试,检查是否满足设计的需要。
白盒测试中各种覆盖
- 语句覆盖是指选择足够的测试用例,使被测程序中每条语句至少执行一次。它对程序执行逻辑的覆盖很低, 因此一般认为是很弱的逻辑覆盖;
- 判定覆盖是指设计足够的测试用例,使得被测程序中每个判定表达式至少获得一次“真”值和“假”值;
- 条件覆盖是指设计足够的测试用例, 使得每一个判定语句中每个逻辑条件的各种可能的值至少满足一次;
- 路径覆盖是指覆盖 被测程序中所有可能的路径。
在这些覆盖技术中,最弱的覆盖是语句覆盖。 - 黑盒测试技术属于软件动态测试,是通过运行程序以发现错误,一般意义的测试都是指动态测试,可以分为白盒测试、黑盒测试和灰盒测试。
- 采用黑盒技术用例设计方法包括:等价类划分、边值分析、错误猜测和因果图等。
软件测试
- 单元测试也称为模块测试,在模块编写完且无编译错误就可以进行。
- 单元测试侧重于模块中的内部处理逻辑和数据结构。一般采用白盒法测试。
- 主要检查模块的以下特征: 模块接口、局部数据结构、重要的执行路径和边界条件。
- 软件测试的目的是识别错误,而不是改正错误。但是,开发团队希望错误发现后尽快地找出其原因,进而改正错误。而且,有些错误的持续存在会阻止进一步的测试。在这种情况下,在测试过程中改正错误可能会在修复已有错误的同时引入新的错误。
- 回归测试用于识别在改正当前错误的同时可能引入的新错误。
- 单元测试主要检查模块的以下特征: 模块接口、局部数据结构、重要的执行路径和边界条件。
- 软件测试分为静态测试和动态测试两大类。
- 静态测试包括人工检测和计算机辅助静态分析。
- 动态测试是通过运行程序发现错误,对软件产品进行黑盒和白盒测试。
结构化分析方法
- 数据流图是结构化分析方法的重要模型,用于描述系统的功能、输入、输出和数据存储等。
- 在绘制数据流图中,每条数据流的起点或者终点必须是加工,即至少有一端是加工。
- 允许一个加工有两条相同的输出数据流流向两个不同的加工,
- 允许一个加工有两条相同的输出数据流流向两个不同的加工。对于每个加工,必须既有输入数据流又有输出数据流。
- 在结构化设计中,根据数据流图进行体系结构设计和接口设计,
- 根据数据字典和实体关系图进行数据设计,
- 根据加工规格说明、状态转换图和控制规格说明进行过程设计。
- 围绕结构化分析方法有数据流图、实体-关系图和 状态-迁移图这三种图:
- 数据流图描述数据中系统中如何被传送或变换,以及描述如何对数据流进行变换的功能,用于功能建模;
- 实体-关系图描述数据对象及数据对象之间的关系,用于数据建模;
- 状态-迁移图描述系统对外部事件如何响应,如何动作,用于行为建模。
- 结构化语言:用来描述模块具体算法的、非正式的、比较灵活的语言。
- 程序流程图:描述模块或程序执行过程的历史最久、流行最广的一种图形表示方法。
- NS图:是支持结构化程序设计方法而产生的一种描述工具。
-判定表:一种适合于描述判断条件较多,各条件又相互组合且相应的决策方案 较多的情形的逻辑功能的图形工具。 - 决策树:一种适合于描述加工中具有多个策略且每个策略和若干条件有关的逻辑功能的图形工具
- 甘特图是项目管理中进行进度安排的一种图形描述方法。
模块化
- 模块化是指将软件划分成独立命名且可以独立访问的模块,不同的模块通常具有不同的功能或职责。
- 每个模块可以独立地开发、测试,最后组装成完整的软件。
- 模块独立性是指软件系统中每个模块只涉及软件要求的具体的一个子功能,而和其他模块之间的接口尽量简单,是模块化设计的一个重要原则,主要用模块间的耦合和模块内的内聚来衡量。
- 模块的内聚性一般有以下几种:
- 偶然内聚,指一个模块内的几个处理元素之间没有任何联系。
- 逻辑内聚,指模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。
- 时间内聚,把需要同时执行的动作组合在一起形成的模块。
- 通信内聚,指模块内所有处理元素都在同一个数据结构上操作,或者指各处理使用相同的输入数据或者产生相同的输出数据。
- 顺序内聚,指一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一个功能元素的输出就是下一个功能元素的输入。
- 功能内聚,是最强的内聚,指模块内所有元素共同完成一个功能,缺一不可。
结构图
- 结构化程序设计方法中使用结构图来描述软件系统的体系结构,
- 指出一个软件系统由哪些模块组成,以及模块之间的调用关系。
- 其基本成分有模块、调用和数据。
- 模块是指具有一定功能并可以用模块名调用的一组程序语句,是组成程序的基本单元,用矩形表示。- 模块之间的调用关系用从一个模块指向另一个模块的箭头表示,表示前者调用了后者。
- 模块之间还可以用带注释的短箭头表示模块调用过程中来回传递的信息,
- 箭头尾部带空心圆表示传递的是数据,带实心圆表示传递的是控制信息。
- 结构图有四种特征,其中:
- 深度指结构图控制的层次,即模块的层数;
- 宽度指一层中最大的模块数;
- 扇出指一个模块的直接下属模块数;
- 扇入指一个模块的直接上属模块数。
进度管理
- 进度的合理安排是如期完成软件项目的重要保证,也是合理分配资源的重要依据,因此进度安排是管理工作的一个重要组成部分。采用图形描述有助于进度安排更加直观。
- 常用的图形描述有Gantt (甘特)图和PERT (项目计划评审技术)图。
- Gantt图是一种简单的水平条形图,它以日历为基准描述项目任务,能清晰地描述每个任务从何时开始,到何时结束,任务的进展情况以及各个任务之间的并行性,
- 但是它不能清晰地反映出各任务之间的依赖关系,难以确定整个项目的关键所在,
- 也不能反映计划中有潜力的部分。
- PERT图是一个有向图,图中的箭头表示任务,它可以标上完成该任务所需的时间。
- PERT图不仅给出了每个任务的开始时间、结束时间和完成该任务所需的时间,
- 还给出了任务之间的关系,即哪些任务完成后才能开始另外一些任务,以及如期完成整个工程的关键路径,
- 但是它难以清晰地反映任务之间的并行关系。
项目开发等级
- 在可重复级,建立了基本的项目管理过程和实践来跟踪项目费用、进度和功能特性。
- 在已定义级,所有项目都采用根据实际情况修改后得到的标准软件过程来开发和维护软件。
- 在已管理级,收集对软件过程和产品质量的详细度量,对软件过程和产品都有定量的理解与控制。
- 在优化级,过程的量化反馈和先进的新思想,新技术促使过程不断改进。
函数调用
- 调用函数和被调用函数之间交换信息的方法主要有两种:
- 一种是由被调用函数把返回值返回给主调函数,
- 另一种是通过参数带回信息。
- 函数调用时实参与形参间交换信息的方法有传值调用和引用调用两种。
- 若实现函数调用时实参向形式参数传递相应类型的值(右值),则称为是传值调用。
- 引用调用的实质是将实参的地址(左值)传递给形参,函数中对形参的访问和修改实际上就是针对相应实际参数所作的访问和改变。
代码运行的内存区域
- 程序运行时内存布局分为代码区、栈区、堆区和静态数据区。
- 全局变量和静态变量的存储空间在静态数据区分配。
- 函数中定义的局部自动变的存储空间是在栈区动态分配的,随着函数被执行而为其分配存储空间,当函数执行结束后由系统回收。
- 源程序中的变量是内存中存储单元的抽象,具有地址、值和类型等属性,
- 变量的值在程序运行过程中可以改变。其中代码区存放执行的指令序列,在程序运行过程中,该区域中的内容用户不能修改,因此不能将变量映射到内存代码区的存储单元。
excle函数
- COUNT”是无条件统计函数“COUNTIF”是条件统计函数,其格式为:COUNTIF(统计范围,“统计条件”)
多态函数
- 多态指的是不同对象对同一消息的不同的响应。
- 参数多态:应用广泛、最纯的多态。
- 包含多态:同样的操作可用于一个类型及其子类型。包含多态一般需要进行运行时的类型检查。包含多态在许多语言中都存在,最常见的例子就是子类型化,即一个类型是另外一个类型的子类型。
- 强制多态:编译程序通过语义操作,把操作对象的类型强行加以变换,以符合函数或操作符的要求。
- 过载多态:同一个名(操作符﹑函数名)在不同的上下文中有不同的类型。
ip地址
- 常用的IP地址有三种基本类型,由网络号的第一个字节来区分。
- A类地址的第一个字节为1〜126,数字0和127不能作为A类地址,数字127保留给内部回送函数,而数字0则表示该地址是本地宿主机。
- B类地址的第一个字节为128〜191。
- C类地址的第 一个字节为192〜223。
- D类地址(组播)的第一个字节为224〜239。
- E类地址(保留) 的第一个字节为240〜254。
木马病毒
- 网络病毒均有不同家族来表明其所属类型。
- 其中Trojan.Lmir.PSW.60为木马病毒,
- Macro.word97为宏病毒,
- Script.Redlof为脚本病毒。
- 一般地,根据计算机病毒的发作方式和原理,在病毒名称前面加上相应的代码以表示该病毒的制作原理和发作方式。 例如,
- 以Trojan.开始的病毒一般为木马病毒,
- 以VBS.、JS.、Script.开头的病毒一般为脚本病毒,
- 以Worm.开头的一般为蠕虫病毒等。
包过滤防火墙
- 包过滤防火墙对数据包的过滤依据包括源IP地址、源端口号、目标IP地址和目标端口号。
RAM
- 主存一般由RAM和ROM这两种工作方式的存储器组成,其绝大部分存储空间由RAM构成。
- 其中,RAM分为SRAM(静态RAM)和DRAM(动态RAM)两种,
- DRAM利用电容存储数据,电容会漏电,因此DRAM需要周期性的进行刷新,以保护数据。
CPU指令集
- 按照CPU的指令系统架构,计算机分为复杂指令系统计算机(Complex Instruction Set Computer,CISC)和精简指令系统计算机(Reduced Instruction Set Computer,RISC)。
- CISC的指令系统比较丰富,其CPU包含有丰富的电路单元,功能强、占用面积多、功耗大,有专用指令来完成特定的功能,对存储器的操作较多。因此,处理特殊任务效率较高。
- RISC设计者把主要精力放在那些经常使用的指令上,尽量使它们具有简单高效的特色,并尽量减少存储器操作,其CPU包含有较少的单元电路,因而面积小、功耗低。
- 对于常用的功能,常通过组合指令来完成。
- 因此,在RISC机器上实现特殊功能时,效率可能较低,但可以利用流水技术和超标量技术加以改进和弥补。
树的节点关系
- 树中结点的子树数目称为结点的度。
- 根据定义,二叉树中结点的子树数目最多为2个,且子树区分左、右子树。 设某二叉树中有n个结点,用n0、n1、n2分别表示度为0、1、2的结点数,显然有n=n0+n1+n2。
- 另外,**任一非空二叉树中分支的数目正好比结点总数少1(度数之和+1=节点数),**而二叉树中的分支正是结点与其子树的连接关系,因此有分支数=2×n2+1×n1+0×n0=2n2+n1。 综上,n0+n1+n2=2n2+n1+1,即n0=n2+1。
主存辅存
- 将一个作业的部分内容装入主存便可开始启动运行, 其余部分暂时留在磁盘上,需要时再装入主存。这样就可以有效地利用主存空间。
- 用户角度看, 该系统所具有的主存容量将比实际主存容量大得多, 人们把这样的存储器称为虚拟存储器。
- 因此,虚拟存储器是为了扩大用户所使用的主存容量而采用的一种设计方法。
多媒体
- 带宽是声音信号的一个重要参数,它用来描述组成复合信号的频率范围。
- 音域指某人声或乐器所能达到的最低至最高音的范围。
- 响度指声音的大小,与振动的幅度有关。
- 音调指声音的高低,与振动的频率有关。
- 采样是把时间连续的模拟信号转换成时间离散、幅度连续的信号。
- 在某些特定的时刻获取声音信号幅值叫做采样,由这些特定时刻采样得到的信号称为离散时间信号。一般都是每隔相等的一小段时间采样一次,
- 为了不产生失真,采样频率不应低于声音信号最高频率的两倍。
- 因此,语音信号的采样频率一般为8kHz,音乐信号的采样频率则应在40kHz以上。
- 采样频率越高,可恢复的声音信号分量越丰富,其声音的保真度越好。
- 量化处理是把在幅度上连续取值(模拟量)的每一个样本转换为离散值(数字量)表示,因此量化过程有时也称为A/D转换(模数转换)。
- 量化后的样本是用二进制数来表示的,二进制数位数的多少反映了度量声音波形幅度的精度,称为量化精度,也称为量化分辨率。例如,每个声音样本若用16位(2字节)表示,则声音样本的取值范围是0〜65535,精度是1/65536;若只用8位(1字节)表示,则样本的取值范围是0〜255,精度是1/256。
- 量化精度越高,声音的质量越好,需要的存储空间也越多;量化精度越低,声音的质量越差,而需要的存储空间越少。
- 经过采样和量化处理后的声音信号已经是数字形式了,但为了便于计算机的存储、处理和传输,还必须按照一定的要求进行数据压缩和编码,以减少数据量,再按照某种规定的格式将数据组织成为文件。
- 波形编码是一种直接对取样、量化后的波形进行压缩处理的方法。
- MPEG(Moving Picture Experts Group,动态图像专家组)是ISO(International Standardization Organization,国际标准化组织)与IEC(International Electrotechnical Commission,国际电工委员会)于1988年成立的专门针对运动图像和语音压缩制定国际标准的组织。
- MPEG标准的视频压缩编码技术主要利用了具有运动补偿的帧间压缩编码技术以减小时间冗余度,利用DCT技术以减小图像的空间冗余度,
- 利用熵编码则在信息表示方面减小了统计冗余度。这几种技术的综合运用,大大增强了压缩性能。
媒体分类
- 感觉媒体:指直接作用于人的感觉器官,使人产生直接感觉的媒体。如:声音、图形、图像、动画等。
- 表示媒体:指为了加工、处理和传输感觉媒体而人为研究、构造出来的一种媒体,常见的有各种编码方式,如文本编码、图像编码和声音编码等。
- 表现媒体:表现和获取信息的物理设备。如:输入显示媒体键盘、鼠标和麦克风等;
- 输出显示媒体:显示器、打印机和音箱等。
- 存储媒体:存储数据的物理设备,如磁盘、光盘和内存等。
- 传输媒体:传输数据的物理载体,如电缆、光缆和交换设备等。
算法描述工具
- 程序流程图、N-S盒图和决策表是常用的算法描述工具。
- 其中,程序流程图运用图框和流程线等图示符号,直观清晰且详细地描述计算过程,其中图框表示各种操作的类型,图框中的文字和符号表示操作的内容,流程线表示操作的先后次序。
- 其缺点是控制流程的箭头可以随意转向,会严重背离结构化设计的要求。
- N-S盒图是指把将计算过程写在一个大框图内,这个大框图由若干个小的基本框图构成。
- 计算顺序由位于上部的框开始,至最下面的框结束。N-S盒图中没有流程控制线,可以避免随意的控制转移。
- 决策表又称判断表,是一种呈表格状的图形工具,适用于描述处理判断条件较多、各条件又相互组合、有多种决策方案的情况。
图片分类
- 矢量图是用系列计算机指令来描述幅图的内容,即通过指令描述构成一幅图的所有直线、曲线、圆、圆弧、矩形等图元的位置、维数和形状,也可以用更为复杂的形式表示图像中的曲面、光照、材质等效果。
- 矢量图法实质上是用数学的方式(算法和特征)来描述一幅图形图像,在处理图形图像时根据图元对应的数学表达式进行编辑和处理。
- 在屏幕上显示一幅图形图像时,首先要解释这些指令,然后将描述图形图像的指令转换成屏幕上显示的形状和颜色。
- 位图(点阵图)、灰度图是采用像素来描述一幅图形图像。
- 真彩色是指在组成一幅彩色图像的每个像素值中,有R,G,B三个基色分量,每个基色分量直接决定显示设备的基色强度,这样产生的彩色称为真彩色。
虚拟存储器
- 虚拟存储器(Virtual Memory)是为了给用户提供更大的随机存取空间而采用的一种存储技术。
- 它将**内存与外存(辅存)**结合使用,好像有一个容量极大的内存储器,工作速度接近于主存,每位的成本又与辅存相近,在整机形成多层次存储系统。
- 虚拟存储区的容量与物理主存大小无关,而受限于计算机的地址结构和可用磁盘容量。
- 虚拟存储器是由硬件和操作系统自动实现存储信息调度和管理的,其工作过程包括6个步骤:
- ①中央处理器将访问主存的逻辑地址分解成组号a和组内地址b,并对组号a进行地址变换,即以a为索引查地址变换表,以确定该组信息是否在主存中。
- ②若该组号已在主存,则转而执行④;否则检查主存中是否有空闲区,如果没有,便将某个暂时不用的组调出送往辅存,以便将需要的这组信息调入主存。
- ③从辅存读出所要的组,并送到主存空闲区,并登记在地址变换表中。
- ④从地址变换表读出与逻辑组号a对应的物理组号a。
- ⑤从物理组号a和组内字节地址b得到物理地址。
- ⑥根据物理地址从主存中存取需要的信息。
大根堆的判定
- 利用完全二叉树结构可以容易地判断一个序列是否为堆。
- 在完全二叉树上,结点i的左孩子编号为2i (若存在左孩子),右孩子编号为2i+1 (若存在右孩子),因此,只要判断每个结点是否同时大于其左、右孩子即可。 将题中A、B、C、D所表示的序列放入完全二叉树后,结果如下图所示,其中,B序列中46、48、37这三个元素不满足大顶堆的定义。
cpu组成
- 计算机中控制器的主要功能是从内存中取出指令,并指出下一条指令在内存中的位置,
- 首先将取出的指令送入指令寄存器,然后启动指令译码器对指令进行分析,最后发出相应的控制信号和定时信息,控制和协调计算机的各个部件有条不紊地工作,以完成指令所规定的操作。
- **程序计数器(PC)**的内容为下一条指令的地址。当程序顺序执行时,每取出一条指令,PC内容自动增加一个值,指向下一条要取的指令。
- 当程序出现转移时,则将转移地址送入PC,然后由PC指出新的指令地址。
- CPU主要由运算器、控制器(ControlUnit,CU)、寄存器组和内部总线组成,其基本功能有指令控制、操作控制、时序控制和数据处理。
- 指令控制是指CPU通过执行指令来控制程序的执行顺序。
- 操作控制是指一条指令功能的实现需要若干操作信号来完成,CPU产生每条指令的操作信号并将操作信号送往不同的部件,控制相应的部件按指令的功能要求进行操作。
- 时序控制是指CPU通过时序电路产生的时钟信号进行定时,以控制各种操作按照指定的时序进行。
- 数据处理是指完成对数据的加工处理,是CPU最根本的任务。
有向图与无线图的关系
- 对于无向图,其边数e和顶点数n的关系为e=n*(n-1)/2。
- 对于有向图,其边数e 和顶点数n的关系为e=n*(n-l),因此该图不是完全图。
- 若有向图为强连通图,则任意两个顶点间要存在路径。
防火墙
- 选项A,包过滤型防火墙是在网络层对数据包进行分析、选择,选择的依据是系统内设置的过滤规则(访问控制表)。通过检查每个数据包的源地址、目的地址、端口和协议状态等因素,确定是否允许该数据包通过。
- 选项B,应用网关型防火墙是在应用层上实现协议过滤和转发功能,针对特别的网络应用协议制定数据过滤规则。
- 选项C,数据库防火墙系统,串联部署在数据库服务器之前,解决数据库应用侧和运维侧两方面的问题,是一款基于数据库协议分析与控制技术的数据库安全防护系统。
- 选项D,web防火墙是入侵检测系统,入侵防御系统的一种。
进程并发
面向对象分析与面向对象设计
- 面向对象分析的主要任务是描述用户需求,构建一个准确的、一致的模型以描述软件需要解决的问题,其结果是软件系统的分析模型;
- 面向对象设计的主要任务则是描述系统如何解决问题,其结果是软件系统的设计模型。
加密算法
- 加密算法根据加密密钥和解密密钥是否相同分为共享密钥算法和公钥加密算法。
- 若使用的加密密钥和解密密钥是相同的,则称为共享密钥算法,
- 而使用不同的密钥进行加密和解密的算法称为公钥加密算法。
- 在以上算法中,DES、AES和IDEA都是共享密钥算法,
- 只有RSA是公钥加密算法。
I/O设备
- 连入计算机系统的设备都要进行编址以便进行访问,对于I/O设备,可以采用与内存统一编址的方式或独立的编址方式。
- 若与内存单元统一编址,则访问I/O设备接口如同访问内存单元,在指令系统中就不需要加以区分(即不需要设置专门的访问I/O设备接口的指令);
- 若采用独立的编址方式,则I/O设备接口的编号与内存单元的地址可能重叠,因此访问I/O设备接口的指令应该与访问内存单元的指令相互区分。
UML
- UML2.0中提供了多种图形。
- 对象图展现了一组对象以及它们之间的关系。对象图描述了在类图中所建立的事物的实例的静态快照。
- 类图展现了一组对象、接口、协作和它们之间的关系。
- 用例图展现了一组用例、参与者以及它们之间的关系,描述了谁将使用系统以及用户期望以什么方式与系统交互。
- 序列图是场景的图形化表示,描述了在一 个用例或操作的执行过程中以时间顺序组织的对象之间的交互活动。
图像数据量
- 扫描生成一幅图像时,实际上就是按一定的图像分辨率和一定的图像深度对模拟图 片或照片进行采样,而生成一幅数字化的图像。图像的图像分辨率越高,图像深度越深,则数字化后的图像效果越逼真,图像数据量越大。如
- 果按照像素点及其深度映射图像数据大小采样,可用下面的公式估算数据量:
- 图像数据量=图像的总像素X图像深度/8 (字节) 其中图像的总像素为图像的水平方向像素乘以垂直方向像素数。
函数调用
- 在程序中,函数定义是指对函数的完整定义,包括函数首部和函数体。
- 函数调用是指对所定义函数的使用,一个函数只有被调用才能得到执行。
- 函数声明是指函数的定义在后面,而前面需要对它进行调用,这样就需要预先进行声明,以便编译程序检查调用的合法性。
- 一般来说函数的声明只是函数首部加上分号即可。函数声明不是必须的,若函数调用在函数定义之后,则无需声明。
硬盘的平均时间
- 硬盘的性能指标主要包括磁盘转速、容量、平均寻道时间。
- **硬盘平均访问时间=平均寻道时间+平均等待时间。**其中,
- 平均寻道时间(Average seek time)是指硬盘在盘面上移动读写头至指定磁道寻找相应目标数据所用的时间,它描述硬盘读取数据的能力,单位为毫秒;
- 平均等待时间也称平均潜伏时间(Average latency time),是指当磁头移动到数据所在磁道后,然后等待所要的数据块继续转动到磁头下的时间。
磁盘调度算法
- 操作系统中的磁盘调度算法有:先来先服务、电梯调度、单向扫描、最短寻道时间优先算法等。
- 先来先服务是最简单的磁盘调度算法,它根据进程请求访问磁盘的先后次序进行调度,所以该算法可能会随时改变移动臂的运动方向。
- 电梯调度算法的工作原理是先响应同方向(向内道或向外道方向)的请求访问,然后再响应反方向的请求访问,即像电梯的工作原理一样,因此该算法可能会随时改变移动臂的运动方向。
- 单向扫描算法是电梯调度法的改进,该算法在返程时不响应请求访问,目的是为了解决电梯调度法带来的饥饿问题。
- 最短寻道时间优先算法,它根据进程请求访问磁盘的寻道距离短的优先调度,因此该算法可能会随时改变移动臂的运动方向。
敏捷开发
- 敏捷软件开发又称为敏捷开发,是一种从20世纪90年代开始逐渐引起广泛关注的一些新型软件开发方法,是一种应对快速变化的需求的一种软件开发能力。
- 敏捷软件开发方法具有许多与传统软件开发方法不同的特点,
- 其中人机交互重于过程和工具;
- 可以工作的软件重于求全责备的文档;
- 客户协作重于合同谈判;
- 随时应对变化重于循规蹈矩是其中最重要的特点。
排序算法
- 冒泡排序是通过不断比较和交换逻辑上相邻的元素而进行的排序过程,当从头到尾将元素进行一趟冒泡排序后,可以将最大元素(或最小)元素交换至最终位置。
- 插入排序是不断将元素插入到有序序列中来实现排序的过程,在完成最后一个元素的插入处理之前,不能保证之前得到的有序序列包含了最大元素(或最小元素)。
- 快速排序是在设置枢轴元素后,通过与其余元素的比较和交换(或移动),确保一趟快速排序后实现枢轴元素的最终定位,但是不能保证枢轴是最大元素(或最小元素),实际上若枢轴元素为序列的最大(或最小)元素,反而是快速排序的最坏情况。
- 归并排序是将两个(或多个)有序子序列合并为一个有序序列的方式来实现排序的过程,只有完成最后一趟归并时才能将最大或最小元素放在其最终位置上。
奇偶校验码
- 奇偶校验是一种校验代码传输正确性的方法。根据被传输的一组二进制代码的数位中“1”的个数是奇数或偶数来进行校验。采用奇数的称为奇校验,反之,称为偶校验。采用何种校验是事先规定好的。通常专门设置一个奇偶校验位,用它使这组代码中“1” 的个数为奇数或偶数。
- 若用奇校验,则当接收端收到这组代码时,校验“1”的个数是否为奇数,从而确定传输代码的正确性。 编码“0101110”中有4个“1”,采用偶校验时,校验位应设置为“0”。
存储器
- 存储器按寻址方式可分为随机存储器、顺序存储器和直接存储器。
- 读写存储器是指 存储器的内容既可读出也可写入,通常指RAM,而ROM是只读存储器的缩写。
- 在寄存器寻址方式中,操作数存放在CPU的通用寄存器中。
- 主存储器简称为主存、内存,设在主机内或主机板上,用来存放机器当前运行所需要的程序和数据,以便向CPU提供信息。
- 相对于外存,其特点是容量小速度快。
- 主存储器主要由存储体、控制线路、地址寄存器、数据寄存器和地址译码电路等部分组成。
并发
- 因为一个单处理器的计算机系统中尽管同时存在3个并发进程,
- 但是同一时刻允许占用处理器的进程数只能是1个。
- 引入多道程序设计的目的是为了提高资源的利用率,
- 例如进程P1要输入输出时,可以将CPU分配给进程P2,使得进程P1的输入输出和进程P2的程序执行并发运行。
真彩色与伪彩色
- 真彩色是指图像中的每个像素值都分成R、G、B三个基色分量,每个基色分量直接决定其基色的强度,这样产生的色彩称为真彩色。
- 伪彩色(Pseudo-Color)图像的每个像素值实际上是一个索引值或代码,该代码值作为色彩查找表CLUT (Color Look-Up Table)中某一项的入口地址,根据该地址可查找出包含实际R、G、B的强度值。这种用查找映射的方法产生的色彩称为伪彩色。
- 直接色(DirectColor)将每个像素值分为红、绿、蓝分量,每个分量作为单独的索引值进行变换。
- 矢量图使用直线和曲线来描述图形,这些图形的元素是一些点、线、矩形、多边形、圆和弧线等等,它们都是通过数学公式计算获得的。
数据库设计
- 数据控制功能包括对数据库中数据的安全性、完整性、并发和恢复的控制。
- 其中: ①安全性(security)是指保护数据库受恶意访问,即防止不合法的使用所造成的数据泄露、更改或破坏。这样,用户只能按规定对数据进行处理,例如,划分了不同的权限,有的用户只能有读数据的权限,有的用户有修改数据的权限,用户只能在规定的权限范围内操纵数据库。
- ②完整性(integrality)是指数据库正确性和相容性,是防止合法用户使用数据库时向数据库加入不符合语义的数据。保证数据库中数据是正确的,避免非法的更新。
- ③并发控制(concurrency control)是指在多用户共享的系统中,许多用户可能同时对同一数据进行操作。DBMS的并发控制子系统负责协调并发事务的执行,保证数据库的完整性不受破坏,避免用户得到不正确的数据。
- ④故障恢复(recovery from failure)。数据库中的4类故障是事务内部故障、系统故障、介质故障及计算机病毒。故障恢复主要是指恢复数据库本身,即在故障引起数据库当前状态不一致后,将数据库恢复到某个正确状态或一致状态。恢复的原理非常简单,就是要建立冗余(redundancy)数据。换句话说,确定数据库是否可恢复的方法就是其包含的每一条信息是否都可以利用冗余地存储在别处的信息重构。冗余是物理级的,通常认为逻辑级是没有冗余的。
软件资格证考试——初级程序员相关推荐
- 软件资格证考试之程序员
软件资格证考试之程序员(1) 网络基础知识 vpn的关键安全技术 隧道技术 加解密技术 密钥管理技术 使用者和设备认证技术 各类安全协议 S-HTTP 传输网页 SET 安全电子交易 ssl 安全套接 ...
- 计算机技术与软件专业技术资格 (水平) 考试 - 初级 程序员 - 考试用书
计算机技术与软件专业技术资格 (水平) 考试 - 初级 程序员 - 考试用书 全国计算机技术与软件专业技术资格水平考试指定用书 1. 程序员考试大纲 1.1. 考试科目设置 (1) 计算机与软件工程基 ...
- 计算机水平考试 初级,计算机水平考试-初级程序员下午试题模拟38
计算机水平考试-初级程序员下午试题模拟38 (8页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 初级程序员下午试题模拟38试题一阅读以下说明 ...
- 计算机水平考试试题c,计算机水平考试-初级程序员下午试题模拟6
计算机水平考试-初级程序员下午试题模拟6 (12页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 初级程序员下午试题模拟6试题一阅读以下应用程 ...
- 全国计算机软件水平考试试题,全国计算机软件水平考试初级程序员模拟试题.docx...
1 真理惟一可靠的标准就是永远自相符合 全国计算机软件水平考试初级程序员模拟试题 全国计算机软件水平考试初级程序员模拟试题 上午试卷本试卷的试题中共有 40 个空格,需要全部解答,每个空格 1.875 ...
- 2008年下半年软件水平考试之程序员试题分析
文章试读 不拘一个遍程序系列:编程序不能一个脑袋钻到底,有时要学会变通,即所谓的曲线救国.一.二.三.四 职场规划:一些杂七杂八的职场感悟吧.不值钱的软件人才 精力充沛与事业成功 让系分来得更猛烈 ...
- 软考考c语言还是java,计算机程序设计工程师技术水平(java)证书就是计算机技术与软件专业技术资格考试的程序员证书么?...
满意答案 rfhenry 2013.09.04 采纳率:47% 等级:12 已帮助:9852人 计算机程序设计工程师技术水平(java)证书就是计算机技术与软件专业技术资格考试的程序员证书. 计 ...
- 计算机软考初级程序员考试范围
初级程序员考试:考试科目1:计算机硬软件基础知识 1. 计算机科学基础 1.1 数制及其转换 二进制.十进制和十六进制等常用数制及其相互转换 1.2 数据的表示 数的表示(原码.反码.补码表示,整数和 ...
- java初级程序员考试_Java初级程序员必须要知道的10个基础面试题
Java初级程序员一般在业内定义为刚毕业或者工作1-2年的新人,对于Java初级程序员,经常面试中会被问到很多基础知识,因为基础知识可以考察个人对专业知识的基础有多扎实. Java 关于基础面试题小编 ...
- 计算机四级初级程序员考试试卷
找了几天的初级程序员试卷都没有找到,最后15块钱买了一套,分享一下. 链接:https://pan.baidu.com/s/1N3CRsQQsbiPMWl07vCKj3Q 提取码:5eh9 复制这段内 ...
最新文章
- windows如何卸载Oracle
- 编写python程序输出图形_python 图形化编程---文本输入框
- 基于R的信用评分卡模型解析
- Linux系统的iptables防火墙、SNAT、DNAT原理与设置规则
- docker es持久化_Docker 搭建 ES 集群并整合 Spring Boot
- sql server查询某一字段不重复的数据_初识数据库
- 索尼印度研究院启动运营 将在应用AI和数据分析领域提供就业机会
- 富文本编辑器中空格转化为a_熙态农业:富硒鸡蛋有什么营养价值?
- Python通过正则表达式去除(过滤)HTML标签,提取文字
- JSP→JavaWeb简介、Tomcat服务器安装启动测试目录、Tomcat手动创建项目、开发工具MyEclipse与Eclipse配置环境、MyEclipse创建Web程序目录、修改Tomcat端口
- 网站安全之为Web项目添加验证码功能(二)
- iOS开发之tableView时报错Assertion failure in -[UITableView _configureCellForDisplay:forIndexPath:]
- 前端js实现打印excel表格
- Mybatis全局配置文件Configuration.xml详解
- Unity3D 下载与安装
- 前端页面,引入PingFang SC(苹方简)字体
- UML之旅店预订系统
- im即时通讯开发:群聊消息的已读未读功能
- AD软件绘制stm32最小系统电路原理图与PCB图
- Go channel 通道