关于计算机基础知识的详细讲解(从属GESP一级内容)
💻 计算机发展简史
一、计算机的起源与理论奠基(理论阶段)
人物 | 贡献 |
查尔斯·巴贝奇 | 被称为“计算机之父”,设计了差分机与分析机,提出程序控制概念 |
艾达·洛夫莱斯 | 被称为“世界第一位程序员”,为分析机设计了程序流程 |
艾伦·图灵 | 提出“图灵机”理论,是现代可计算性理论与人工智能之父 |
🎓 图灵机是描述计算过程的理想数学模型,为后来电子计算机理论奠基。
二、电子计算机的发展历程(按照技术代际)
现代计算机的发展主要划分为五代,依据所采用的核心电子器件与功能划分:
世代 | 年代范围 | 核心技术 | 特点 | 代表 |
第一代 | 1946–1958 | 电子管 | 功耗高、体积大,编程靠打孔卡 | ENIAC(1946) |
第二代 | 1959–1964 | 晶体管 | 更可靠、小巧,开始出现高级语言 | IBM 1401 |
第三代 | 1965–1970s | 中小规模集成电路 | 引入操作系统、支持多道程序 | IBM System/360 |
第四代 | 1971–2000 | 大规模集成电路 | 出现微处理器,个人计算机普及 | Intel 4004、IBM PC |
第五代 | 21世纪至今 | 人工智能芯片 | 并行计算、深度学习、图灵测试挑战 | AlphaGo、ChatGPT、AI芯片 |
三、中国计算机发展
年份 | 事件 |
1958 | 中国第一台通用数字计算机“103机”问世 |
1973 | 山东大学研发 DJL-1 计算机 |
2016 | “神威·太湖之光”多次荣登世界超级计算机榜首23年6月一级 |
四、冯·诺依曼结构(现代计算机架构)
提出人 | 功能 |
冯·诺依曼 | 提出存储程序控制模型:指令与数据共同存储在内存中,控制器逐条执行指令 |
架构特点 | 五大部件:输入设备、输出设备、内存、运算器、控制器(CPU = 控制器 + 运算器) |
此结构已被现代绝大多数计算机采用,包括手机、PC、服务器等。
🧪 五、精选选择题(5题)
选择题 1:真题同型【ENIAC】
题目:世界上第一台通用电子计算机 ENIAC 诞生于哪一年,并属于哪一代计算机?
A. 1946年,电子管计算机 B. 1956年,晶体管计算机
C. 1946年,晶体管计算机 D. 1956年,集成电路计算机
答案:A
解析:ENIAC 于 1946 年问世,采用电子管,是第一代电子计算机24年6月一级。
选择题 2:结构理解
题目:以下关于冯·诺依曼结构的说法,正确的是:
A. 控制器用于运算处理 B. 程序和数据可以存储在输入设备中
C. 运算器用于逻辑与算术计算 D. 内存只能用于显示数据
答案:C
解析:运算器负责算术逻辑操作,控制器调度,内存是程序和数据的统一存储区。
选择题 3:人物认知
题目:提出“图灵机”并奠定现代计算理论基础的科学家是:
A. 冯·诺依曼 B. 查尔斯·巴贝奇 C. 艾伦·图灵 D. 马克思·纽曼
答案:C
解析:图灵在 1936 年提出图灵机,是计算理论基础模型。
选择题 4:中国发展史
题目:中国第一台通用数字计算机“103机”诞生于哪一年?
A. 1946 B. 1958 C. 1978 D. 1985
答案:B
解析:103机为中国第一台通用数字计算机,1958 年研制成功23年6月一级。
选择题 5:代际理解
题目:以下技术对应正确的计算机代际是:
A. 晶体管 → 第一代 B. 微处理器 → 第四代
C. 图灵机 → 第五代 D. 集成电路 → 第二代
答案:B
解析:晶体管为第二代,微处理器标志第四代,图灵机是理论模型不归入代际。
🖥️ 计算机的硬件构成
一、什么是计算机硬件?
计算机硬件是指一切有形、可触摸的物理设备,构成计算机运行的基础设施,包含处理器、存储器、输入输出设备等。
💡 类比:硬件 = “身体结构”,软件 = “灵魂和大脑活动”。
二、冯·诺依曼结构 —— 现代计算机架构基础
由冯·诺依曼在 1945 年提出,是现代计算机的基本模型,强调:
- • 程序和数据统一存储在内存中
- • 顺序执行指令
- • 核心组成:五大部件
五大核心部件详解
组成部分 | 功能简介 | 常见设备示例 |
控制器(CU) | 负责协调和控制各部件的工作流程 | CPU 控制单元 |
运算器(ALU) | 执行各种算术与逻辑运算 | CPU 算术逻辑单元 |
存储器 | 存储程序、数据和各种信号、命令等信息 | 内存储器,外存储器 |
输入设备 | 把外部信息转换为机器可识别的数据 | 键盘、鼠标、扫描仪 |
输出设备 | 把计算结果反馈给用户 | 显示器、音箱、打印机 |
✅ 控制器 + 运算器 = 中央处理器(CPU)
🛠️ 扩展:存储器
类型 | 描述 | 示例 |
ROM | 只读存储器,保存系统启动程序,断电不丢失 | BIOS芯片 |
RAM | 随机存储器,用于运行程序数据,断电即失 | DDR 内存条 |
cache | 高速缓冲存储器 |
|
外存储器 | 长期存储数据,容量大 | 硬盘、U盘、SSD、光盘 |
💡 计算机存储系统,是一种利用半导体、磁性介质等技术制成的存储资料的电子设备。是计算机用来存放所有数据和程序的记忆部件。
它的基本功能是按指定的地址存(写)入或者取(读)出信息。
计算机中的存储器可分成两大类:一类是内存储器,简称内存或主存;另一类是外存储器(辅助存储器),简称外存或辅存。
存储器由若干个存储单元组成,每个存储单元都有一个地址,计算机通过地址对存储单元进行读写。
一个存储器所包含的字节数称为存储容量,单位有B、KB、MB、GB、TB等。
三、设备分类总览表
分类 | 示例 | 特点 |
输入设备 | 键盘、鼠标、摄像头 | 把信息送入计算机 |
输出设备 | 显示器、音箱、打印机 | 把处理结果送给人类 |
存储设备 | RAM、ROM、硬盘 | 存储信息(分为内存和外存) |
控制设备 | CPU 控制器 | 负责指令调度 |
运算设备 | CPU 运算器 | 负责数据处理 |
四、RAM 与 ROM 的区别
项目 | RAM | ROM |
全称 | Random Access Memory | Read-Only Memory |
功能 | 临时存储运行数据与程序 | 永久保存启动程序等固件 |
是否可写 | 可读可写 | 通常只读,有些类型可擦写(如 EEPROM) |
是否断电失效 | 是(断电数据消失) | 否(断电数据仍在) |
举例 | 内存条、缓存 | BIOS、固件芯片 |
🧪 五、精选选择题(3题)
题目 1:设备分类 · 真题同型
题目:我们通常所说的“内存”属于计算机中的哪一部分?
A. 输出设备 B. 输入设备 C. 存储设备 D. 控制设备
答案:C
解析:内存(RAM)是临时存储程序与数据的设备,属于存储设备23年9月一级。
题目 2:RAM 与 ROM 区分
题目:下列关于 RAM 和 ROM 的描述,正确的是:
A. RAM 是永久保存程序的存储器
B. ROM 是运行程序时的临时存储区
C. RAM 通常用于临时存储运行数据,断电后数据会消失
D. ROM 是外部设备存储,例如硬盘
答案:C
解析:RAM 是运行内存,断电即失;ROM 是非易失的固件存储器24年6月一级。
题目 3:CPU 结构
题目:在冯·诺依曼结构中,CPU 包括以下哪些部分?
A. 输入设备和输出设备
B. 控制器和运算器
C. 内存和硬盘
D. 控制器和内存
答案:B
解析:CPU = 控制器(CU)+ 运算器(ALU)gesp考级大纲。
六、总结速记表
模块 | 功能关键词 |
控制器 | 指令调度、协调 |
运算器 | 逻辑运算、算术运算 |
RAM | 临时存储、断电丢失 |
ROM | 固件存储、断电不丢失 |
输入设备 | 键盘、鼠标、摄像头 |
输出设备 | 显示器、音箱、打印机 |
外部存储器 | 硬盘、U盘、SSD |
🔌 计算机的软件构成
一、什么是软件?
计算机软件是指一系列程序、文档与相关数据的集合,用于指导计算机硬件完成具体任务。
💡 软件 = “大脑的指令”,硬件 = “身体的器官”
二、软件构成的两大体系
1. 系统软件
- • 用于管理硬件资源,提供用户与硬件之间的接口
- • 是支撑整个计算机系统运行的基础
常见类型:
软件类型 | 功能 | 示例 |
操作系统(OS) | 管理内存、处理器、文件与设备资源 | Windows、Linux、macOS |
设备驱动程序 | 使硬件与操作系统通信 | 显卡驱动、打印机驱动 |
编译器/解释器 | 将高级语言翻译为机器语言 | GCC(C++)、Python解释器 |
实用程序 | 提供系统维护、监测工具 | 任务管理器、磁盘碎片整理工具 |
2. 应用软件
- • 为用户提供具体功能,如文档编辑、娱乐、开发等
- • 依赖系统软件运行
常见类型:
软件类型 | 功能 | 示例 |
办公类软件 | 文档、表格、演示文稿 | Microsoft Word、Excel、WPS |
浏览器/通信软件 | 上网、邮件、社交通信 | Chrome、QQ、微信、Outlook |
开发工具 | 程序编写与调试 | Dev-C++、VS Code、PyCharm |
娱乐类软件 | 游戏、视频、音频 | 王者荣耀、爱奇艺、网易云音乐 |
三、系统软件 vs 应用软件 对比表
对比维度 | 系统软件 | 应用软件 |
定义 | 控制和管理硬件,支撑系统运行 | 实现特定任务,供用户操作 |
是否必需 | 是(没有系统软件无法运行计算机) | 否(用户可按需安装) |
运行对象 | 控制硬件、支持软件 | 操作数据、实现功能 |
安装顺序 | 必须先装 | 基于系统软件之后可装 |
示例 | Windows、Linux、驱动程序 | Word、QQ、Dev-C++ |
四、开发工具也是软件
在 GESP 考试中常见的软件如 Dev-C++、Visual Studio Code,属于应用软件中的开发环境(IDE)类型,专为程序设计服务。
工具名 | 类型 | 功能 |
Dev-C++ | C++ IDE | 编辑、编译、运行、调试 C++ 程序 |
VS Code | 编辑器 | 支持多种语言、插件丰富 |
🧪 五、真题风格选择题(3题)
选择题 1:【软件分类】
题目:以下属于系统软件的是:
A. 微信 B. Dev-C++ C. Windows D. WPS文字
答案:C
解析:Windows 是操作系统,属于系统软件;其余为应用软件。
选择题 2:【功能对比】
题目:下列关于系统软件与应用软件的说法中,正确的是:
A. 系统软件是为普通用户使用的功能软件
B. 应用软件用于控制和管理计算机硬件
C. 应用软件依赖系统软件提供环境才能运行
D. 系统软件是安装在硬盘中的游戏软件
答案:C
解析:应用软件必须依托系统软件(如操作系统)提供的运行环境。
选择题 3:【开发环境】
题目:Dev-C++ 是一种:
A. 系统级驱动 B. 开发工具类应用软件
C. 音乐播放器 D. 操作系统补丁
答案:B
解析:Dev-C++ 是一个专门用于编写、调试 C++ 程序的集成开发环境(IDE)。
七、小结速查表
软件类别 | 典型例子 | 特点说明 |
系统软件 | Windows、Linux、BIOS驱动 | 控制系统、管理资源、支撑平台 |
应用软件 | Word、Chrome、Dev-C++ | 实现功能、用户操作、运行在系统之上 |
🖥️ 操作系统基本概念
一、什么是操作系统?
操作系统是控制和管理计算机软硬件资源的系统级软件,为应用软件提供运行平台,并为用户提供与计算机交互的接口。
💡 类比:操作系统 = “计算机的管家”,负责分配资源、安排秩序、服务用户。
二、操作系统的主要功能
功能模块 | 功能说明 |
进程管理 | 控制程序执行(调度CPU、终止进程) |
内存管理 | 控制对 RAM 的访问、分配与释放 |
文件系统管理 | 管理磁盘文件的存储、读写、权限等 |
输入输出控制 | 控制键盘、鼠标、打印机、显示器等硬件设备的交互 |
用户界面 | 提供命令行界面(CLI)或图形界面(GUI)供人机交互使用 |
三、操作系统的分类
分类依据 | 类型与描述 | 示例 |
用户界面 | 图形用户界面(GUI) / 命令行界面(CLI) | Windows(GUI)、Linux(CLI) |
使用场景 | 个人电脑操作系统 / 服务器操作系统 / 嵌入式系统 | Windows / Ubuntu Server / RTOS |
开放程度 | 开源系统 / 闭源系统 | Linux(开源)、Windows(闭源) |
四、常见操作系统举例
操作系统 | 类型 | 特点与用途 |
Windows | 图形界面,闭源 | 普及率高,用户友好,适合办公、学习与娱乐 |
Linux | 命令行 + 图形 | 开源、免费,稳定性强,广泛用于服务器、科研、开发 |
macOS | 图形界面,闭源 | Apple 专属系统,设计精美,流畅易用 |
Android | 移动操作系统 | 基于 Linux 内核,开源,广泛应用于智能手机和平板 |
iOS | 移动操作系统 | Apple 手机专属系统,封闭、安全性高 |
五、用户界面类型对比
界面类型 | 简写 | 操作方式 | 常见系统 |
图形界面 | GUI | 鼠标点击、图标 | Windows, macOS |
命令行 | CLI | 键盘输入命令 | DOS, Linux shell |
六、操作系统在编程中的作用
- • 程序的执行离不开操作系统的资源调度与支持;
- • 开发工具(如 Dev-C++)依赖操作系统提供的图形界面、内存与 I/O 管理;
- • 程序运行过程由操作系统协调 CPU、内存、输入输出设备协同完成。
🧪 七、真题风格选择题(3题)
选择题 1:基本识别
题目:以下哪一个属于操作系统?
A. 微信 B. Dev-C++ C. Windows D. WPS Office
答案:C
解析:Windows 是操作系统,其它为应用程序23年12月一级。
选择题 2:功能理解
题目:以下哪项不是操作系统的主要功能?
A. 管理 CPU 调度
B. 文件系统管理
C. 提供图形界面
D. 编写 Python 程序
答案:D
解析:Python 程序编写属于应用层功能,通常由 IDE 实现23年6月一级。
选择题 3:界面分类
题目:Linux 系统的典型用户界面方式是:
A. 图形用户界面(GUI) B. 手势识别界面
C. 语音控制界面 D. 命令行界面(CLI)
答案:D
解析:Linux 默认使用 CLI 命令终端进行操作,部分发行版提供 GUI。
八、小结速查表
模块 | 核心知识点 |
定义 | 操作系统是系统软件,管理资源,支撑程序运行 |
核心功能 | 进程、内存、文件、I/O 管理、用户界面 |
分类 | GUI vs CLI,桌面 vs 移动,开源 vs 闭源 |
常见系统 | Windows、Linux、macOS、Android、iOS |
编程关系 | 程序运行需依赖操作系统调度 CPU、内存与 I/O |
📘 GESP C++ 一级 · 综合选择题
1. 【标识符命名 · 真题】
题目:以下 C++ 不可以作为变量名的是:
A. redStar B. RedStar C. red_star D. red star
答案:D
出处:[23年9月题2]23年9月一级
2. 【运算结果 · 真题】
题目:表达式 9 / 4 - 6 % (6 - 2) * 10
的结果是:
A. -17.75 B. -18 C. -14 D. -12.75
答案:B
出处:[24年6月题7]24年6月一级
3. 【硬件原理 · 真题】
题目:ENIAC 是世界上第一台真正意义上的计算机,它主要由以下哪种元件构成?
A. 晶体管 B. 集成电路 C. 电容 D. 电子管
答案:D
出处:[24年6月题15]24年6月一级
4. 【中国发展史 · 真题】
题目:诞生于 1958 年的“103 机”是中国第一台通用数字电子计算机,比 ENIAC 晚了多少年?
A. 约 2 年 B. 约 10 年 C. 约 12 年 D. 约 15 年
答案:C
出处:[23年6月判断题2]23年6月一级
5. 【OS 判断 · 真题】
题目:Dev C++ 是一个小型操作系统。( )
A. 正确 B. 错误
答案:B
出处:[23年12月判断题9]23年12月一级
6. 【变量命名规则 · 真题】
题目:在 C++ 语言中,不可以将变量命名为:
A. student_name B. five_star C. printf D. X_3
答案:C
出处:[24年6月判断题7]24年6月一级
7. 【操作系统识别 · 真题】
题目:以下软件中属于操作系统的是:
A. 高德地图 B. 腾讯会议 C. 纯血鸿蒙 D. 金山永中
答案:C
出处:[24年12月题2]24年12月一级
8. 【设备类别 · 真题】
题目:山东大学 1973 年投入运行的 DJL-1 计算机所使用的磁心存储元件相当于现代计算机的哪部分?
A. 内存 B. 磁盘 C. CPU D. 显示器
答案:A
出处:[24年9月题1]24年9月一级
9. 【结构识别 · 真题】
题目:现代计算机所基于的体系结构是:
A. 艾伦·图灵 B. 冯·诺依曼 C. 阿塔纳索夫 D. 埃克特-莫克利
答案:B
出处:[23年12月题15]23年12月一级
10. 计算机发展简史【第一代识别】
题目:世界上第一台通用电子计算机 ENIAC 属于哪一代计算机?
A. 晶体管计算机 B. 集成电路计算机
C. 电子管计算机 D. 微处理器计算机
答案:C
解析:ENIAC 使用电子管,是第一代电子计算机。
11. 计算机发展简史【人物识别】
题目:以下哪位科学家提出了“图灵机”理论,为现代计算理论奠定基础?
A. 冯·诺依曼 B. 艾伦·图灵 C. 林纳斯·托瓦兹 D. 查尔斯·巴贝奇
答案:B
解析:图灵在 1936 年提出图灵机,定义可计算性。
12. 硬件构成【五大部件】
题目:在冯·诺依曼结构中,哪两个模块共同构成 CPU?
A. 输入设备和输出设备
B. 控制器和运算器
C. 内存和外存
D. 控制器和显示器
答案:B
解析:CPU = 控制器 + 运算器。
13. 硬件构成【设备分类】
题目:以下设备中,属于输入设备的是:
A. 显示器 B. 音箱 C. 鼠标 D. 打印机
答案:C
解析:鼠标是输入设备,其他是输出设备。
14. 软件构成【软件分类】
题目:以下哪个选项属于系统软件?
A. QQ B. Windows C. Dev-C++ D. Chrome
答案:B
解析:Windows 是操作系统,属于系统软件。
15. 软件构成【功能对比】
题目:下列说法中正确的是:
A. 系统软件是为用户提供娱乐功能的软件
B. 应用软件可脱离操作系统单独运行
C. 应用软件依赖系统软件提供的环境
D. Dev-C++ 是一种系统驱动程序
答案:C
解析:应用软件必须在操作系统提供的平台上运行。
16. 操作系统概念【功能识别】
题目:下列哪一项不是操作系统的核心功能?
A. 管理文件系统
B. 管理进程与内存
C. 控制输入输出设备
D. 播放音乐和视频
答案:D
解析:播放音乐属于应用软件功能。
17. 操作系统概念【系统识别】
题目:下列系统中,属于移动操作系统的是:
A. Windows B. macOS C. Linux D. Android
答案:D
解析:Android 是手机操作系统,基于 Linux 内核。
✅ GESP C++ 一级 · 判断题
1. 【发展简史】
ENIAC 是世界上第一台使用晶体管的电子计算机。 ( )
答案:×
解析:ENIAC 使用的是电子管,不是晶体管。
2. 【发展简史】
艾伦·图灵提出的“图灵机”模型是现代可计算性理论的基础。 ( )
答案:√
3. 【硬件构成】
内存属于计算机的输出设备。 ( )
答案:×
解析:内存(RAM)是存储设备,不是输出设备。
4. 【硬件构成】
运算器负责执行加减乘除等运算,控制器则负责调度和控制指令执行流程。 ( )
答案:√
5. 【硬件构成】
ROM 是随机存储器,断电后数据会丢失。 ( )
答案:×
解析:ROM 是只读存储器,断电不丢失数据。
6. 【软件构成】
Dev-C++ 是一个系统软件。 ( )
答案:×
解析:Dev-C++ 是应用软件中的开发工具(IDE)。
7. 【软件构成】
系统软件必须安装在计算机中,才能使应用软件正常运行。 ( )
答案:√
8. 【操作系统概念】
Windows 是一个图形用户界面(GUI)操作系统。 ( )
答案:√
9. 【操作系统概念】
在 Linux 中,用户操作主要通过图形界面完成,无法使用命令行。 ( )
答案:×
解析:Linux 以命令行为主,支持图形界面但非必须。
10. 【操作系统功能】
操作系统负责协调 CPU、内存、输入输出设备等资源的使用。 ( )
答案:√
🧩 GESP 一级 · 编程题
✅ 1. 【计算机发展简史】
📌 编程题:判断计算机所处的时代
题目描述:
输入年份 Y
,判断该年份对应的是哪一代计算机:
年份范围 | 所属时代 |
1946–1958 | 第一代计算机(电子管) |
1959–1964 | 第二代计算机(晶体管) |
1965–1970 | 第三代计算机(集成电路) |
1971–2000 | 第四代计算机(微处理器) |
2001–2025 | 第五代计算机(人工智能) |
输入:
一个整数 Y,满足 1946 ≤ Y ≤ 2025。
输出:
对应的计算机时代(如“第三代计算机”)。
参考代码:
#include <bits/stdc++.h>
using namespace std;
int main() {int Y;cin >> Y;if (Y <= 1958) cout << "第一代计算机";else if (Y <= 1964) cout << "第二代计算机";else if (Y <= 1970) cout << "第三代计算机";else if (Y <= 2000) cout << "第四代计算机";else cout << "第五代计算机";return 0;
}
✅ 2. 【计算机硬件构成】
📌 编程题:设备类型判断器
题目描述:
输入一个设备名称(如“键盘”、“显示器”、“内存”),判断它属于哪类:
类别 | 示例 |
输入设备 | 键盘、鼠标 |
输出设备 | 显示器、音箱 |
存储设备 | 内存、硬盘、U盘 |
其他 | 无法识别设备名称 |
输入:
一行字符串,表示设备名称。
输出:
所属类别(如“输入设备”)。
参考代码:
#include <bits/stdc++.h>
using namespace std;
int main() {string dev;cin >> dev;if (dev == "键盘" || dev == "鼠标") cout << "输入设备";else if (dev == "显示器" || dev == "音箱") cout << "输出设备";else if (dev == "内存" || dev == "硬盘" || dev == "U盘") cout << "存储设备";else cout << "其他";return 0;
}
✅ 3. 【计算机软件构成】
📌 编程题:软件类型识别器
题目描述:
输入一个软件名称(如“Windows”、“Word”、“Dev-C++”),判断其属于系统软件还是应用软件。
分类规则:
类型 | 示例 |
系统软件 | Windows、Linux |
应用软件 | QQ、Word、Dev-C++ |
输入:
一行字符串,表示软件名称。
输出:
所属类型(如“系统软件”),如不在示例,输出“未知软件”。
参考代码:
#include <bits/stdc++.h>
using namespace std;
int main() {string s;cin >> s;if (s == "Windows" || s == "Linux") cout << "系统软件";else if (s == "QQ" || s == "Word" || s == "Dev-C++") cout << "应用软件";else cout << "未知软件";return 0;
}
✅ 4. 【操作系统基本概念】
📌 编程题:操作系统平台判断
题目描述:
根据输入的操作系统名称,判断它属于哪种平台:
系统名称 | 分类 |
Windows | 桌面系统 |
Linux | 桌面/服务器系统 |
Android/iOS | 移动系统 |
输入:
一个字符串,操作系统名称(如 "Linux")
输出:
所属平台类别(如“移动操作系统”)
参考代码:
#include <bits/stdc++.h>
using namespace std;
int main() {string os;cin >> os;if (os == "Windows" || os == "Linux" || os == "macOS")cout << "桌面操作系统";else if (os == "Android" || os == "iOS")cout << "移动操作系统";else cout << "未知系统";return 0;
}