0

这里有没有人知道任何教科书或行业指南为普通工程师(不是数学博士)提供实施 Damm 算法的实用指南?

具体来说,我想知道拉丁方格是如何生成的,而不是盲目地复制维基百科上提供的 base-10 或剪切和粘贴其他人未经检查的代码。

我正在寻找具有灵活基本系统的选项,包括(但不限于)基本 10、16、32 或 36(10 个数字加 26 个英文字母)。我相信上述方案支持这一点(除 2 和 6 之外的所有基础),有人知道这是否正确吗?

H. Michael Damm 的博士论文有英文版吗?

有没有一种方法可以添加额外的校验位以在编号方案中包含冗余,即将四位数据位的有效负载扩展为七位数字,其中七位数字中只有四位需要正确,并且仍然可以完全恢复原始数据?

即,如果 1234 有三个冗余数字,比如 789,那么 1234789 可以作为 1X3XX89 传输,其中 X 是不可读的数字,但仍然可以完全恢复。

这对于国际银行号码中使用的 mod-97 方案似乎是可能的,但这似乎不具有非 base-10 Damm 方案的灵活性,或者一些更好的语音错误检测。

我什至不知道从哪里开始寻找。

4

1 回答 1

0

我正在寻找具有灵活基本系统的选项,包括(但不限于)基本 10、16、32 或 36(10 个数字加 26 个英文字母)。我相信上述方案支持这一点(除 2 和 6 之外的所有基础),有人知道这是否正确吗?

是的。请参阅http://www.md-software.de/math/DAMM_Quasigruppen.txt,其中包含高达 64 阶的 Damm 算法的拟群,n ≠ 2,6

H. Michael Damm 的博士论文有英文版吗?

不是我见过的。不过,您可以尝试使用商业工具进行翻译。但是,您可以查看http://www.sciencedirect.com/science/article/pii/S0012365X06004225

您可以将基数 n 转换为基数 10 并计算校验位。

我什至不知道从哪里开始寻找。

请参阅Google 代码中的 Check Digi Systems 以及 Java 和 JavaScript 中的源代码以及基于校验位方案的错误检测

于 2015-08-21T21:30:32.850 回答