2016年上半年计算机软考时间预计为5月21-22日举行,对于即将参加考试的考生们,要想在有限的复习时间里将计算机软件水平考试的重要考点、及考点的出题方式掌握透彻,需要进行大量的积累知识。为此,小编特别为大家整理了《程序员》常考知识点总结,供考生们积累知识。

程序

从最一般的意义来说,程序是对解决某个计算问题的方法(算法)步骤的一种描述;而从计算机来说,计算机程序是用某种计算机能理解并执行的计算机语言作为描述语言,对解决问题的方法步骤的描述。计算机执行按程序所描述的方法步骤,能完成指定的功能。所以,程序就是供计算机执行后能完成特定功能的指令序列。

一个计算机程序主要描述两部分内容:描述问题的每个对象和对象之间的关系,以及描述对这些对象作处理的处理规则。其中关于对象及对象之间的关系是数据结构的内容,而处理规则是求解的算法。针对问题所涉及的对象和要完成的处理,设计合理的数据结构常可有效地简化算法,数据结构和算法是程序最主要的两个方面。

程序设计的任条和主要步骤

程序设计的任务就是分析解决问题的方法步骤(算法),并将解决问题算法的方法步骤用计算机语言记录下来。程序设计的主要步骤包括:认识问题、设计解决问题的算法、按算法编写程序、调试和测试程序。在程序开发过程中,上述步骤可能有反复,如发现程序有错,严重情况可能会要求重新认识问题和重新设计算法等。

机器语言和汇编语言

计算机能直接识别和执行的二进制代码称为计算机的机器语言。用有助于记忆的符号来代表二进制代码,称为汇编语言。汇编语言与机器语言几乎有一对一的关系。用汇编语言编写的程序称为“汇编源程序”,汇编源程序不能在计算机上直接执行,需要用汇编程序将汇编源程序翻译成机器语言程序,然后执行由汇编程序翻译出来的机器语言程序。机器语言和汇编语言是与具体计算机紧密相关的,称它们是面向机器的语言。

高级语言

与机器语言和汇编语言相比较,高级语言与具体计算机无关,是一种能方便描述算法过程的计算机程序设计语言。高级语言种类千差万别,但一般包含有以下四种成分:数据成分用来描述程序所涉及的数据;运算成分用来描述运算;控制成分用来表达程序的控制构造;传输成分用来表达数据的传输。由于高级语言程序主要是描述计算机的解题过程,即描述复杂的加工处理过程,所以也称这种高级语言为面向过程语言。

用高级语言编写的程序称为“源程序”。计算机不能直接技源程序的语句运行,通常有解释方式和编译方式两种方法在计算机上执行源程序。

解释方式,即让计算机运行解释程序,解释程序逐句取出源程序中的语句,对它作解释执行,输入数据,产生结果。

编译方式,即先运行编译程序,从源程序一次翻译产生计算机可直接执行的二进制程序(称为目标程序);然后让计算机执行目标程序,输入数据,产生结果。

解释方式的主要优点是计算机与人的交互性好,调试程序时,能一边执行一边直接改错,能较快得到一个正确的程序。缺点是逐句解释执行,运行速度慢。

编译方式的主要优点是计算机运行目标程序快,缺点是修改源程序后必须重新编译以产生新的目标程序。

现在也有将上述两种方式结合起来的,即先编译源程序,产生计算机还是不能直接执行的中间代码,然后让解释程序解释执行中间代码。这样做的好处首先是比直接解释执行快;更大的好处是中间代码独立于计算机,只要有相应的解释程序,就可在任何计算机上运行。

面向问题语言

面向问题语言是为了易于描述和求解某类特定领域的问题而专门设计的一种非过程语言。用面向问题语言解题时,不仅摆脱计算机的内部逻辑,也不必关心问题的求解算法和求解的过程,只需指出问题是做什么,数据的输入和输出形式,就能由相应的计算机系统得到所需结果。如报表语言、SOL(Structured

Query

Language)语言等。SQL语言是数据库查询和操纵语言,能直接使用数据库管理系统。由于使用面向问题语言来解题只要告诉计算机做什么,不必告诉计算机如何做,能方便用户的使用和提高程序的开发速度。但实现面向问题语言的系统从最一般的意义下实现问题如何求解,通常实现的效率较低。另外,面向问题语言要求问题已有通用的求解方法,目前其应用范围还比较狭窄。

C语言的发展史

目的是为编写系统程序研制一种高级程序语言。1963年,参照ALGOL60语言,增添了能描述计算机硬件特性的能力,称为CPL语言。1967年,作进一步的简化,改称BCPL语言。1970年,再进一步简化,并突出了硬件处理能力,称为B语言,并用于编写UNIX操作系统。1972年,进一步扩充数据类型和恢复通用性,称为C语言,并用C语言重写了UNIX操作系统。以后

C语言开始流行,为统一版本,ANSI于 1987年制定了 C语言的标准,称为 ANSIC.

C语言的特点

C语言主要有以下特点:

(1)与其它高级语言比较,更接近硬件,与机器语言比较,又更接近算法。C程序易编写、易读、易查错和易修改。

(2)数据类型与运算符丰富,描述算法更简单方便。

(3)C程序的结构简单,语言包含的语句类别少。

(4)是一种结构化语言,提供完善的结构化程序控制结构,适宜采用结构化程序设计方法开发程序。

(5)也是一种模块化程序设计语言,适宜大型程序的研制和开发。

(6)通常C系统都提供大量的库函数供程序开发人员选用,能简化程序开发。

