计算机组成入门

发布时间:2026/10/6 14:16:45

计算机组成入门 一、计算机系统概述1.1 冯·诺依曼体系结构存储程序指令和数据以二进制形式存放在存储器中顺序执行程序按顺序执行由控制器控制五大部件运算器、控制器、存储器、输入设备、输出设备1.2 计算机层次结构text高级语言 → 汇编语言 → 机器语言 → 微指令 → 硬件执行 用户层 → 系统软件层 → 硬件层二、CPU中央处理器2.1 运算器ALU - 算术逻辑单元功能执行所有算术运算和逻辑运算运算类型具体内容算术运算加、减、乘、除、自增、自减逻辑运算与、或、非、异或、移位比较运算大于、小于、等于、不等于位运算位与、位或、位异或、位取反组成部件累加器ACC暂存运算中间结果状态寄存器PSW存放运算状态标志进位、溢出、零标志等通用寄存器组暂存操作数和结果2.2 控制器功能从内存取指令、译码、产生控制信号工作流程取指-译码-执行周期text取指令 → 指令译码 → 取操作数 → 执行指令 → 写回结果核心部件部件英文功能程序计数器PC存放下一条指令地址指令寄存器IR存放当前正在执行的指令指令译码器ID将指令翻译成控制信号时序发生器-产生节拍脉冲和时序信号2.3 CPU的性能指标主频CPU时钟频率GHz决定每秒执行周期数IPC每周期执行的指令数CPI每条指令平均时钟周期数MIPS每秒百万条指令FLOPS每秒浮点运算次数三、存储器系统3.1 存储层次结构金字塔text速度↑ 容量↓ 价格↑ ┌─────────────┐ │ 寄存器 │ 1ns, 几十字节 ├─────────────┤ │ L1 Cache │ ~1ns, 几十KB ├─────────────┤ │ L2 Cache │ ~5ns, 几百KB-几MB ├─────────────┤ │ L3 Cache │ ~15ns, 几MB-几十MB ├─────────────┤ │ 主存RAM │ ~100ns, 8GB-128GB ├─────────────┤ │ 辅存SSD/HDD)│ 几ms, 几百GB-TB └─────────────┘3.2 内存主存/RAM功能存放CPU当前正在执行的程序和数据分类类型特点用途DRAM需要刷新容量大主内存SRAM速度快不需刷新贵CacheROM只读掉电不丢失BIOS固件Flash可擦写非易失U盘、SSD内存管理技术地址映射逻辑地址→物理地址分页/分段存储管理虚拟内存使用硬盘作为扩展内存3.3 Cache高速缓存功能缓解CPU与主存速度差异核心概念概念说明命中率访问Cache成功的比例映射方式直接映射、全相联映射、组相联映射替换算法LRU、FIFO、随机、LFU写策略写直达、写回、写分配局部性原理时间局部性刚访问的数据可能再次访问空间局部性访问某地址后相邻地址可能被访问四、总线系统4.1 总线定义功能连接计算机各部件进行数据传输和控制的公共通道4.2 总线分类分类方式类型说明按功能数据总线传输数据宽度决定一次传多少位地址总线传输地址宽度决定可寻址范围控制总线传输控制信号读/写/中断等按位置内部总线CPU内部连接寄存器、ALU系统总线连接CPU、内存、I/O外部总线连接外设USB、PCIe、SATA4.3 总线性能参数总线宽度同时传输的数据位数如64位总线频率每秒传输次数MHz带宽 宽度 × 频率如64位×100MHz 800MB/s吞吐量实际有效传输速率4.4 常见总线标准PCI/PCIe显卡、网卡扩展总线USB通用串行总线连接外设SATA硬盘接口总线DMICPU与芯片组互联五、输入/输出系统I/O5.1 I/O设备分类类别示例功能输入设备键盘、鼠标、扫描仪、麦克风将外部信息输入计算机输出设备显示器、打印机、音响将计算机结果输出给用户存储设备硬盘、SSD、U盘、光盘长期保存数据通信设备网卡、Modem、蓝牙与其他设备通信5.2 I/O控制方式方式特点CPU参与度程序查询CPU循环检查设备状态高浪费CPU中断驱动设备完成时通知CPU中DMA直接存储器存取设备直接和内存交换数据低仅开始和结束通道控制专门处理器管理I/O很低5.3 中断系统功能CPU处理突发事件提高系统响应速度中断处理流程text设备发出中断请求 → CPU判断优先级 → 保存现场 → 执行中断服务程序 → 恢复现场 → 返回原程序中断类型硬件中断外部设备中断软件中断系统调用、异常时钟中断时间片切换六、指令系统6.1 指令格式text[操作码] [操作数地址]字段功能操作码OP指示做什么操作加、减、跳转等地址码指示操作数在哪里寄存器、内存、立即数6.2 寻址方式方式说明示例立即寻址操作数直接在指令中MOV R1, #5寄存器寻址操作数在寄存器中ADD R1, R2直接寻址操作数在内存指定地址LOAD R1, 1000间接寻址地址中存的是操作数地址LOAD R1, (1000)变址寻址基址偏移量LOAD R1, 100(R2)相对寻址PC 偏移量JMP 106.3 指令分类数据传送指令MOV、LOAD、STORE算术运算指令ADD、SUB、MUL、DIV逻辑运算指令AND、OR、XOR、NOT转移指令JMP、JZ、CALL、RETI/O指令IN、OUT6.4 CISC vs RISC对比项CISCRISC指令数量多几百条少几十条指令长度可变固定寻址方式多少执行速度较慢较快代表x86ARM、RISC-V七、存储与数据表示7.1 数据单位单位大小位bit0或1最小单位字节Byte8 bits字Word16 bits2字节双字DWord32 bits4字节四字QWord64 bits8字节7.2 数据表示类型表示方法整数原码、反码、补码补码最常用浮点数IEEE 754标准符号位指数尾数字符ASCII1字节、Unicode2-4字节BCD码十进制数的二进制编码7.3 补码表示重点正数原码 反码 补码负数原码符号位为1反码按位取反补码反码1好处减法可转换为加法简化硬件设计范围n位补码表示 -2^(n-1) 到 2^(n-1)-1八、流水线与并行处理8.1 指令流水线功能将指令执行分成多个阶段并行处理经典5级流水线text取指(F) → 译码(D) → 执行(E) → 访存(M) → 写回(W)流水线冒险冒险类型原因解决方法结构冒险硬件资源冲突增加硬件、分时使用数据冒险数据依赖关系转发、旁路、停顿控制冒险分支转移分支预测、延迟转移8.2 并行技术级别技术说明指令级超标量每个周期发射多条指令VLIW超长指令字编译器安排并行线程级多线程同时运行多个线程多核多个CPU核心并行系统级多处理器多个CPU芯片集群多台计算机九、常见名词速查表术语全称中文功能CPUCentral Processing Unit中央处理器执行指令、处理数据RAMRandom Access Memory随机存取存储器临时存储程序数据ROMRead-Only Memory只读存储器存储固件Cache-高速缓存加速数据访问ALUArithmetic Logic Unit算术逻辑单元执行运算CUControl Unit控制单元产生控制信号PCProgram Counter程序计数器指向下条指令IRInstruction Register指令寄存器存放当前指令DMADirect Memory Access直接存储器存取不经过CPU传输数据MMUMemory Management Unit内存管理单元虚拟地址转换
延伸阅读

