小型通用设备:寄存器机与拼接模型的探索
1. 寄存器机与计数器自动机
寄存器机是一种重要的计算模型。存在具有 22 条指令、使用 8 个寄存器的一元函数类寄存器机,以及具有 20 条指令的弱通用寄存器机。
机器的寄存器数量对其通用性有影响:
| 寄存器数量 | 通用性 | 指令数量(示例) |
| ---- | ---- | ---- |
| 2 个 | 弱通用 | 278 条(112 条递减和 165 条递增) |
| 3 个 | 强通用 | 365 条(147 条递减和 217 条递增) |
计数器自动机是寄存器机的推广,它允许在一步中对多个寄存器进行零测试、非零测试、递增或递减操作。广义计数器自动机还允许对任意寄存器进行超过 1 的递减和递增操作,这有助于构建小型通用系统。例如,对于寄存器机,这种推广使得实现强通用性仅需 13 条(递减和加法)指令;对于计数器自动机,可得到一个具有 16 条指令和 4 个状态的构造。
2. 最大并行多重集重写
最大并行多重集重写遵循最大化原则,即一组规则是最大并行的,当且仅当这些规则可以并行应用,且不能再添加其他规则而保持该性质。
将寄存器机视为有限状态多重集重写系统时,即使在最大并行性下也会顺序执行,因为在任何配置中最多只有一个状态符号,且任何规则的左侧都包含一个状态符号。使用最大并行性,可以通过以下规则确定性地模拟指令 p : (S(a), q, q′):
p → p1ta
p1 → p2
taa → da
p2da → q
p2ta → q′
<
超级会员免费看
订阅专栏 解锁全文
18

被折叠的 条评论
为什么被折叠?



