[TOC]
什么是计算机程序? 答:所谓的程序就是计算机能识别和执行的指令,每一条指令使计算机执行特定的操作,程序和指令是计算机系统中最基本的概念。
什么是计算机语言? 答:一种人类与计算机都能识别的语言。
1)机器语言 机器指令(Machine instruction):计算机能直接识别和接受的二进制代码 机器语言(Machine Language):机器指令的集合 通过指令表,CPU 能将 0 和 1 的组合跟具体的指令挂钩,那么这些 0 和 1 的组合我们称之为机器码,属于第一代编程语言,也是 CPU 唯一可以直接读得懂的语言。
2)符号语言(Symbolic language) 由于计算机不能直接识别和执行符号语言助记符(ADD A,B == 寄存器A = A+B),需要汇编程序的软件将符号语言转成机器语言 一条符号语言对应转换一条机器指令,该过程叫”代真”或”汇编”,因此符号语言也叫符号汇编语言(Assembler Language) 缺点:通用性不行(不同型号的PC机器语言和汇编语言互不相通)
3)高级语言(High language) 20世纪50年代第一个计算机高级语言FORTRAN语言-IBM公司开发 优点:功能强,不依赖具体的机器,对任何的计算机都适用,一个高级语句往往对应多条机器指令。
比如第三代编程语言 :C 语言 C++、C#、JAVA、Delphi、Python、Object-C、Swift
高级语言的发展历程 1)非结构化的语言
2)结构化的语言(面向过程)
3)面向对象的语言
两种编程思想
WeiyiGeek.过程/对象
1)面向过程
以事件为中心的编程思想;分析出解决问题所需要的步骤;再用函数(最小单位)把这些步骤一步一步实现;使用的时候一个一个依次调用就可以了;
2)面向对象 面向对象是以功能来划分问题,而不是步骤;注重的是对象和对象的使用;只有面向对象的程序,才真正的符合人类的思维逻辑; 三大特性:封装性,继承性,多态性; 优势:可读性,可重用性,稳定性,维护性,可测试性;
程序设计语言可以分为两类:编译型语言和解释型语言
1)编译型语言 很多传统的程序设计语言,例如Fortran、Ada、Pascal、C、C++ 都是编译型语言,这类语言需要预先将我们写好的源代码(source code)转换成目标代码(object code),这个过程被称作“编译”。
例如:在C++里,就很难进行“将一个目录里所有的文件复制到另一个目录中”之类的简单操作。
2)解释型语言(“脚本语言”) 执行这类程序时,解释器(interpreter)需要读取我们编写的源代码(source code),并将其转换成目标代码(object code),再由计算机运行。
多数网站开发都是使用脚本语言,它是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,纯文本保存的程序(如可以用记事本打开查看、编辑)),因为脚本不仅可以减小网页的规模和提高网页浏览速度,而且可以丰富网页的表现。
通常使用脚本编程还是值得的,花一个小时写成的简单脚本,同样的功能用C或C++来编写实现,可能需要两天,而且脚本执行的速度已经够快了,快到足以让人忽略它性能上的问题。
脚本编程语言:有PHP、HTML、CSS、JavaScript、VBScript、ActionScript、MAX Script、ASP、JSP、SQL、Perl、Shell、python、Ruby、JavaFX、Lua、AutoIt
WeiyiGeek.编译型-解释型
程序设计的任务 从确认问题到最后完成任务几个工作阶段:
程序执行流程
大多数的程序都遵循着:输入 ->>> 处理 ->>> 输出的模型
,首先接受输入数据,然后根据指定的算法进行处理,最后输出计算结果。
WeiyiGeek.执行流程
结构化程序设计方法 作用:解决人脑思维能力的局限性和被处理问题的复杂性之间的矛盾。 定义:一个结构化程序就是用计算机语言表示的结构化算法,使用三种基本结构组成的程序必然是结构化的程序。
结构化程序设计强调程序设计风格和程序结构的规范化,提倡清晰的结构采用以下方法:
程序设计调试技巧
程序出错可以分为两大类:编译时错误(complie-time error)
和运行时错误(run-time error)
;
程序设计标准化 文件注释:
标题: merglist.c
功能: 归并两个有序表.
说明:归并两个数据元素按非递减有序排列的线性表palist和pbli t bli
当前版本: x.x
修改信息: 2004 08 05 Anni 2004.08.05 Anni, Initial Version Initial Version2004.08.20 Tom, Bug xxxx fixed
函数注释:
函数功能:在在list所指顺序表中删除下标为
函数格式:int delete_seq(PSeqList palist,int p)
函数参数:Param1:PseqList类型对象 输入框架 ,Parma2: 整形无符号,记录次数
返回值: TRUE正常, FALSE错误
功能性注释:
//每个变量作用简要说明
//将每月的销售额amount加到年销售额total中
total = amount + total;