1. 计算机组成原理
计算机组成原理:是研究计算机硬件和软件组成及其相互关系的学科领域。它涵盖了计算机系统的各个方面,包括计算机的功能、组件、数据表示、指令集体系结构、处理器设计、存储器层次结构、输入输出系统、总线结构、操作系统以及计算机网络等。
冯·诺依曼体系结构:计算机通常采用冯·诺依曼体系结构,包括中央处理器(CPU)、存储器(内存)、输入设备和输出设备。它们通过总线进行数据和指令的传输。
- 中央处理器(CPU):CPU是计算机的核心部件,负责执行指令和处理数据。它包括控制单元和算术逻辑单元(ALU),控制单元负责指令的解码和控制,ALU负责执行算术和逻辑操作。
- 存储器:存储器用于存储数据和指令。计算机中的存储器层次结构包括寄存器、、主存(内存)和辅助存储器。寄存器是最快速但容量最小的存储器,用于存储处理器中的数据和指令。主存是计算机的主要存储器,用于存储程序和数据。辅助存储器(如硬盘、固态硬盘)用于长期存储大量的数据。
- 输入输出设备:输入输出设备用于与计算机进行交互和数据的输入输出。常见的输入设备包括键盘、鼠标、扫描仪等,输出设备包括显示器、打印机、音频设备等。输入输出设备通过接口和控制器与计算机连接。
- 总线:总线是计算机中各个组件之间进行数据传输的通道。它包括数据总线、地址总线和控制总线。数据总线用于传输数据,地址总线用于指定数据的存储位置,控制总线用于传输控制信号。
2. 编程语言
【1】什么是编程语言
编程语言:一种用于编写计算机程序的形式化语言。
它是一种人与计算机之间进行交流的工具,用于描述和指示计算机执行特定任务或完成特定操作的步骤和逻辑。
编程语言可以分为:低级语言和高级语言。
低级语言:如汇编语言直接与计算机硬件交互,更接近机器语言。
高级语言:如Python、Java、C++等提供了更高级别的抽象和功能,使开发人员能够更快速、易读、易维护地编写程序。
编程语言的发展史:
机器指令(1930-1960s)
特点:二进制的数字指令映射电路运算
汇编语言(1947 )
特点:汇编核心就是指令符号化
高级语言(1972 )
特点:核心就是语句封装了指令
总之,高级语言的出现使得编程变得更加高效、易读和易维护。它们提供了更强大、更友好的工具和库,使开发人员能够更快速地构建复杂的应用程序,并推动了软件开发的快速发展。
【2】编译型语言与解释型语言
编译型语言的特点包括:
- 编译过程在代码执行之前进行,只需要进行一次编译。
- 编译后的代码执行效率高,因为它是直接由计算机硬件执行的机器码。
- 可执行文件独立于源代码,可以在不同的计算机上执行,前提是目标机器上有相应的编译器和运行时支持。
- 编译型语言对代码的静态类型检查较为严格,需要在编译时确定变量的类型和错误检查
编译型语言的代码在执行之前需要经过编译器的处理。编译器将源代码作为输入,通过多个阶段的处理生成机器码(目标代码),然后将目标代码链接为可执行文件。这个可执行文件可以直接在计算机上执行。
编译型语言的典型代表是C、C++和Pascal等。
解释型语言的特点包括:
- 不需要显式的编译过程,代码可以直接执行。
- 每次执行都需要解释器逐行解释代码,因此执行效率相对较低。
- 源代码可以跨平台执行,只需要针对不同平台提供相应的解释器。
- 解释型语言通常具有动态类型检查的特性,变量的类型在运行时确定。
解释型语言的代码在执行时逐行被解释器解释执行,不需要显式的编译过程。解释器将源代码逐行解释翻译成机器码或虚拟机指令,并实时执行。
解释型语言的典型代表是Python、JavaScript和Ruby等。