第一部分 计算机底层工作核心原理
1.1 冯・诺依曼体系结构(现代计算机基础框架)
现代计算机均遵循冯・诺依曼体系,核心思想为存储程序 和程序控制,是计算机硬件架构的底层逻辑。
- 五大核心硬件部件
- 运算器:核心为算术逻辑单元(ALU),专门执行算术运算(加减乘除)和逻辑判断(与、或、非、异或等)。
- 控制器(CU):计算机的 "指挥中枢",负责读取、解析指令,并向其他部件发送控制信号,协调各硬件协同工作。
- 存储器 :分为内存(RAM)和外存(硬盘、U 盘等),统一以二进制存储程序指令 和数据,是实现 "存储程序" 的关键。
- 输入设备:用户向计算机传递信息的媒介,如键盘、鼠标、扫描仪,实现外部信息向计算机内部的转换。
- 输出设备:计算机向用户反馈处理结果的媒介,如显示器、打印机、音箱,实现内部信息向外部的转换。
- 核心特性
- 程序与数据同等地位:均以二进制代码存储在存储器中,计算机硬件不做区分。
- 程序控制自动执行:控制器按顺序从存储器中读取指令,自动完成解析、执行,无需人工干预。
- 五大部件通过数据流、指令流、控制流完成数据传输和指令执行。
- 存储与访问特性
- 存储空间:硬盘 > 内存 >> CPU 寄存器
- 访问速度:CPU 寄存器 > 内存 > 硬盘
1.2 计算机底层硬件基础(从电子开关到 ALU)
CPU 的核心功能基于基础电子元件的组合,从最底层的电子开关到算术逻辑单元(ALU),是硬件实现运算和逻辑的核心过程。
-
电子开关:以机械继电器为基础,通过 "通 / 断" 实现二进制 0/1 的表示,是所有硬件元件的基础,真空管、晶体管均是其升级形式,核心功能一致。
-
基本逻辑门电路 :由电子开关组合而成,实现 1 位二进制的基础逻辑运算,是构建复杂硬件的 "积木",核心类型及规则如下:
表格
逻辑门类型 输入数量 核心运算规则 典型真值表(TRUE=1,FALSE=0) 非门(NOT) 1 个 输入取反 输入 1→输出 0;输入 0→输出 1 与门(AND) 2 个 全 1 出 1,有 0 出 0 输入 1+1→1;其余组合→0 或门(OR) 2 个 有 1 出 1,全 0 出 0 输入 0+0→0;其余组合→1 异或门(XOR) 2 个 不同出 1,相同出 0 输入 1+0/0+1→1;1+1/0+0→0 -
算术逻辑单元(ALU)
- 核心定位:计算机的 "数学大脑",由逻辑门电路组合而成,是运算器的核心部件。
- 基础运算实现 :
- 半加器:实现2 个 1 位二进制数相加,输出 "和" 与 "进位";
- 全加器:实现3 个 1 位二进制数相加(含上一位进位),是构建多位加法器的基础;
- 8 位 / 32 位 / 64 位加法器:由多个全加器串联而成,实现多位二进制数的加法,现代计算机主流为 64 位 ALU。
- 功能范围:支持算术运算(加减乘除)和逻辑运算(与、或、非、比较、非 0 判断等),Intel 74181 是经典的 4 位 ALU 芯片。
1.3 寄存器与内存(CPU 的存储支撑)
存储部件是 CPU 执行指令的必要基础,分为CPU 内部寄存器 和外部内存(RAM) ,均为易失性存储(断电后数据丢失)。
- 寄存器
- 核心作用 :CPU 执行指令和运算时的高速临时存储单元,用于存放当前处理的指令、数据、运算结果。
- 特点:访问速度最快,存储空间极小,现代 CPU 配有几十个寄存器,按功能分为通用寄存器(A、B 寄存器等)和专用寄存器。
- 核心专用寄存器 :
- 程序计数器(PC):保存下一条要执行的指令在内存中的地址,指令执行后自动 + 1,是 CPU 执行指令顺序的关键;
- 指令寄存器(IR):保存当前正在解析和执行的指令,为控制器解码提供依据;
- 1 位寄存器构建:基于 AND-OR 锁存器 / 门锁实现,通过 "使能线" 控制数据写入,使能线置位时写入有效,否则写入无效。
- 内存(RAM,随机存取存储器)
- 核心作用:存储 CPU 即将处理的指令和数据,是 CPU 与外存之间的 "桥梁"。
- 构建原理 :由多个寄存器组合而成,通过地址线、数据线、读 / 写使能线实现数据访问,支持 O (1) 时间复杂度访问任意地址(数组下标访问的硬件基础)。
- 8 位内存基础:通过 8 位地址线指定内存地址,8 位数据线传输数据,读 / 写使能线分别控制数据的读取和写入。
1.4 指令系统(软件与硬件的接口)
指令是 CPU 能识别并执行的基本命令,是计算机完成所有操作的基础,会议与课件对指令规则、类型、执行流程做了统一规范。
-
指令基本规则
- 指令长度:固定为1 字节(8 个比特位);
- 指令结构:4 位操作码(Opcode) + 4 位操作数,操作码类似 "函数名" 表示操作类型,操作数以二进制表示,可为内存地址、寄存器 ID 等;
- 指令本质:是一个二进制数字,以与数据相同的形式存储在内存中。
-
核心指令类型及功能(含操作码) 所有指令均为课件与会议统一定义,是 CPU 执行基础数据操作的核心指令:
表格
指令名称 操作码(4 位) 核心功能 操作数说明 load b 0001 数据加载 将内存指定地址的数据加载到 b 寄存器 load a 0010 数据加载 将内存指定地址的数据加载到 a 寄存器 store a 0100 数据存储 将 a 寄存器中的数据写入内存指定地址 add 1000 数据相加 将两个指定寄存器数据相加,结果存入第二个寄存器 -
指令执行流程(CPU 指令周期) 指令执行为固定三步流程 ,由控制器驱动,是 CPU 完成所有操作的基本循环,也称为取指 - 译码 - 执行 周期:
- 读取指令(取指阶段):控制器根据 PC 寄存器的地址,从内存中读取指令,送入 IR 寄存器,随后 PC 自动 + 1 指向下一条指令;
- 解析指令(译码阶段) :控制器对照指令表,解析 IR 寄存器中的指令,识别操作码(确定操作类型)和操作数(确定操作对象);
- 执行指令(执行阶段):控制器向 ALU、寄存器、内存等部件发送控制信号,按指令定义完成具体操作(如加载、存储、相加)。
-
CPU 的组成 :ALU + 控制器(CU) + 寄存器 + 时钟,时钟为指令周期提供驱动,CPU 主频(时钟震荡次数 / 秒)近似表示每秒执行的指令数。
1.5 数据表示与进制转换
计算机内部所有信息(指令、数据)均以二进制表示,进制转换是理解底层数据的基础,会议给出了实用的转换建议。
-
核心进制类型 计算机领域常用四种进制,核心以二进制为基础,八进制、十六进制为二进制的简化表示:
表格
进制类型 基数 数字符号 核心应用场景 十进制 10 0-9 人类日常计数 二进制 2 0-1 计算机底层存储、运算 八进制 8 0-7 早期计算机简化二进制 十六进制 16 0-9、A-F 编程、硬件调试、二进制简化表示 -
进制转换核心方法
- 非十进制→十进制:位权展开法,即每一位数字 × 基数 ^ 位序(位序从右到左,从 0 开始),求和得到十进制数;
- 十进制→非十进制:除基取余法,即十进制数反复除以目标基数,记录余数,最终将余数倒序排列;
- 二进制↔八进制 / 十六进制:分组法,二进制转八进制每 3 位一组,转十六进制每 4 位一组,不足补 0,每组对应 1 位目标进制数,反向操作同理。
-
实用转换建议
- 工作场景:推荐使用计算器完成进制转换,避免手算的低效和易出错;
- 考试 / 学习场景:可根据情况灵活选择,建议掌握基础手算方法,理解转换原理。
第二部分 操作系统基础理论
2.1 操作系统的核心定义与定位
操作系统(OS)是管理计算机硬件与软件资源的软件集合 ,是用户、应用程序与计算机硬件之间的中间层接口,课件明确了其核心定位和功能。
- 系统分层视图(从上层到下层):应用程序 → 操作系统 → 处理器 / 主存 / I/O 设备
- 两大核心基本功能
- 资源管理:防止硬件资源被应用程序滥用,合理分配 CPU、内存、I/O 设备等硬件资源;
- 接口提供:向应用程序提供简单、一致的硬件控制机制,屏蔽硬件的复杂性和差异性。
- 核心管理功能:进程管理、内存管理、文件系统管理、I/O 设备管理、进程间通信管理,是操作系统实现资源调度的核心模块。
2.2 主流操作系统类型及核心特点
目前计算机领域主流操作系统分为三类,会议明确了各系统的特性、应用场景及差异,课件补充了系统分类的底层逻辑。
- Windows 系统(代表版本:Win10、Win11)
- 内核基础:基于 NT 内核,闭源商业软件;
- 操作方式:以图形化界面(GUI) 为主,操作简单、易上手,适配普通用户;
- 核心特点:软件生态丰富,兼容海量商业软件、游戏,硬件适配性广;
- 应用场景:个人桌面、企业办公、游戏娱乐等民用场景。
- Linux 系统(代表发行版:Ubuntu、CentOS、Debian)
- 内核基础:开源免费 Linux 内核,可高度定制;
- 操作方式:以命令行界面(CLI) 为核心,也支持图形化界面(GNOME、KDE),熟悉命令后操作效率远高于图形化;
- 核心特点:稳定性高、安全性强,代码层面与 Windows 不兼容(函数、头文件不同);
- 典型应用场景:
- 嵌入式设备:路由器、门禁、智能电视等(硬件配置低、功能单一,为该领域主流系统);
- 专业场景:Steam deck 掌机(游戏优化)、服务器、高性能计算、开发环境。
- macOS 系统
- 内核基础:基于 Unix 内核,闭源系统,与苹果硬件深度融合;
- 操作方式:兼具图形化界面和命令行界面,设计简洁、流畅;
- 核心特点:
- 同价位下与 Windows 电脑相比,续航能力为唯一优势;
- 应用程序审核严格,系统冗余少,长期使用不易卡顿;
- 与苹果生态(iPhone、iPad)无缝协作,专业软件适配性强(设计、音视频制作);
- 应用场景:设计师、创意工作者、苹果生态用户、专业开发场景。
2.3 操作系统核心管理概念
课件从底层原理出发,讲解了操作系统实现资源管理的核心抽象概念,是理解操作系统工作机制的关键。
- 进程(Process/Task)
- 核心定义:操作系统对正在运行的程序的抽象,是程序的一次运行过程;
- 核心定位:操作系统资源分配的基本单位,也是 CPU 调度的基本单位;
- 抽象特性:操作系统为每个进程提供 "独占系统资源" 的假象,实现多任务并发执行。
- 进程控制块(PCB)
- 核心定义:描述进程属性和状态的数据结构,是操作系统管理进程的 "依据";
- 核心内容:包含进程唯一标识(pid)、程序信息、资源分配信息、进程调度信息等;
- 管理方式:操作系统通过线性表、搜索树等数据结构组织 PCB,实现进程的增删查改。
- CPU 调度(进程调度)
- 核心方式:时间片轮转模式(单 CPU 单核),不同进程在不同时间段使用 CPU 资源;
- 核心目标:合理分配 CPU 资源,提高 CPU 利用率,实现多任务并发。
- 内存管理
- 核心方式:空间划分模式,为不同进程分配内存的不同区域,进程间相互隔离,避免干扰;
- 核心目标:合理分配内存空间,提高内存利用率,保护进程数据安全。
- 进程间通信(IPC)
- 产生原因:进程间相互隔离,但复杂业务需要多个进程协同完成,需实现信息交换;
- 主流机制:管道、共享内存、文件、网络、信号量、信号;
- 特殊机制:网络,不仅支持同主机进程通信,还支持同一网络中不同主机的进程通信。
2.4 Java 跨平台性原理(操作系统与编程语言的结合)
会议明确了 Java 跨平台的核心机制和局限性,课件从 "编程语言与硬件指令的对应关系" 补充了底层逻辑,二者形成完整理论体系。
- 跨平台核心目标:一次编写,到处运行,让 Java 程序在不同操作系统(Windows、Linux、macOS)上无需修改即可执行。
- 核心实现机制:Java 虚拟机(JVM) Java 通过多层编译 屏蔽操作系统和硬件的差异,核心流程:
- Java 源代码(.java)→ 编译器 → 与平台无关的字节码(.class);
- 不同操作系统安装对应版本的 JVM;
- JVM 将字节码解释 / 即时编译(JIT) 为当前操作系统能识别的机器码(CPU 指令),最终由 CPU 执行。
- 核心底层逻辑:JVM 封装了不同操作系统的硬件调用接口和指令集,让 Java 程序无需直接操作硬件,实现与平台的解耦。
- 局限性 :Java 的跨平台性完全依赖 JVM,若出现新的操作系统,必须为其开发配套的新 JVM,否则 Java 程序无法在该系统上运行。
2.5 编程语言与操作系统 / CPU 的对应关系
课件补充了编程语言的发展历程,解释了 "高级语言如何最终转化为 CPU 指令",是连接编程语言、操作系统、计算机硬件的关键。
- 程序的本质 :一组CPU 指令 + 指令要处理的数据,以文件形式存储。
- 编程语言发展历程(从底层到高层) 发展核心为屏蔽硬件细节、提升编程效率 ,各层语言一一对应,逐层编译:
- 机器语言:纯二进制 0/1 的 CPU 指令,直接被硬件执行,门槛最高;
- 汇编语言:机器语言的 "符号化表示"(如 load a、add),与机器语言一一对应,需通过汇编器编译为机器语言;
- 高级语言(C、Java、Python):屏蔽硬件细节,贴近人类自然语言,需通过编译器 / 解释器编译为汇编语言,再转为机器语言。
- 核心特点 :高级语言的一条语句 ,通常对应多条 CPU 指令才能完成执行。