【C++ 重要知识点总结】程序设计基础

冯诺依曼计算机

1 组成部分

  1. 运算器:算术逻辑单元ALU。算术运算和逻辑运算。加法器、寄存器、控制线路。
  2. 控制器:程序计数器PC、指令寄存器IR、指令译码器ID、时序控制电路。运算器和控制器组成了CPU。
  3. 存储器:计算机用来存储数据的记忆装置。内存储器和外存储器。
  4. 输入设备:接受用户输入的程序和数据信息,将他们转换成计算机可以处理的二进制形式的数据存储到内存当中。
  5. 输出设备:将存放在内存中的计算机处理结果以人们能够识别的形势表现出来。

分类:高性能计算机、微信计算机、工作站、服务器、嵌入式计算机。

程序和数据均以二进制表示,以相同的方式存放在存储器中,按地址寻访。

2 指令与程序

  • 指令:计算机执行某种操作的及其命令,他可以被计算机硬件直接识别和执行。组成:操作码+操作数。操作码指明操作的类型。操作数指明操作对象的数据或所在的内存单元地址。
  • 指令系统:一台计算机所有指令的集合称为指令系统。指令分类:数据传送指令、数据处理指令、程序控制指令、输入输出指令、硬件管理指令。
  • 执行指令的步骤:取指令、分析指令、处理指令。指令流水线技术。
  • 程序:完成一定功能的指令的有序集合。包含算法和数据两部分。
  • 算法:控制流是对数据所进行操作的描述,即指定的操作步骤和方法。
  • 软件:值程序、程序运行所需要的数据以及开发、使用和维护这些程序所需要的文档的集合。

3 信息的存储与标识

计算机的数字系统

  • r称为该数制的基数,数制中每个位置对应的单位称为位权。
  • 常用的有二进制八进制十进制是,就禁止。

进位计数制的转换

  • 进制转换:十进制转换r进制:除r取余法和乘r取整法。r进制转换十进制:基数乘位权相加。二进制、八进制、十六进制的相互转换。直接使用位数对应。

数值数据的表示

  • 整数的原码:
  • 整数的反码:
  • 整数的补码:
  • 浮点数的表示:32位,s-一位符号位。e-八位指数位。f-二十三位小数位。

非数值数据的表示

  • ASCII码,7位二进制编码。
  • 汉字字符及其他双字节编码的字符集。
  • 多媒体信息。

4 程序设计语言

  • 机器语言:二进制0和1按照一定规则组成的,能被计算机直接理解和执行的指令集合。难写难记难阅读,不同硬件机器指令不同,通用性差。机器语言程序占用存储空间少,运行速度快。
  • 汇编语言
  • 高级语言-编译:编译器程序把高级语言编写的源程序翻译成机器指令的目标代码。目标代码和源程序在功能上完全邓建。通过连接器程序将目标程序和相关的库连接成一个完成的可执行的程序。
  • 高级语言
    • 编译
      用编译器把高级语言编写的源程序翻译成机器指令表示的目标代码。通过连接器程序将目标程序于相关库连接成一个完整的可执行程序。有点:速度快,脱离源程序运行。
    • 解释
      用解释器程序将高级语言编写的源程序进行分析翻译,解释一句,执行一句。优点:跨平台,移植性高。

5 程序设计概述

步骤

  1. 确定数学模型和数据结构
  2. 算法分析和描述
  3. 编写程序
  4. 程序测试

算法

  • 定义
    算法是为了求解问题而采取的,按照一定次序进行的操作步骤。

  • 特性

    • 有穷性
    • 确定性
    • 有效性
    • 0个或多个输入、
    • 一个或多个输出。
  • 表示方法

    • 自然语言
    • 流程图
    • N-S图
    • 伪代码
    • UML图

面向对象的程序设计

  • 类和对象
  • 封装与信息隐藏。
  • 抽象
  • 继承与重用
  • 多态性
  • 消息传送与处理

你可能感兴趣的:(c++,c++,java,jvm)