计算机系统概述(王道计算机组成原理) 什么是计算机系统硬件软件软件系统软件用来管理整个计算机系统操作系统数据库管理系统DBMS标准数据库网络软件语言处理系统服务程序应用软件按任务需要编制成的各种程序微信qq。。。。。硬件逻辑元件内存外存电子管磁鼓穿孔卡片用机器语言编程晶体管磁芯存储器磁带出现面向过程的编程语言FORTRAN中小规模集成电路半导体存储器磁带 磁盘高级语言迅速发展大规模超大规模集成电路半导体存储器磁带 磁盘 光盘 半导体PC萌芽微处理器CPU操作系统windowsMacOSLinux计算机硬件的基本组成冯诺依曼机输入设备 → 存储器 → 运算器 ↔ 存储器 → 输出设备控制器全程统一调度所有硬件运算器负责算术运算加减乘除、逻辑运算与或非、比较。控制器指挥协调计算机所有部件工作取指令、解析指令、发出控制信号。运算器 控制器 合称为CPU中央处理器存储器核心思想程序和数据同等存放在存储器中冯诺依曼核心输入设备向计算机送入信息键盘、鼠标、扫描仪等。输出设备向外输出处理结果显示器、打印机等。存储器主存储器存储体MAR用于暂时存放地址- MAR位数反映存储单元的个数MDR用于暂时存入内存或从内存取出的数据- MDR位数 存储字长MAR和MDR逻辑上属于主存实际上被集成在CPU中。易混淆- 1个字节Byte 8bit- 1个字word取决于计算机的架构辅助存储器硬盘光盘磁带名词解释存储单元每个存储单元存放一串二进制代码每个地址对应一个存储单元存储字(word)存储单元中的二进制代码组合存储字长存储单元中二进制代码的位数存储元即存储二进制的电子元件每个存储元可存储1bit一个电容代表一个比特位运算器ACC(Accumulater):累加器用于存放操作数或运算结果MQ(Multiple-Quotient Register)乘商寄存器在乘除运算时用于存放操作数或运算结果X通用的操作数寄存器用于存放操作数ALU(Arithmetic and Logic Unit)算数逻辑单元通过内部复杂的电路实现算术运算逻辑运算制造成本最高控制器PC(Program Counter)程序计数器存放下一条指令的地址有自动1的功能取指令IR(Instruction Register)指令寄存器存放当前执行的指令分析指令CUControl Unit)控制单元分析指令给出控制信号执行指令运行过程概述inta2,b3,c1,y0;voidmain(){ya*bC;}将高级语言程序编译后装入主存存放在存储体中初始取指令CPU控制器PC 0指向第一条指令的存储地址(PC)–MAR,导致MAR0M(MAR)–MDR,导致MDR地址0的数据(MDR)–IR,导致IR 地址0的数据分析指令OP(IR)–CU指令的操作码送到CUCU分析后得知这是”取数”指令Ad(IR)–MAR,指令的地址码送到MAR导致(MAR)5执行取数指令M(MAR)–MDR,导致(MDR)2(MDR)–ACC,导致(ACC)2,完成“取数”指令PC1,此时(ACC)2,下一条指令取指令(PC)–MAR,导致MAR1M(MAR)–MDR,导致MDR地址1的数据(MDR)–IR,导致IR 地址1的数据分析指令OP(IR)–CU指令的操作码送到CUCU分析后得知这是“乘法”指令Ad(IR)–MAR,指令的地址码送到MAR导致(MAR)6执行乘法指令M(MAR)–MDR,导致(MDR)3(MDR)–MQ,导致(MQ)3,完成“取数”指令(ACC)–X,导致(X)2(MQ)*(X)–ACC,由ALU实现乘法运算导致(ACC)6,如果乘积太大则需要MQ辅助存储PC2,执行下一条指令取指令(PC)–MAR,导致MAR 2M(MAR)–MDR,导致MDR 地址2的数据(MDR)–IR,导致IR 地址2的数据分析指令OP(IR)–CU指令的操作码送到CUCU分析后得知这是“加法”指令Ad(IR)–MAR,指令的地址码送到MAR导致(MAR)7执行加法指令M(MAR)–MDR,导致(MDR)1(MDR)–X,导致(X)1(ACC)(X)–ACC,导致(ACC)7,由ALU实现加法运算PC3,执行下一条指令取指令(PC)–MAR,导致MAR 3M(MAR)–MDR,导致MDR 地址3的数据(MDR)–IR,导致IR 地址3的数据分析指令Op(IR)–CU指令的操作码送到CUCU分析后得知这是**“存数”**指令Ad(IR)–MAR,指令的地址码送到MAR导致(MAR)8执行存数指令(ACC)–MDR,导致(MDR)7(MDR)–M(MAR),导致y7PC4,停机指令取指令(PC)–MAR,导致MAR 4M(MAR)–MDR,导致MDR 地址4的数据(MDR)–IR,导致IR 地址4的数据分析指令Op(IR)–CU指令的操作码送到CUCU分析后得知这是**“停机”**指令执行指令利用中断机制通知操作系统终止该进程总结可以看出不同指令取指令和分析指令的阶段大相径庭执行指令的阶段则有很大区别通过区分指令周期的不同阶段CPU可以区分取出的是指令还是数据。

相关新闻

最新新闻

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现 【免费下载链接】serenity The Serenity Operating System 🐞 项目地址: https://gitcode.com/GitHub_Trending/se/serenity 导读 本文以 getopt(3) 手册 为核心&a…

2026/9/25 12:45:43
轻量服务器还是ECS?大促云服务器选购与避坑实战指南

轻量服务器还是ECS?大促云服务器选购与避坑实战指南

每年大促节点,群里永远有人在问同一个问题:“38元的轻量服务器到底怎么抢?为什么我每次点进去都是已售罄?68元直购和99元的ECS我到底选哪个?”作为一个常年帮团队和自己采购云服务器的老用户,我太清楚这种纠…

2026/9/24 14:25:52
为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南

为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南

为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南 【免费下载链接】agents Multi-harness agentic plugin marketplace for Claude Code, Codex, Cursor, OpenCode, GitHub Copilot, and Google Antigravity 项目地址:…

2026/9/26 3:42:08
PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署

PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署

PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署 【免费下载链接】PaddleOCR Turn any PDF or image document into structured data for your AI. A powerful, lightweight OCR toolkit that bridges the gap between i…

2026/9/23 8:01:38
Spring源码解析:构造器注入的类型转换与候选匹配机制

Spring源码解析:构造器注入的类型转换与候选匹配机制

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

2026/9/26 4:08:27
openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由

openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由

openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由 【免费下载链接】openai-agents-python A lightweight, powerful framework for multi-agent workflows 项目地址: https://gitcode.com/GitHub_Trending/op/openai-agents-pyth…

2026/9/25 15:49:36

日新闻

周新闻