VBA GF(256)日志表

时间:2013-02-18 20:59:01

标签: vba access-vba qr-code finite-field galois-field

我正在研究一种在vba中生成QR码的功能。我正在关注this tutorial。我现在正致力于在this step中生成纠错字。这需要GF(256)log / antilog表seen here。我真的不想输入整个表格。有谁知道用于生成这些表的函数,所以我可以将它们存储在数组中?该教程有一个指向如何生成表但是它已被破坏的链接。

我之前应该提到它,但这将在访问中运行,因此粘贴到excel将无法正常工作。但是当我写这篇文章时,我意识到我可以使用访问表。虽然我更愿意在代码中完成所有操作。

1 个答案:

答案 0 :(得分:0)

Const GF = 256 '// define the Size & Prime Polynomial of this Galois field
Const PP = 285
Dim logg(GF)  'establish global Log and Antilog arrays
Dim alogg(GF)


'fill the logg() and alogg() arrays with appropriate integer values

logg(0) = 1
alogg(0) = 1

For i = 1 To 255
  alogg(i) = alogg(i - 1) * 2
  If alogg(i) >= GF Then alogg(i) = alogg(i) Xor PP
  logg(alogg(i)) = i
Next i