2015~2016年程序员上午试题总结

计算机病毒

  • ==COM文件==是一种可执行程序的内存映象文件
  • exe是一种可执行程序
  • 文件类病毒主要感染的文件类型是EXE,COM等

程序语言基础

名字 解释
COBOL 面向事物处理的语言
XML 扩展标记语言
PROLOG 逻辑式语言
LISP 函数式语言
Python 通用的脚本语言

数据库关系运算

名字 解释
和(Union)运算,针对行 针对两张具有相同属 性的表,将两者表合并起来,在合并过程中遇到重复的行保留一项。
差(difference)运算、针对行 针对两张具有不相同属 性的表,将两者表不相同合并起来。
交(intersection)运算,针对行 针对两张具有相同属 性的表,求出两个表相同的行。
广义笛卡尔积(Extended Cartesian Product)运算、针对行 两张表行的组合,并且属性是两者之和
选择(Selection)运算、针对行 根据某种条件选择出指定的行。就是查询操作,一般用where语句。
投影(Projection)运算、针对列 选出一个表的某些属性。

图解

Windows的网络命令

名字 解释
net view 显示计算机共享资源列表
nbtstat 监控TCP/IP协议,显示路由表、实际网络连接以及每个网络接口设备的状态信息
nbtstat -r 显示NetBIOS名称解析统计资料
nslookup 监听网络中DNS服务器是否能正确实现域名解析的命令工具

磁盘

磁盘存储器由:盘片,驱动器,控制器和接口组成。
- 每个磁道的周长不同但是它的存储容量确实相同的,所以磁道位密度是相同的
- ==非格式化容量==:位密度 * 内圈磁道周长 * 每个记录面上的磁道数 * 磁道
- ==格式化容量==: 每个扇区的字节数 * 每道的扇区数 * 每个记录面上的磁道数 * 磁道
- ==寻道时间==是由驱动器的性能决定的,是一个常数
- ==提高磁盘转速==缩短的是平均等待时间

C程序中分配储存空间

  • 内存空间逻辑上可分为==代码区==和==数据区==
  • 数据区可分为静态数据区、栈区和堆区
  • 代码区存放指令,运行时不能修改
名字 解释 一般情况
栈区(stack) 由编译器==自动分配释放== ,存放函数==的参数值==,==局部变量的==值等。其操作方式类似于数据结构中的栈 局部变量的储存单元
堆区(heap) 一般由==程序员分配释放, 若程序员不释放==,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链 根据需要动态申请和释放的动态变量
全局区(静态数据区)(static) 全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。 - 程序结束后有系统释放 全局变量
文字常量区 常量字符串就是放在这里的。 程序结束后由系统释放
程序代码区 存放函数体的二进制代码

存储虚拟化技术

虚拟化技术
- 大型企业数据中心为了解决存储扩张和管理难度增大的问题
- 作用:
1. 将内存和的一部分作为虚拟内存,以利于==较小的物理内存同时调度运行多个较大的运行程序==
2. 屏蔽了多种异构存储设备的物理特性
3. 实现不同类型存储资源的集中管理和统一分配
4. 满足了多业务对存储容量和性能的不同要求,提高存储活动的灵活性

结构化开发方法

结构化开发方法:
1. 由结构化分析,机构化设计、结构化程序程序设计组成
2. 是一种面向数据流的开发方法
3. 指导思想是自顶向下、逐层分解
4. 基本原则是功能的分解与抽象
5. 是软件工程最早出现的处理方法,特别适合数据处理领域的问题
6. 但不适合处理大规模复杂的项目,而且难以适应需求的变化

二叉树遍历

名字 操作
前序遍历 根节点->左子树->右子树
中序遍历 左子树->根节点->右子树
后序遍历 左子树->右子树->根节点

计算机系统知识

  • CPU是计算机工作的核心部件:
    1. 指令控制,CPU通过执行指令来控制程序的执行顺序
    2. 操作控制,
    3. 时序控制,
    4. 数据处理,在CPU的控制下由逻辑单元对数据进行加工是最根本的任务
名字 解释
MIPS(Million Instructions Per Second) 每秒执行百万级的机器语言指令数,这是一个用来衡量CPU速度的一个标准
MFLOPS(Million Floating-point Operations Per Second) 反映浮点运算的情况,是衡量计算机系统的指标
CPI(Clockcycle Per Instruction) 每条指令的时钟周期
IPC(Inter-Process Communication) 进程间通信