C程序的基本结构

通常一个C程序包括一个或多个函数,其中必有一个main函数,称为主函数。C函数的定义主要分两部分:函数说明部分和函数体。其中函数体由C语言的语句序列组成,实现函数的功能。C程序总是从主函数开始执行。

以上内容是关于计算机软考《程序员》常考知识点总结的介绍,唯学网小编提醒,关于软件工程资讯、学习辅导等相关内容的请继续关注唯学网。小编会第一时间为大家更新跟进最新信息,如有任何疑问也可在线留言,小编会为您在第一时间解答!

计算机软考知识点,计算机软考《程序员》常考知识点总结相关推荐

  1. 计算机软件水平考试程序员之程序设计知识点汇总,软考程序员常考知识点汇总.docx...

    软考程序员常考知识点汇总软考程序员常考知识点汇总 2015年软考程序员考试知识点FoxPro程序设计 1.命令文件的建立.修改和运行 (1)命令文件的建立与修改MODIFYCOMMAND[/?][IN ...

  2. 计算机软考程序员常考知识点(1)

    PAD图用二维结构的图来表示程序的控制流,它所描述的程序结构十分清晰. 数据绑定控件的方法是先设置控件的DataSource的值,再设置DataField的值. 数据结构一般包含三方面:数据的逻辑结构 ...

  3. 再见吧,996!程序员开源考公指南获高赞:三人已成功上岸

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 整理 | 钰莹 转载自公众号:AI前线 近年来,互联网公司 996 ...

  4. 为什么大学计算机老师不去大公司当程序员说出来你都很难敢相信

    大学中的老师,人们的印象一般都是学识渊博.谈吐优雅的儒士,其实他们也是为了名利奔波,忙忙碌碌的.既然是为了赚钱,大学里面的计算机老师为什么不去大公司去做一名程序员呢?这样的话,赚的钱一定会比大学那点工 ...

  5. 我不是学计算机专业的,想转行做程序员,怎么办?

    我不是学计算机专业的,想转行做程序员,怎么办? 1.很多人想转行程序员是因为互联网行业薪水高.但坦率说,进入互联网行业道路千万条,转程序员的难度第一条.而且这个岗位还始终伴随着持续的加班.无尽的学习. ...

  6. 程序员常说的API是什么意思?API类型有什么呢?

    程序员常说的API是什么意思?API类型有什么呢? API是什么意思呢?在定义上,API(Application Programming Interface),中文翻译是应用程序编程接口,是一些预先定 ...

  7. java中级程序员面试题_中级Java程序员常见面试题汇总

    下面是一些中级Java程序员常见面试题汇总,你可以用它来好好准备面试. 什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位.程序员可以通过它进行多处理器 ...

  8. 程序员常去的100个网站

    程序员常去的100个网站! 1 J2me开发网 http://www.j2medev.com/bbs/index.asp 2 J2me社区 http://www.j2meforums.com/foru ...

  9. Python程序员常犯的十个错误

    不管是在学习还是工作过程中,人都会犯错.虽然Python的语法简单.灵活,但也一样存在一些不小的坑,一不小心,不管是初学者还是资深Python程序员都有可能会栽跟头. 常见错误1:错误地将表达式作为函 ...

  10. html如何看数据是不是写死的,程序员常讲的「写死」是什么意思?

    我们在开发软件的过程中对于一些固定不变的参数都会写死,这个时候很多人也许不明白程序员嘴里说的「写死」是什么意思?可以不写死吗?不写死就会增加难度吗?这里吾爱编程为大家介绍一下关于程序员常讲的写死是什么 ...

最新文章

  1. 国企程序员有多香?这是一个普通程序员在国企的每日工作清单!
  2. c的开始,求最大数。
  3. Java 分割字符串的方法String.split()底层原理
  4. windows python 访问mtp存储空间_用Windows电脑训练深度学习模型?超详细配置教程来了...
  5. mysql5.6 memcached_MySQL 5.6 安装配置InnoDB memcached Plugin
  6. MBR, EFI, 硬盘分区表
  7. 完全使用linux工作 pdf下载,完全用Linux工作-计算机.pdf
  8. 常见的Java开发框架有哪些?
  9. java 并发集合_《Java 7并发编程实战手册》第六章并发集合
  10. Android viewpager + fragment实现fragment之间的切换
  11. android 学习资料整理
  12. 阿里云服务安装与卸载rabbitmq
  13. 每一首歌曲的背后都有一段感人的故事……
  14. 网络电话是如何实现打到普通话机上的?
  15. 【电子电路】变送器信号 4~20mA 恒流源电路设计
  16. 有n个结构体变量,内含学生学号,姓名和3门课的成绩。要求输出平均成绩最高的学生的信息
  17. 哈代-温伯格平衡定律(The Hardy-Weinberg Equilibrium)
  18. verilog实现计算均值
  19. 剑网三怎么查看服务器角色信息,剑网3如何获取角色?以下这些获取方式请全部掌握!...
  20. DB2日期时间型数据类型介绍

热门文章

  1. 量化投资 第27章 K线图 27.3.1
  2. CEF3:与 JavaScript 整合(二)
  3. centos7.2系统硬盘分区教程
  4. Linux系统编程 进程控制
  5. AES-128-ECB/CBC 查表法 C#实现
  6. 从键盘输入一个年份,判断这一年是不是闰年
  7. CCPC 桂林站总结
  8. IT人职业规划(绝对给力)
  9. SAP中通过成本核算表计算间接费用实例
  10. 如何判断一棵树是不是另一棵树的子树