组成原理漫游

概念

  • CPU:Central Processing Unit,中央处理机(器),是计算机硬件的核心部件,主要由运算器和控制器组成。

  • PC:Program Counter,程序计数器,其功能是存放当前欲执行指令的地址,并可自动计数形成下一条指令地址。

  • IR:Instruction Register,指令寄存器,其功能是存放当前正在执行的指令。

  • CU:Control Unit,控制单元(部件),为控制器的核心部件,其功能是产生微操作命令序列。

  • ALU:Arithmetic Logic Unit,算术逻辑运算单元,为运算器的核心部件,其功能是进行算术、逻辑运算。

  • ACC:Accumulator,累加器,是运算器中既能存放运算前的操作数,又能存放运算结果的寄存器。

  • MQ:Multiplier-Quotient Register,乘商寄存器,乘法运算时存放乘数、除法时存放商的寄存器。

  • X:此字母没有专指的缩写含义,可以用作任一部件名,在此表示操作数寄存器,即运算器中工作寄存器之一,用来存放操作数。

  • MAR:Memory Address Register,存储器地址寄存器,在主存中用来存放欲访问的存储单元的地址。

  • MDR:Memory Data Register,存储器数据缓冲寄存器,在主存中用来存放从某单元读出、或要写入某存储单元的数据。

  • I/O:Input/Output equipment,输入/输出设备,为输入设备和输出设备的总称,用于计算机内部和外界信息的转换与传送。

  • MIPS:Million Instruction Per Second,每秒执行百万条指令数,为计算机运算速度指标的一种计量单位。


指令和数据都存于存储器中,计算机如何区分它们?

计算机区分指令和数据有以下2种方法:

  1. 通过不同的时间段来区分指令和数据:即在取指令阶段(或取指微程序)取出的为指令,在执行指令阶段(或相应微程序)取出的即为数据。
  2. 通过地址来源区分:由PC提供存储单元地址的取出的是指令,由指令地址码部分提供存储单元地址的取出的是操作数。

二进制数和十进制数

二进制 十进制
1 1
10 2
100 4
1000 8
11000 16+8

可以看到,有几个0,就表示 2的几次方


移位计算

左移一位,相当于乘了 2, 右移一位,相当于近似除以 2。

用最有效率的方法算出 2 乘以 8 等於几

2 << 3,因为 将一个数左移 n 位,就相当于乘以了 2 的 n 次方,那么,一个数乘以 8 只要将其左移 3 位即可,而位运算 cpu 直接支持的,效率最高,所以,2 乘以 8 等於几最效率的方法是 2 << 3 。