更多相关文章

2026/10/5 9:21:18

代码题解生成:输出异常时走确定性的回退路径

代码题解生成:输出异常时走确定性的回退路径 题解生成服务要区分两件事:判题和解释。编译、测试、超时等结论应来自隔离执行环境;模型负责基于这些结果组织说明。模型超时、返回空内容或格式不合规时,服务应降低为可用的基础反馈&…

2026/10/5 3:44:28

Java 微服务拆分:先识别最容易失控的调用链

Java 微服务拆分:先识别最容易失控的调用链本文用可复现的示例场景说明排查和设计方法;阈值、容量与超时设置需要结合实际流量、依赖版本和压测结果确认,不能直接照搬。把一个运行了多年的单体 Java 应用拆分成微服务,最忌讳的就是…

2026/10/4 7:22:50

MySQL索引深度解析:B+树与Hash索引的性能对比与实战选型

1. 项目概述:一场关于数据库性能的底层较量在数据库的世界里,性能之争往往始于最基础的索引选择。当你的应用从几百条数据的玩具项目,成长为日处理百万级事务的生产系统时,一个简单的WHERE子句查询,是瞬间返回结果还是…

2026/10/6 14:14:15

功放音箱线连接全攻略:从阻抗、极性到接头选型的底层逻辑

