为 1 的补码、2 的补码等各种运算设计有限自动机
原文:https://www . geesforgeks . org/design-有限自动机-for-variable-operations-like-1s-complex-2s-complex/
有限自动机中的传感器是指带输出的传感器。 有输出的 FA 有两种机器。
1。美餐机: 它是一个 FA,输出与每个转换相关联。(这意味着输出取决于状态和输入)。 T4【2】。摩尔机: 是 FA,其中输出与每个状态相关联。(这意味着输出仅取决于状态)。
通过使用这些机器,我们可以为各种操作设计有限自动机,例如
- 1 的补码。
- 2 的补码。
- 二进制全加法器。
- 递增 1。
- 更改符号位。
- 整数可分性测试仪。
- 逻辑函数(异或、或、与、非)。
- 当前位和先前位等的总和。
1。1 的补码:
给定二进制数的 1 的补码是通过简单地反转每一位得到的。 即 1<–>0 和 0<–>1
使用面包机进行设计的逻辑–
- 对于输入 0,输出为 1。
- 对于输入 1,输出为 0。 所以它只需要一个状态。
1 的补充粉饼机
2。2 的补码:
一般来说,2 的补码是通过将 1 加到数的 1 的补码上得到的。 但是为了设计 2 的补码机,我们使用另一种算法来推导 2 的补码。
算法–
- 从输入的 LSB 开始。
- 复制该位,直到第一个“1”出现。
- 之后,补充每一位。
示例–
从输入的最低有效位开始
照原样复制该位,直到第一个“1”出现
补足每一位
使用面包机进行设计的逻辑–
- 从输入的最低有效位获取输入。
- 对于每个输入 till,前 1 个输出与输入相同。
- 之后,对于每个输入,使用 1 补码机对每个位进行补码。
所以,它需要两个状态。一种状态是输出与输入相同,另一种状态是 1 的补码状态。
2 的补充粉机
当第一个“1”出现时,它转移到下一个状态,对每个位进行补码。 这里,第一状态的行为是生成与输入相同的输出,第二状态的行为是生成补码。
3。二进制全加器: 二进制全加器将 2 个二进制位和进位输入相加,产生和输出和进位输出。
二进制全加器的工作–
这是二进制全加器的功能表。根据进位输入,输入的输出值是变化的。
为了设计一个二进制全加器,我们使用这个表。根据这个表,有两种情况(进位=0 和进位=1),所以我们需要两种状态。
当进位=0(从进位=0 状态)在“00”输入求和=0(因此,在 00 转换时,输出为 0)和进位=0(因此,它进入进位=0 状态)
根据表格设计机器的其余部分。它看起来像–
二进制全加器
4。递增 1 : 递增 1 表示二进制数加 1。 增加 1 次手术有两种情况
设计机器的逻辑–
结合这两种情况,我们得到的算法是,直到第一个 0 到来,使所有 1 ⇢ 0,当 0 到来时使其为 1,那么输出的剩余部分与输入相同。这里,输入取自 LSB。
增加 1 台粉饼机
5。更改符号位:
改变符号位非常简单。只要交换第一位,其他位就和原来一样。
把标志位换成美利机器
6。整数可分性测试仪:
整数可分性测试机与 Mod 机器相同,接受十进制值,并在状态下输出。
示例– 3 可分性测试仪机器与有限自动机相同,用于输出状态为的字符串 mod 3=0 的十进制值
3 可分性测试仪系泊机
7。逻辑函数(异或、或、与、非):
根据逻辑表为逻辑函数设计机器是非常容易的。
不同逻辑功能的机器
8。当前位&前一位之和:
如果前一位= 0,输入 0 时,输出= 00,输入 1 时,输出= 01 如果前一位= 1,输入 0 时,输出= 01,输入 1 时,输出= 10
当前位和前一位之和
在 pre=0 时,当有 1 转换时,它会移动到 pre=1,因为下一位必须是前一位。pre=1 上的 0 转换也是如此
版权属于:月萌API www.moonapi.com,转载请注明出处