系统存储管理

  • 当进程访问的页面不在主存,系统应先产生缺页中断,然后一次按照
graph LR
决定淘汰页-->页面调出
页面调出-->页面调入

的顺序进行处理
- 经常使用的调度算法有:先进先出调度算法,最近最少使用调度算法、最近最不常使用调度算法

程序语言基础 - 中间代码

  • 中间代码:一种简单且含义明确的记号系统,可以有若干形式,他们的共同特征是与具体机器无关。
  • 设计原则:
    1. 容易生成
    2. 容易翻译成目标代码

结构化程序设计方法

  • 结构化程序设计方法中使用结构图来描述软件系统的体系结构,指出一个软件系统由那些模块组成,以及模块之间的调用关系。==其基本成分有模块、调用和数据==

结构图的四个特征

名字 解释
深度 结构图控制的层次
宽度 一层中最大的模块数
扇出 一个模块的直接下属模块数
扇入 一个模块的直接上属模块数

数据库 锁

事务并发处理时,如果对数据读写不加以控制,会破坏事务的==隔离性和一致性==。控制的手段就是加锁,在事务执行时,限制其他事务对数据的读取。

名字 解释
排它锁(X锁)写锁 当事务T对数据A上X锁时,就只允许事务T对数据A进行读取和修改,且其他事务不再可以对事务A上锁,也不能读取和修改数据A,直到事务T释放对A的锁。
共享锁(S锁)读锁 对事务的对数据读操作时,进行了锁定,如果事务T对数据A加上了S锁,那么T只能读取数据A,不能修改,其他事务也可以对数据A上S锁,但只要数据A上有S锁,就不能再上X锁了。

计算机病毒

名字 解释
Trojan. 为前缀,一般为木马病毒
VBS、JS、Script. 一般为脚本病毒
Worm. 为前缀,一般为蠕虫病毒
Macro. 宏病毒

储存器

SSD(固态硬盘)和HDD(普通硬盘)比较
- SSD没有电机加速旋转的过程,启动速度更快。
- SSD读写不用磁头,寻址时间与存储位置没有关系,磁盘碎片不会影响读取时间。
- SSD可快速随机存取,延迟极小。
- SSD内部没有任何可移动的机械部件,不发生机械故障,不怕碰撞
- SSD对工作环境的要求低

网络部分协议

名字 解释
S-HTTP 传输网页
SET 安全电子交易
SSL 安全套接层协议
PGP 安全电子邮件协议

数据结构基础

  • 字符串属于线性的数据结构
  • 空白串指的是由空白符号(空格、制表符等)构成的串,长度为0;
  • 模式匹配是求出指定字串是否出现及其位置
  • 两字串比较长度时要注意编码格式

软件设计-模块化,内聚级别

graph LR
巧合内聚-->逻辑内聚
逻辑内聚-->时间内聚
时间内聚-->通信内聚
通信内聚-->顺序内聚
顺序内聚-->功能内聚

TCP UDP

  • TCP:HTTP、Telent、SMTP传输层均采用TCP
  • UDP:SNMP传输层采用UDP

小知识

  • 数据模型三要素:数据结构、数据操作、数据约束条件。
  • 在面向对象的方法中,继承用于==利用已有类创造新类==。通过继承关系创建的子类可以有==父类的属性和方法之外的新属性和新方法==。
  • 商业秘密权可以保护软件的技术信息、经营信息。
  • 用链表作为存储结构的栈称为链栈,链表中的结点根据需要动态申请,不存在栈满的情况。
  • 进行定点数加减时,绝对值变大才可能产生溢出
  • 哈希表既是一种查找结构又是一种存储结构。
  • ==解释程序==也称解释器,他可以直接解释执行源程序,或者将源程序翻译成某种间接表示形式后,加以执行。
  • ==编译程序==(编译器),是将源程序翻译成为目标语言程序,再在计算机上执行目标语言程序。
  • 多态的实现是受继承的支持,利用类的层次关系,通用的信息功能放在高层次,不同的实现功能放在低层次。
  • ICMP与IP协议同属于网络层,ICMP报文封装在IP数据报中传送。
  • FTP中访问常使用==anonymous==作为用户名
  • 企业管理、电子商务、电子政务等应用中,科学计算量不大,重点是按流程进行规范处理,强调人机交互(==弱计算,强交流,多交互==)
  • DRAM是最为常见的存储器
  • 特殊矩阵的所有非零元素可以压缩存储在一维数组中
阅读更多
文章标签: 程序员 软考
个人分类: 软考程序员
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