Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
QRMath.js45 linesDownload Raw Back to QRCode
1var QRMath = {
2
3	glog : function(n) {
4	
5		if (n < 1) {
6			throw new Error("glog(" + n + ")");
7		}
8		
9		return QRMath.LOG_TABLE[n];
10	},
11	
12	gexp : function(n) {
13	
14		while (n < 0) {
15			n += 255;
16		}
17	
18		while (n >= 256) {
19			n -= 255;
20		}
21	
22		return QRMath.EXP_TABLE[n];
23	},
24	
25	EXP_TABLE : new Array(256),
26	
27	LOG_TABLE : new Array(256)
28
29};
30	
31for (var i = 0; i < 8; i++) {
32	QRMath.EXP_TABLE[i] = 1 << i;
33}
34for (var i = 8; i < 256; i++) {
35	QRMath.EXP_TABLE[i] = QRMath.EXP_TABLE[i - 4]
36		^ QRMath.EXP_TABLE[i - 5]
37		^ QRMath.EXP_TABLE[i - 6]
38		^ QRMath.EXP_TABLE[i - 8];
39}
40for (var i = 0; i < 255; i++) {
41	QRMath.LOG_TABLE[QRMath.EXP_TABLE[i] ] = i;
42}
43
44module.exports = QRMath;
45 
codekingpro/portable-devtools · Team Ai