累加器

编辑
本词条由“匿名用户” 建档。

在计算机的中央处理器(CPU)中,累加器是一个寄存器,其中存储中间算术逻辑单元的结果。 如果没有像累加器这样的寄存器,就必须将每次计算(加法、乘法、移位等)的结果写入主存储器,也许只能再次读回以用于下一次运算。 访问主内存比访问像累加器这样的寄存器要慢,因为用于大型主内存的技术比用于寄存器的技术更慢(但更便宜)。早期的电子计算机系统通常分为两组,一组有蓄电池,另一组没有。 现代计算机系统通常有多个...

累加器

编辑

计算机中央处理器 (CPU) 中,累加器是一个寄存器,其中存储中间算术逻辑单元的结果。

如果没有像累加器这样的寄存器,就必须将每次计算(加法、乘法、移位等)的结果写入主存储器,也许只能再次读回以用于下一次运算。

访问主内存比访问像累加器这样的寄存器要慢,因为用于大型主内存的技术比用于寄存器的技术更慢(但更便宜)。 早期的电子计算机系统通常分为两组,一组有蓄电池,另一组没有。

现代计算机系统通常有多个可以用作累加器的通用寄存器,这个术语不再像以前那样普遍。 然而,为了简化它们的设计,许多专用处理器仍然使用单个累加器。

基本概念

编辑

数xxx算通常以逐步方式进行,使用一个运算的结果作为下一个运算的输入。 例如,人工计算工人的每周工资可能类似于:

  • 从员工的考勤卡上查找工作小时数
  • 从表中查找该员工的工资率
  • 用工时乘以工资率得到他们的基本周薪
  • 将他们的基本工资乘以固定百分比以计算所得税
  • 从他们的基本工资中减去该数字以获得税后每周工资
  • 将该结果乘以另一个固定百分比以计算退休计划
  • 从他们的基本工资中减去这个数字,得到所有扣除后的周薪

执行相同任务的计算机程序将遵循相同的基本操作顺序,尽管所查找的值将全部存储在计算机内存中。 在早期的计算机中,小时数可能会保存在打孔卡上,而工资率可能会保存在其他形式的内存中,比如磁鼓。 乘法完成后,需要将结果放在某个地方。 在鼓机上,这可能会回到鼓上,这是一个需要花费大量时间的操作。 然后下一个操作必须读回该值,这又引入了另一个相当大的延迟。

累加器通过提供暂存器区域显着提高此类系统的性能,在该暂存器区域中,可以将一个操作的结果馈送到下一个操作,而几乎没有或没有性能损失。 在上面的示例中,将计算基本每周工资并将其放入累加器中,然后可以立即将其用于所得税计算。 这从序列中删除了一次保存和一次读取操作,这些操作通常花费的时间是乘法本身的数十到数百倍。

蓄能机

编辑

累加器机,也称为单操作数机,或具有基于累加器架构的 CPU,是一种 CPU,尽管它可能有多个寄存器,但 CPU 主要将计算结果存储在一个特殊寄存器中,通常称为 蓄能器。 几乎所有早期的计算机都是累加器机器,只有高性能的超级计算机才具有多个寄存器。 然后,随着大型机系统让位给微型计算机,累加器架构再次流行起来,MOS 6502 就是一个显着的例子。 许多到 2014 年仍然流行的 8 位微控制器,例如 PICmicro 和 8051,都是基于累加器的机器。

现代 CPU 通常是 2 操作数或 3 操作数机器。 附加操作数指定将众多通用寄存器(也称为通用累加器)中的哪一个用作计算的源和目标。 这些 CPU 不被视为累加器机器。

将一个寄存器区分为计算机体系结构的累加器的特征是累加器(如果体系结构有一个)将用作算术指令的隐式操作数。 例如,CPU 可能有这样的指令:ADD memaddress 将从内存位置 memaddress 读取的值与累加器中的值相加,将结果放回累加器中。

累加器

累加器在指令中未通过寄存器号标识; 它隐含在指令中,不能在指令中指定其他寄存器。 某些体系结构在某些指令中使用特定的寄存器作为累加器,但其他指令使用寄存器编号来明确操作数规范。

计算机累加器的历史

编辑

任何使用单个内存存储多个操作结果的系统都可以被视为累加器。

内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/195823/

(2)
词条目录
  1. 累加器
  2. 基本概念
  3. 蓄能机
  4. 计算机累加器的历史

轻触这里

关闭目录

目录