Bitzahl der Zeichenanzahl-Angabe (nach der 4-Bit-Modusangabe Byte, Numeric, ...)
Version | numerisch | alphanumerisch |
1- 9 | 10 | 9 |
10-26 | 12 | 11 |
27-40 | 14 | 13 |
Texte mit guter Erklärung im Netz bei http://www.swetake.com/qrcode/qr2_en.html
Numeric mode:
Im "Numeric mode" verwendet man NUR Ziffern! Diese werden in Dreiergruppen zusammengefasst.
Zum Beispiel "123456" wird zerlegt in "123" und "456"; die erste Gruppe "123" und die 2. Gruppe "456" wird dann jeweils als 10-Bit-Dualzahl dargestellt.
Hier also wäre die Bitfolge dazu 0001111011 0111001000
Mit führenden Bits: 0001 für "numeric mode"
und 10 Bits für die Anzahl der Zeichen: 6 Zeichen ... 0000000110
ergibt sich die Bitfolge: 0001 0000000110 0001111011 0111001000
Wenn am Ende eine oder zwei Ziffern übrigbleiben werden eine 4-bit-Zahl oder eine 7-bit-Zahl angefügt.
Zum Beispiel bei "9876" --> "987" in 10-Bit-Zahl und dann für die "6" eine long and "6" eine 4-bit-Zahl.
Es entsteht damit (ohne führende Bits): 1111011011 0110
Alphanumeric mode:
Es dürfen NUR Großbuchstaben, Ziffern und einige Sonderzeichen verwendet werden: Siehe folgende Zusammenstellung.
Zuordnung:
0,1,2,3,4,5,6,7,8,9,
0,1,2,3,4,5,6,7,8,9,
A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z,
10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,
, $, %, *, +, -, ., /, :
36,37,38,39,40,41,42,43,44
Nun werden immer 2-er-Gruppen gebildet. Der erste Zuordnungswert wird mit 45 multipliziert der zweite Zuordnungswert wird addiert.
Dieses Ergebnis wird dann als 11-Bit-Zahl abgelegt.
Wenn ein Zeichen übrig bleibt, wird sein Zuordnungswert als 6-Bit-Zahl angefügt.
Beispiel: ABCDE123F
AB | CD | E1 | 23 | F |
45*10+11 | 45*12+13 | 45*14+1 | 45*2+3 | 15 |
461 | 553 | 631 | 93 | 15 |
0111001101 | 01000101001 | 01001110111 | 00001011101 | 001111 |
0010 steht für Alphanumeric mode;
die folgende 9-Bit-Zahl gibt die Anzahl der Zeichen an: hier 9 Zeichen bei ABCDE123F
(Tabelle siehe oben: Version 1-9 .. 9 Bits)
Die Leerzeichen dienen NUR zur Übersicht für diese Ausarbeitung; eigentlich wäre die Bitfolge:
001000000100100111001101010001010010100111011100001011101001111