1. 连接前必须搞懂的几件事:线材、阻抗与信号的底层逻辑玩功放这件事,很多人一开始就纠结“换什么线”“买什么头”,结果喇叭端子松了、正负极反了,还在那儿怀疑功放推力不行,最后把好端端一套系统玩成玄学。我做这行十…

2026/10/6 14:14:15

LeetCode 208:手写Trie前缀树,搞定搜索联想与自动补全核心逻辑

面试场上被问到“你项目里的搜索联想是怎么做的”,很多人的第一反应是拉倒排索引。其实在数据规模不大、只想快速支持前缀匹配的场景里,一棵前缀树Trie往往更直接。LeetCode 208这道题——实现Trie(前缀树),常年霸占热…

2026/10/6 14:14:15

Spring Boot高校心理咨询管理系统设计与实现全解析

高校大学生心理咨询管理系统这种题目,在Java Spring Boot的课设和毕设里属于热度很高的类型。它不像电商、博客那些项目那么烂大街,业务逻辑又足够完整:有角色、有预约、有测评、有档案,前后端能串成一条清晰的主线。拿来做毕设、…

2026/10/6 14:14:15

Trie树核心原理与实现:从LeetCode 208到前缀匹配应用

1. 项目概述与思路拆解1.1 一个看起来简单却暗藏玄机的题目你有没有想过,为什么搜索引擎输入几个字符就能立刻给出完整的建议词?手机通讯录里输入“zhang”就能把所有姓张的联系人拉出来?这些体验背后都站着一个经典的数据结构——Trie树&…

2026/10/6 14:14:15

高校心理咨询管理系统设计与Spring Boot实现:从预约到测评全解析

如果你正在准备Java方向的毕业设计,大概率会碰到这类题目:高校大学生心理咨询管理系统。我第一次拿到这套题目时,觉得“又是一个CRUD项目”,但真正把基于Spring Boot的源码完整跑通、拆完模块之后,我发现它比想象中更值…

2026/10/6 14:09:15

Claude Code营销技能模块化:SEO、CRO与Analytics自动化实战

1. 从“marketingskills”说起:一个被低估的增长工具箱 第一次看到“marketingskills”这个词,很多人会以为它只是一个营销技巧的合集,或者某个培训课程的代号。但如果你最近在关注 Claude Code、AI agents 以及自动化工作流这些方向&#xf…

2026/10/5 6:32:56

Jev+Agent接管浏览器:browser-use实战与jev-ultrafast性能优化

1. 从“Jev”说起:为什么我要把Agent接进浏览器“Jev”这个词最近在圈子里出现的频率越来越高,很多人第一次听到会以为是某个新模型的名字,其实它更像是一种思路——把Jev模型的能力当作底座,通过Agent的方式去接管浏览器&#xf…

2026/10/6 4:01:51

多智能体集群实战:DeepAgents编排、MCP与A2A协议及Skills体系

1. 从"单兵作战"到"集群协同":多智能体编排到底在解决什么问题如果你最近在折腾 Agent 相关的东西,大概率会有一种感觉:单个 Agent 能做的事情,其实很快就摸到天花板了。你给它一个提示词,挂几个工…

2026/10/5 17:38:27

无源低通滤波器设计实战:从RC到LC,手把手教你避开那些坑

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/6 0:03:23

MR25H40CDF+STM32F031C6工业级高可靠数据存储方案

1. 项目概述:为什么在工业现场非得用 MR25H40CDF 配 STM32F031C6 做数据存储?在工厂产线的 PLC 控制柜里、在风电变流器的散热片背面、在矿井监测终端的金属外壳下,你经常能看到一块指甲盖大小的黑色芯片——它既不是 Flash,也不是…

2026/10/6 0:03:23

MRAM+STM32工业断电数据保全实战指南

1. 项目概述:为什么在工业现场非得用 MR25H40CDF 配 STM32F031C6 做数据存储?在工厂产线的PLC柜里、在野外无人值守的环境监测终端里、在高速运转的包装机控制板上,你经常能看到一块指甲盖大小的黑色芯片,旁边贴着“MR25H40CDF”丝…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