计算机的概念
- 功能性
对数据的操作,表现出数据计算,输入输出处理和结果存储等 - 可编程性
根据一系列的指令自动的、可预测的、准确完成操作者的意图。
计算机的发展
- 按照摩尔定律,表现为指数方式
- 计算机硬件所依赖的集成电路规模参照摩尔定律发展
- 计算机运行速度也接近几何级数快速增长
- 计算机所能高效支撑的各类运算功能不断丰富发展
- 摩尔定律的定义归纳起来,主要有以下三种版本:
- 集成电路芯片上所集成的电路的数目,每隔18个月就翻一倍。
- 微处理器的性能每隔18个月提高一倍,或价格下降一半。
- 用一个美元所能买到的计算机性能,每隔18个月翻两倍。
程序设计
- 程序设计是计算机可编程的体现
- 程序设计也叫编程
程序设计语言
- 是一种用于交互的人造语言
- 又称编程语言,程序设计的具体体现
- 用于人类与计算机之间的交互
- 比自然语言更精确,简单
源代码
采用某种编程语言编写的计算机程序,人类可读
result=2+5;
目标代码
计算机可直接执行,人类不可读
11001100 00101010
程序执行的两种方式:
编译
- 将源代码一次性转化成目标代码的过程
解释
将源代码逐条转化成目标代码同时逐步运行的过程
根据执行的方式不同将编程语言分为
- 静态语言
使用编译执行的编程语言
c/c++语言、java语言
- 脚本语言
使用解释执行的编程语言
python语言、JavaScript语言、PHP语言
程序的基本编写方法IPO
- I input 输入,程序的输入
- 文件输入,网络输入,控制台输入,交互界面输入等
- 输入是程序的开始
- P process 处理 ,程序的主要逻辑
- 处理是程序对输入数据进行计算产生输出结果的过程
- 处理方法统称算法,它是程序最重要的部分
- 算法是一个程序的灵魂
- O output 输出,程序的输出
- 控制台输出,图形输出,文件输出,网络输出等
- 输出是程序展示运算结果的过程
编程解决问题的步骤
- 分析问题
分析问题的计算部分,想清楚 - 划分边界
划分问题的功能边界,规划IPO - 设计算法
设计问题求解的基本算法,关注算法 - 编写程序
编写问题的计算程序 - 调试测试
程序正确运行 - 升级维护