系统概述

机器字长、指令字长、存储字长

32位、64位指的是机器字长,是指计算机进行一次整数运算所能处理的二进制数据的个数,它决定了计算机的运算精度。

指令字长是指一个指令字中所包含的二进制代码的位数。

主存储器由许多存储单元组成,每个存储单元包含若干存储元件,每个存储元件存储一位二进制代码“0”或“1”。因此存储单元可以存储一串二进制代码,称这串代码为存储字,称这串代码的位数为存储字长。

单指令流单数据流(英文:Single instruction, Single data,缩写:SISD),每个指令部件每次仅译码一条指令,而且在执行时仅为操作部件提供一份数据。即传统的冯·诺依曼体系结构。

(冯·诺依曼体系)指令和数据以同等地位存储在存储器中,并可按地址寻访。

“存储程序”的思想奠基了现代计算机的基本结构。“存储程序”的概念是指将指令以代码的形式事先输入计算机的主存储器,然后按其在存储器中的首地址执行程序的第一条指令以后就按该程序的规定顺序执行其他指令,直至程序执行结束。(即,将想让计算机执行的一系列指令,先一口气全部放入主存里,然后再让计算机一条条地执行指令)。

计算机唯一能识别的数据是“0”和“1”,通过两种不同的电信号,即低电平(0)和高电平(1)来实现的。即,通过电信号传递数据。计算机在进行数字计算的时候,本质上就是在处理一些电信号,而逻辑元件就是计算机用来处理这些电信号的最小基本单元。每个二进制数位称为1bit。

计算机的工作原理

MQ 存储乘法运算结果的低位。

PC 的内容通过地址总线传到MAR。


联想到操作系统的内存管理部分

编译 由编译程序将用户源代码编译成若干目标模块。

链接 由链接程序将编译后形成的一组目标模块及所需的库函数链接在一起,形成一个完整的装入模块。

运行时动态链接 对某些目标模块的链接,是在程序执行中需要该目标模块时才进行的。

动态运行时装入 装入程序把装入模块装入内存中后,并不立即把装入模块中的相对地址转换为绝对地址,而是把这种地址转换推迟到程序真正要执行时才进行。


CPU 是根据指令周期的不同阶段来区分指令和数据的。

汇编程序也是一种语言翻译程序,它把汇编语言源程序翻译为机器语言程序。汇编语言是一种面向机器的低级语言,是机器语言的符号表示,与机器语言一一对应。

将高级语言源程序转换为机器级目标代码文件的程序是编译程序。

MAR 的位数表示为 X,最多可以表示2的 X 次幂个地址,而每个存储单元对应于一个地址,那么就对应于2的 X 次幂个存储单元(最多)。

MDR 的位数 = 存储字长 = 每个存储单元的大小。

B ~ 8个二进制位

b ~ 1个二进制位

CPU 主频:协调 CPU 内部所有部件协调工作的“节奏”。若 CPU 的主频为10 Hz,则代表每秒钟有10个脉冲信号。

错题更正

CPI 是执行一条指令所需要的时钟周期数,系统结构、指令集、计算机组织都会影响CPI,而时钟频率并不会影响CPI,但可以加快指令的执行速度。例如,执行一条指令需要10个时钟周期,则一台主频为1GHz的CPU,执行这条指令要比一台主频为100MHz的CPU快。

提高 CPU 主频、扩大主存容量对性能的提升是有限度的。采用并行技术是实现高性能计算的重要途径,现今超级计算机均采用多处理器来增强并行处理能力。

兼容是指计算机软件或者硬件的兼容性。

数据运算

在计算机中,整数和小数不一样,整数可以连续表示,但小数是离散的。并不是每个十进制小数都可以用二进制表示,但是任意一个二进制小数都可以用十进制表示。

联想到计算机网络的差错控制部分

奇偶校验只能发现数据代码中奇数位的出错情况,但不能纠正错误,常用于对存储器数据的检查传输数据的检查。

海明码实际上是一种多重奇偶校验码。

逻辑移位