[tool] 行列快手解碼

看板Array (行列輸入法)作者 (泥巴星球Server)時間17年前 (2007/07/23 12:09), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
CAI 正式版包含的 AREDI.TAB 21604 bytes AREDI.TAB 21604/8 = 2700 2700*8 = 21600 12 bytes? 8 bytes? 21604/4 5401 File : AREDI.TAB Size : 21604 bytes 3% 00000000: 00 00 00 00 00 00 00 00 00 00 00 00 39 00 00 12 9 . 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000020: 00 00 00 00 00 00 00 00 FC 00 00 12 FA 00 00 13 ? .? . 00000030: 00 00 00 00 D3 00 00 12 00 00 00 00 C3 00 00 12 ? . ? . 00000040: 00 00 00 00 00 00 00 00 AA 00 00 12 00 00 00 00 ? . 00000050: 0C 1E 00 40 00 00 00 00 00 00 00 00 00 00 00 00 .. @ 00000060: 00 00 00 00 00 00 00 00 00 00 00 00 41 18 00 22 A. " 00000070: 00 00 00 00 3D 00 00 13 2F 86 00 24 B0 25 00 22 = ./?$? " 00000080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000000A0: B8 00 00 12 C7 00 00 12 B0 FB 00 30 00 00 00 00 ? .? .婉 0 有些預視預選字未列於 AREDI.TAB 之中, 例如: 醮 1-(A) 01(P) (8) 亟 1-(A) 5-(G) (0) ici deedi.ici 更深刻的本質反映在射擊思路 更 0xA7F3 616 b0 9a d7 0 1-(A) 01(P) 98(.) ( ) 深 0xB260 2230 9 4e 83 bd 38(C) 7-(J) 8-(K) 48(V) EDI 9 4e 0 30 38(C) 7-(J) 特別碼 刻 0xA8E8 762 73 f4 fb dd 61(Y) 29(X) 8-(K) 33(E) EDI 73 dd 0 30 61(Y) 33(E) 特別碼 的 0xAABA 1030 5d 8f 3a 50 9-(L) 01(P) 95(L) 6-(H) EDI 66 0 0 30 51(T) ( ) 特別碼 本 0xA5BB 246 bd b0 0 0 48(V) 1-(A) ( ) ( ) 質 0xBDE8 4059 ff ff f7 0 93(O) 93(O) 78(M) ( ) EDI ff f7 0 30 93(O) 78(M) 特別碼 反 0xA4CF 109 b3 c2 0 0 19(Z) 58(B) ( ) ( ) EDI b3 c2 0 22 19(Z) 58(B) 二級簡碼 選 (2) 映 0xAC4D 1269 8f a0 62 0 01(P) 7-(J) 18(Z) ( ) 在 0xA662 348 75 55 b7 0 19(Z) 3-(D) 41(R) ( ) EDI 55 b7 0 30 3-(D) 41(R) 特別碼 射 0xAE67 1609 8b 25 50 0 99(.) 4-(F) 6-(H) ( ) 擊 0xC0BB 4485 4f d9 4a 11 14(Q) 3-(D) 2-(S) 94(O) EDI 4f d9 0 22 14(Q) 3-(D) 二級簡碼 選 (2) 思 0xABE4 1229 90 ca 0 0 04(P) 66(N) ( ) ( ) 路 0xB8F4 3286 28 a 9d 0 2-(S) 98(.) 0-(;) ( ) EDI 28 0 0 19 2-(S) 一級簡碼 選 (9) Input next line: ici deedi.ici 深乙輝質友路 深 0xB260 2230 9 4e 83 bd 38(C) 7-(J) 8-(K) 48(V) EDI 9 4e 0 30 38(C) 7-(J) 特別碼 乙 0xA441 1 86 0 0 0 2-(S) ( ) ( ) ( ) 輝 0xBDF7 4074 70 b0 cf 4f 38(C) 1-(A) 2-(S) 14(Q) EDI cf 4f 0 30 2-(S) 14(Q) 特別碼 質 0xBDE8 4059 ff ff f7 0 93(O) 93(O) 78(M) ( ) EDI ff f7 0 30 93(O) 78(M) 特別碼 友 0xA4CD 107 75 c2 0 0 19(Z) 58(B) ( ) ( ) 路 0xB8F4 3286 28 a 9d 0 2-(S) 98(.) 0-(;) ( ) EDI 28 0 0 19 2-(S) 一級簡碼 選 (9) ici deedi.ici 代卡市打交件光予孔爪牙仲再在妄她宇死級聽頓醮亟結片 代 0xA54E 171 10 b0 5 0 8-(K) 1-(A) 26(X) ( ) EDI 1c 8 0 40 53(T) 38(C) 96 特別碼 卡 0xA564 193 29 b0 aa 0 31(E) 1-(A) 36(C) ( ) EDI 1c 17 0 40 53(T) 58(B) 96 特別碼 市 0xA5AB 230 73 a0 55 0 61(Y) 7-(J) 3-(D) ( ) EDI 16 d 0 40 68(N) 4-(F) 96 特別碼 打 0xA5B4 239 24 b0 46 0 94(O) 1-(A) 3-(D) ( ) EDI 1e d 0 40 19(Z) 4-(F) 96 特別碼 交 0xA5E6 289 73 fa d7 0 61(Y) 8-(K) 98(.) ( ) EDI f 8 0 40 4-(F) 38(C) 96 特別碼 件 0xA5F3 302 10 2f ba 0 8-(K) 91(O) 4-(F) ( ) EDI f 2 0 40 4-(F) 78(M) 96 特別碼 光 0xA5FA 309 70 b0 cf 0 38(C) 1-(A) 2-(S) ( ) EDI cf 70 0 50 2-(S) 38(C) 96 特別碼 予 0xA4A9 71 8a 3d 46 0 56(B) 5-(G) 3-(D) ( ) EDI 8a 3d 0 30 56(B) 5-(G) 特別碼 孔 0xA4D5 115 3d 26 36 0 5-(G) 4-(F) 2-(S) ( ) EDI 26 36 0 30 4-(F) 2-(S) 特別碼 爪 0xA4F6 148 7f 55 18 0 99(.) 3-(D) 8-(K) ( ) EDI 7f 18 0 30 99(.) 8-(K) 特別碼 牙 0xA4FA 152 d5 46 5d 0 12(Q) 3-(D) 9-(L) ( ) EDI 46 5d 0 30 3-(D) 9-(L) 特別碼 仲 0xA5F2 301 10 9d 55 0 8-(K) 0-(;) 3-(D) ( ) EDI 10 9d 0 30 8-(K) 0-(;) 特別碼 再 0xA641 315 b0 a0 b7 0 1-(A) 7-(J) 41(R) ( ) EDI a0 a0 0 30 7-(J) 7-(J) 特別碼 在 0xA662 348 75 55 b7 0 19(Z) 3-(D) 41(R) ( ) EDI 55 b7 0 30 3-(D) 41(R) 特別碼 妄 0xA66B 357 73 36 7d 0 61(Y) 2-(S) 21(W) ( ) EDI 36 7d 0 30 2-(S) 21(W) 特別碼 她 0xA66F 361 7d 3d 55 36 21(W) 5-(G) 3-(D) 2-(S) EDI 7d 36 0 30 21(W) 2-(S) 特別碼 宇 0xA674 366 4d b0 25 0 67(N) 1-(A) 4-(F) ( ) EDI 4d 25 0 30 67(N) 4-(F) 特別碼 死 0xA6BA 402 b0 c7 87 0 1-(A) 76(M) 12(Q) ( ) EDI b0 87 0 30 1-(A) 12(Q) 特別碼 級 0xAFC5 1826 8e 5d 17 0 28(X) 9-(L) 58(B) ( ) EDI 8e 0 0 15 28(X) 一級簡碼 選 (5) 聽 0xC5A5 5248 b0 1b 5d ca 1-(A) 31(E) 9-(L) 66(N) EDI b0 0 0 13 1-(A) 一級簡碼 選 (3) 頓 0xB979 3354 b0 d9 47 f7 1-(A) 3-(D) 2-(S) 78(M) EDI b0 d9 0 22 1-(A) 3-(D) 二級簡碼 選 (2) 醮 0xC3E7 5000 b0 c5 10 c 1-(A) 01(P) 8-(K) 88(,) 亟 0xAB45 1104 b0 3b 9d b0 1-(A) 5-(G) 0-(;) 1-(A) 結 0xB5B2 2749 8e b8 9d 0 28(X) 41(R) 0-(;) ( ) EDI 8e 0 0 14 28(X) 一級簡碼 選 (4) 片 0xA4F9 151 a7 0 0 0 35(D) ( ) ( ) ( ) EDI a7 0 0 12 35(D) 一級簡碼 選 (2) ici deedi.ici 有些預視預選字未列於 有 0xA6B3 395 75 7c 0 0 19(Z) 71(U) ( ) ( ) 些 0xA8C7 729 9e 87 b0 b0 31(E) 12(Q) 1-(A) 1-(A) EDI 9e 0 0 17 31(E) 一級簡碼 選 (7) 預 0xB977 3352 8a 3d 46 f7 56(B) 5-(G) 3-(D) 78(M) EDI 8a 3d 0 23 56(B) 5-(G) 二級簡碼 選 (3) 視 0xB5F8 2819 69 50 f5 cf 63(Y) 6-(H) 7-(J) 2-(S) EDI 50 f5 0 30 6-(H) 7-(J) 特別碼 預 0xB977 3352 8a 3d 46 f7 56(B) 5-(G) 3-(D) 78(M) EDI 8a 3d 0 23 56(B) 5-(G) 二級簡碼 選 (3) 選 0xBFEF 4380 64 36 64 16 51(T) 2-(S) 51(T) 68(N) EDI 64 16 0 30 51(T) 68(N) 特別碼 字 0xA672 364 4d 3d 25 0 67(N) 5-(G) 4-(F) ( ) EDI 4d 0 0 15 67(N) 一級簡碼 選 (5) 未 0xA5BC 247 b0 bd 0 0 1-(A) 48(V) ( ) ( ) 列 0xA643 317 b0 c7 dd 0 1-(A) 76(M) 33(E) ( ) 於 0xA9F3 930 c9 fb 6c 0 65(H) 8-(K) 6-(H) ( ) EDI c9 0 0 18 65(H) 一級簡碼 選 (8) // deedi.ici // http://ici.sourceforge.net // http://en.wikipedia.org/wiki/Big5 // 0xa440 to 0xc67e Frequently used characters 常用字 // 0xc940 to 0xf9d5 Less frequently used characters 次常用字 // First byte ("lead byte") 0x81 to 0xfe // Second byte 0x40 to 0x7e, 0xa1 to 0xfe // 157 words? // 0xB0 * 2 + 0x108 = 0x268 => "1-" // 0xB0 + 8 = 0xB8 => 0x41 "A" extern all = getfile(fopen("AR.TAB", "r")); extern edi = getfile(fopen("AREDI.TAB", "r")); extern kk(i) { printf(" %s%s(%s) ", all[i*2+0x108], all[i*2+0x109], all[i+8]); } while(s=getline(stdin)) { s2 = s; while(1) { t = s2 ~~~ #[ \t\n]*(.)(.)(.*)#; if (t) { printf("%s%s 0x%X%X ", t[0], t[1], toint(t[0]), toint(t[1])); a = toint(t[0]); b = toint(t[1]); if (b >= 0x40 && b <= 0x7e) { b2 = b - 0x40; } else if (b >= 0xa1 && b <= 0xfe) { b2 = b - 0xa1 + 0x7e - 0x40 + 1; } else { printf("error b %s %x \n", t[1], b); } if (a >= 0xa4 && a <= 0xc6) { a2 = a - 0xa4; } else if (a >= 0xc9 && a <= 0xf9) { a2 = a - 0xc9 + 0xc6 - 0xa4 + 1; } else { printf("error a %s %x \n", t[1], b); } sum = a2 * 157 + b2; printf(" %-06d ", sum); p = sum * 4 + 0x308; p1 = toint(all[p]); p2 = toint(all[p+1]); p3 = toint(all[p+2]); p4 = toint(all[p+3]); printf(" %-3x %-3x %-3x %-3x ", p1, p2, p3, p4); kk(p1); kk(p2); kk(p3); kk(p4); if (sum < 5401) { p = sum * 4; p1 = toint(edi[p]); p2 = toint(edi[p+1]); p3 = toint(edi[p+2]); p4 = toint(edi[p+3]); if (p4 != 0) { printf("\n "); printf(" EDI %-3x %-3x %-3x %-3x ", p1, p2, p3, p4); // kk(p1); kk(p2); /* kk(p3); kk(p4); */ if (p4 >= 0x11 && p4 <= 0x19) { kk(p1); printf("一級簡碼 選 "); printf(" (%d)", p4 % 16); } else if (p4 >= 0x21 && p4 <= 0x29) { kk(p1); kk(p2); printf("二級簡碼 選 "); printf(" (%d)", p4 % 16); } else if (p4 == 0x30) { kk(p1); kk(p2); printf("特別碼 "); } else if (p4 == 0x40 || p4 == 0x50) { kk(p1); kk(p2); printf("96 特別碼 "); } } } printf("\n"); if (t[2]) t2 = t[2]; else t2 = 0; } if (t2) { s2 = t2 ~~ #([^ \n\t]+)#; if (!s2) break; // printf("s2 is %s\n", s2); // debug } else break; } printf("Input next line:\n"); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.145.82.143
文章代碼(AID): #16f2dUIq (Array)
文章代碼(AID): #16f2dUIq (Array)