# 计数器

库： | 存储器 |
引入版本： | 2.3.0
外观： |

## 行为

计数器保存一个单一数值，并通过输出端 Q 输出。 该数值在时钟触发（南侧的三角形）时更新， 更新方式取决于 Load、Enable(ct) 和 Up Down (UD) 输入信号。

Load | Enable(ct) | Up Down (UD) | 触发时的动作
--- | --- | --- | ---
0 或 Z | 0 | X | 计数器保持不变
0 或 Z | 1 或 Z | 1 或 Z | 计数器递增
0 或 Z | 1 或 Z | 0 | 计数器递减
1 | X | X | 计数器加载 D 输入端的数值

Reset 输入（南侧，标记为 R 或 0）用于异步地将计数器值重置为 0。 只要 Reset 为 1，计数器的值就会被置为 0，与时钟或其他输入无关。

## 引脚

以下引脚说明同时适用于 经典 和 Logisim-evolution 外观。 注意：Logisim-evolution 外观使用的是标准 IEC/IEEE 符号表示法。

东侧，标记为 Q（输出，位宽与数据位宽属性一致）
  输出计数器当前存储的数值。
东侧，下方引脚（输出，位宽为 1）
  进位（Logisim-evolution 外观中标记为 3CT=MAX 或 4CT=0）： 当计数器向上计数且等于最大值时，或向下技术且等于 0 时，该输出为 1。 Load 和 Enable(ct) 输入不会直接影响该输出。
西侧，上方引脚（输入，位宽 1）
  Load (Logisim-evolution 外观中标记为 M1)： 当该输入为 1 时，无论 Enable(ct) 输入为何值， 计数器会在下一次时钟触发时加载 D 输入端的值。
西侧，中间引脚，标记为 D（输入，位宽与数据位宽属性一致）
  数据：当 Load 有效时要加载的输入值。
西侧，下方引脚，标记为 ct（输入，位宽 1）
  Enable(ct)（Logisim-evolution 外观中标记为 G5）： 当该输入为 1 或未连接时，只要 Load 为 0， 计数器将在时钟触发时递增或递减。
北侧，标记为 UD（输入，位宽 1）
  向上/向下（Logisim-evolution 外观中标记为 M3/M4）： 当为 1 或 Z 时，计数器向上计数；当为 0 时，计数器向下计数。 在 Load 为 0 且 Enable(ct) 为 1 时，该输入决定计数方向。
南侧，三角形标记（输入，位宽 1）
  时钟（Logisim-evolution 外观中标记为 2,3,5+/C6 或 2,4,5-）：根据触发方式属性的设置进行触发。
南侧，标记为 0 或 R（输入，位宽 1）
  复位（Logisim-evolution 外观中标记为 R）：当该输入为 1 时，计数器会被异步置为 0。

## 属性

当组件被选中或正在放置时，按下 Alt-0 到 Alt-9 可以修改其 数据位宽 属性。

数据位宽
  组件输出数值的位宽。
最大值
  计数器的最大值，达到该值时进位输出会置位。
溢出时行为
  当计数器递增超过最大值或递减小于 0 时的行为。 包括：回绕、保持不变、继续计数 或 加载下一个值。
触发方式
  配置时钟输入的触发方式（上升沿或下降沿）。
标签 / 标签字体
  组件标签所使用的文本和字体。

## 手形工具行为

点击计数器会获得键盘焦点，输入十六进制数字即可修改计数器中存储的值。

## 文本工具行为

用于编辑与该组件关联的标签文本。

返回库手册