跳到正文

1.0 你好,我是计算机组成原理

35 分钟

组成原理学什么:追踪一条指令穿过硬件

同学,写程序时我们看到变量、循环和函数;硬件真正看到的是二进制指令、地址和电信号。今天先解决组成原理的第一个困难:把这两个视角接起来,说明一行程序如何被取到 CPU,怎样运算,又如何读写存储器和外设。

整门课可以沿一条主线学习。数据先要有机器表示,包括补码和浮点数;指令规定操作码与操作数在哪里;CPU 通过数据通路和控制信号完成取指、译码、执行;主存、Cache 与虚拟存储决定数据多快到达;总线、中断和 DMA 让外设参与系统。这条“数据在哪里、谁控制、下一状态是什么”的状态链,就是后续判断的共同依据。

陪做一个宏观追踪。程序要计算 c=a+b:编译器把它变成若干机器指令;PC 指向下一条指令地址;CPU 从存储系统取指并送入指令寄存器;控制器识别操作码,寄存器或内存提供两个操作数;运算器执行加法并设置状态信息;结果写回寄存器或存储器。这里每一步都回答三件事:数据在哪里、谁发出控制、下一状态是什么。

为什么性能不能只看 CPU 主频?若操作数频繁在慢速存储层等待,或者一条指令需要更多时钟周期,主频高也不保证程序更快。后续会用

把软件、体系结构和硬件三个因素连起来。

针对性错解:把组成原理理解成硬件型号百科,会失去稳定知识;把 CPU 等同于整台计算机,会漏掉存储和 I/O;只背部件名称而不能画出指令和数据流,也无法解决综合题。

迁移任务:任选一条“从键盘读入整数并加一后显示”的路径,列出输入设备、I/O 接口、存储器、CPU、输出设备的先后作用。参考答案应说明中断或查询通知、数据进入寄存器/内存、CPU 运算、结果经接口送显示设备。独立验收是能不看图讲完一条指令周期的数据流和控制流。下一课先理解存储程序思想为什么改变了计算机。

小纸条

不看正文,完成“1.0 你好,我是计算机组成原理”中的独立验收任务。

登录 后可看答案

Practice

本课练习

0

先独立作答再提交;编程题会在隔离沙箱中真实编译、运行并对拍。

本课练习正在补齐,暂不应标记为完成。