C++学习笔记 20200825
C++学习笔记_20200825
From:学堂在线 慕课课程《C++语言程序设计》 郑莉 清华大学
1.2 计算机系统简介
计算机硬件结构
- 内存储器,CPU包括在主机中
- 运行的程序,处理的数据由输入设备输入,首先存在永久存储设备中(如硬盘)
- 运行中的程序被装入计算机的内存中,运行的指令要从内存中提取出来,放入寄存器中(不是在硬盘上运行)
- 程序的运行结果想要永久保留或输出,需要存到永久存储设备(外存储器)上去,可以通过输出设备显示
计算机指令系统
- 裸机:只有硬件的计算机
- 计算机能识别的是机器语言
- 机器语言指令是由0和1编码的
- 计算机指令系统
- 机器硬件能够识别的语言(机器语言)的集合
- 它是软件和硬件的主要界面
- 计算机软件(软件 = 程序 + 文档)
- 应用软件
- 系统软件:计算机系统的“管家”
- 中间件:提供系统软件和应用软件之间链接的软件
计算机程序
定义:
- 指令的序列
- 描述解决问题的方法和数据
1.3 计算机语言和程序设计方法的发展
计算机语言发展历程
- 机器语言
- 二进制代码构成
- 计算机硬件可以识别
- 表示简单的操作
- 汇编语言
- 将机器指令映射为一些助记符。如ADD、SUB、mov等
- 抽象层次低,需要考虑机器细节
- 高级语言
- 关键字、语句容易理解
- 有含义的数据命名和算式
- 抽象层次较高
- 屏蔽了机器的细节
- C++:
- 高级语言
- 支持面向对象的观点和方法
- 将客观事物看做对象
- 对象间通过消息传送进行沟通
- 支持分类和抽象
程序设计方法发展历程
- 面向过程的程序设计方法
- 机器语言、汇编语言、高级语言都支持
- 最初的目的:用于计算
- 主要工作:设计求解问题的过程
- 大型复杂的软件,难以用面向过程的方式编写
- 面向对象的程序设计方法
- 由面向对象的高级语言支持
- 一个系统由对象构成
- 对象与对象之间通过消息进行通信
- 泛型程序设计方法(C++亦可支持)