一、计算机之程序设计
1.1计算机的概念
计算机是根据指令操作数据的设备
1、功能性
对数据的操作,表现为数据计算、输入输出处理和结果储存等2、可编程性
根据一系列指令自动的、可预测的、准确的完成操作者的意图
1.2 计算机的发展
计算机的发展是参照摩尔定律,表现为指数方式
- ——计算机硬件所依赖的集成电路规模参照摩尔定律发展
- ——计算机运行速度因此也接近集合几何级数快速增长
- ——计算机高效支撑的各类运算功能不断丰富发展
- ——当今世界,唯一长达50年有效按照指数发展的技术领域
- ——计算机深刻改变人类社会,甚至可能改变人类本身
- ——可预见的未来30年,摩尔定律还将持续有效
1.1.2 摩尔定律 Moore's Law
- ——Intel公司创始人之一戈登·摩尔在1965年提出
- ——单位面积即成电路上可容纳晶体管的数量约每两年翻一番
- ——CPU/GPU、内存、硬盘、电子产品价格都遵循摩尔定律
1.3程序设计
程序设计是计算机可编程性的体现
——程序设计,亦称编程,深度应用计算机的主要手段
——程序设计已经成为了当今社会需要量最大的职业技能之一
——很多岗位都将被计算机程序接管,程序设计将是生存技能
1.4程序设计语言
程序设计语言是一种用于交互(交流)的人造语言
- ——程序设计语言,亦称编程语言,程序设计的具体实现方式
- ——编程语言比自然语言更简单、更严谨、更精确
- ——编程语言主要用于人类和计算机之间的交互
编程语言语言种类很多,但生命力强劲的却不多 - ——编程语言超过600种,绝大部分不再被使用
- ——C语言诞生于1972年,他是第一个被广泛使用的编程语言
- ——Python语言诞生于1990年,他是最流行最好用的编程语言之一
1.5编程语言的执行方式
计算机执行源程序的两种方式:编译和解释
1.5.1 编译语言
- ——源代码:采用某种编程语言编写的计算机程序,人类可读性高
1、result=2+3
- ——目标代码:计算机可直接执行,人类不可读(专家除外)
1、11010010 00111011
执行编译的过程的程序叫做编译器
1.5.2 解释型语言
将源代码逐条转换成目标代码同时逐条运行的过程
执行解释过程的程序叫做解释器
1.5.3 编译器和解释器的区别:
- ——编译器(compiler):一次性翻译,之后不需要源代码(类似英文翻译)
- ——每次程序运行时随着翻译执行(类似实时的同声传译)
1.6静态语言和脚本语言
根据执行方式不同,编程语言分为两类
静态语言:使用编译执行的编程语言
C/C++、Java脚本语言:使用解释执行的编程语言
Python语言、JavaScript语言、PHP语言。
执行方式不同,优势各有不同静态语言:编译器一次性生成目标代码,优化更充分(程序运行速度更快)
脚本语言:执行程序时需要源代码,维护更灵活(源代码在维护灵活,跨多个操作系统)
1.7 IPO
程序的基本编写方法
I:Input 输入,程序的输入
P:Process 处理,程序的主要逻辑
O:Output 输出,程序的输出
1.8 问题的计算部分
一个待解决问题中,可以用程序辅助完成的部分
计算机只能解决计算问题,即问题的计算部分
一个问题可能有多种角度理解,产生不同的计算部分
问题的计算部分一般都有输入、处理和输出过程
1.9 编程解决问题的步骤
1、分析问题:分析问题的计算部分,想清楚
2、划分边界:划分问题的功能边界,规划IPO
3、设计算法:设计问题的求解算法,关注算法
4、编写程序:编写问题的计算程序,编程序
5、调试测试:调试程序使正确运行,运行调试
6、升级维护:适应问题的升级维护,更新完善
读万卷书 行万里路 只为最好的修炼