【发布时间】:2016-06-07 20:20:09
【问题描述】:
鉴于以下 3 个序列,我希望能够将 seqN 映射到 seq0。 seq1 映射到 seq0 和 seq2 到 seq1 通过:
seqN(i) = (seqN-1(i)*7)%27
例如,
seq1(i) = (seq0(i)*7)%27
seq0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
seq1 0 7 14 21 1 8 15 22 2 9 16 23 3 10 17 24 4 11 18 25 5 12 19 26 6 13 20 27
seq2 0 22 17 12 7 2 24 19 14 9 4 26 21 16 11 6 1 23 18 13 8 3 25 20 15 10 5 27
现在,一种方法是递归地应用该函数。但这对我来说不是一个选择(这需要在硬件中实现)。我也不能保存最后一个序列的值来计算当前序列的值 - 我没有空间。
有没有办法使用数学方程(不是递归函数)将 seqN 映射到 seq0?
【问题讨论】:
-
Nitpick - 你的序列应该从 0 到 26 而不是 27 (27 % 27 == 0)
-
听起来您应该改用 LUT。
-
谢谢丹,伊格纳西奥。伊格纳西奥,我没有空间放 LUT...