1 / 95

從檢查碼到修正碼

011101001001111. 0 1 2 3 4 5 6 7 8 9 0. 5. 從檢查碼到修正碼. 財團法人台北市九章數學教育基金會 孫文先. 國際標準書碼 ( ISBN ). 國際標準書碼 ( ISBN ). International Standard Book Number, 簡稱 ISBN 為因應圖書出版、行銷、管理的需要,便於國際間出版品的交流與統計,所發展國際統一的圖書編號制度。每一個 ISBN 書碼唯一決定了一本書。. 國際標準書碼 ( ISBN ).

lilka
Download Presentation

從檢查碼到修正碼

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 011101001001111 0 1 2 3 4 5 6 7 8 9 0 5 從檢查碼到修正碼 財團法人台北市九章數學教育基金會 孫文先

  2. 國際標準書碼(ISBN)

  3. 國際標準書碼(ISBN) International Standard Book Number, 簡稱ISBN 為因應圖書出版、行銷、管理的需要,便於國際間出版品的交流與統計,所發展國際統一的圖書編號制度。每一個ISBN書碼唯一決定了一本書。

  4. 國際標準書碼(ISBN) • 目前現行的編碼規則是由10個數字所組成,這10個數字被分成4個部份,前面9個數字以連字號區分成3個部份,依序分別用來表示區域語言、出版社及書名資料。 ISBNd1d2 d3- d4d5d6- d7d8d9-d10. 其中,d10是該本書的檢核號碼。

  5. 國際標準書碼(ISBN) 檢查碼 • 九章出版社的ISBN型式 • 「艾克博士謎題奇遇記」一書的ISBN碼如下: ISBN957─603─264─4 區域語言 出版社 書名資料

  6. 國際標準書碼(ISBN) • 檢查碼是由前九碼所決定的: 9 5 7 6 0 3 2 6 4 × × × × × × × × × 10 9 8 7 6 5 4 3 2 90 45 56 42 0 15 8 18 8 90+45+56+42+0+15+8+18+8=282≡7(mod11) 檢查碼=11-7=4 (當餘數為0時規定為0,餘數為1時規定為X)

  7. 國際標準書碼(ISBN) • 也就是說加入檢查碼後: 9 5 7 6 0 3 2 6 4 × × × × × × × × × 10 9 8 7 6 5 4 3 2 90 45 56 42 0 15 8 18 8 90+45+56+42+0+15+8+18+8+4=286≡0(mod11) 檢查碼=4

  8. 國際標準書碼(ISBN) • 為什麼檢查碼也可以這樣算? 9 5 7 6 0 3 2 6 4 × × × × × × × × × 1 2 3 4 5 6 7 8 9 9 10 21 24 0 18 14 48 36 9+10+21+24+0+18+14+48+36=180≡4(mod11) 檢查碼×10 +4≡0(mod11),檢查碼=4

  9. 國際標準書碼(ISBN) • ISBN編碼方式是一九六○年英國經濟研究院的福斯特(F. M. Foster)教授所設計發明的。 • 實施三十年的十位數字ISBN編碼,在全世界都已捉襟見肘難以分配了。ISBN總部最近決定將在2007年1月開始,將ISBN擴增三位數,亦即在前面另加978,成為十三位數的號碼

  10. 國際標準書碼(ISBN) • 新的編碼規則是由13個數字所組成,這13個數字被分成5個部份,前3個數字一律為978或979,接著9個數字仍區分成3個部份,依序分別用來表示區域語言、出版社及書名資料。最後一個數字為檢查碼。

  11. 國際標準書碼(ISBN) 檢查碼 ISBN978─957─603─264─6 「艾克博士謎題奇遇記」一書新的ISBN碼如下: 978或979 區域語言 出版社 書名資料

  12. 國際標準書碼(ISBN) • 檢查碼是由前十二碼所決定的: 9 7 8 9 5 7 6 0 3 2 6 4 × × × × × × × × × × × × 1 3 1 3 1 3 1 3 1 3 1 3 9 21 8 27 5 21 6 0 3 6 6 12 9+21+8+27+5+21+6+3+6+6+12=124≡4(mod10) 檢查碼=10-4=6

  13. 國際標準書碼(ISBN) • 2005至2006年,10碼與13碼並行 • 2007年1月起,全面加長至13碼 EAN編碼 現行10碼ISBN

  14. UPC及EAN編碼

  15. UPC條碼 • “統一商品條碼”(UniversalProductCode簡稱UPC)由IBM公司職員George J. Laurer發明,最早是由美國超級市場公會所推廣,為了在百貨公司或超級市場應用科技以節省大量人力物力資源,並簡少結帳之錯誤,於1973年正式啟用,並取名為UPC條碼,它有12位數字,為EAN條碼的前身,過去在美國、加拿大地區相當普及。

  16. UPC及EAN編碼原則 A Type, C Type 互為黑白對換, B Type, C Type 互為鏡像。

  17. UPC-A條碼的基本架構 左邊線:固定為101. 旗碼:佔2個字元,第一個字元固定為0,通常不列印出來,第二個字元代表商品種類。 廠商代碼:佔5個字元,須提出申請。 中線:固定為01010. 商品代碼:佔5個字元,由廠商自行訂定。 檢查碼:佔1個字元。 右邊線:固定為101,與左邊線相同。

  18. x 1 7 8 9 5 7 6 0 3 1 3 9 6 x 3 UPC-A檢查碼的計算方式 (7 + 9 + 7 + 0 + 1 + 9) x 3 + (8 + 5 + 6 + 3 + 3) = 99 + 25 = 124 = 4 (mod 10) 檢查碼= 10-4 = 6.

  19. EAN條碼 • “歐洲商品條碼”(EuropeanArticleNumber簡稱EAN)是在商品條碼的基礎上發展而成的全球統一標識系統,由歐洲12個工業國家共同推廣。現已為全球統一和通用的商業語言。 • 美國與加拿大於2003年加入EAN組織,在UPC碼最前面加上一個數字0,2005年正式改用EAN條碼。

  20. EAN條碼 • EAN代碼個別意義為 • 國別碼(國碼標記): 為條碼前2~3位數。 • 廠商識別碼: 4~5個位元數。 • 商品專案代碼: 固定五位數。 • 檢驗碼: 條碼最後一位之運算碼。 • EAN條碼皆為數字碼且無自我檢查碼,其所平均比例的字元密度約每公分5.42個字或每公分約2.11個字,其內容的符號長度是固定的,且一定要有檢驗碼以做判別用。 • 國別碼部分若為978或979即為書籍(由ISBN碼而來)

  21. EAN檢查碼的計算方式 • 與新制ISBN碼相同:

  22. 身份證字號

  23. 身份證字號 • 中華民國的國民身份證字號共有10位,第一位為英文字母,第二個數字是男女生之分,男生為1,女生為2,最後一位數字為檢查碼。

  24. 身份證檢查碼的計算方法 4 A 1 0 4 3 4 5 5 7 x x x x x x x x 8 7 6 5 4 3 2 1 10 x x 1 9 = 1 + 0 + 8 +0 + 24 + 15 + 16 + 15 + 10 + 7 = 96 = 6 (mod 10) 檢查碼= 10-6 = 4.

  25. 從檢查碼到修正碼 • 由上面可知,檢查碼只可核驗數碼是否有誤,無改正之功能。除非知道那一個碼發生誤漏。 • 例如: 97895763□1397. □ = ?

  26. 挑戰問題 TEA TIME~

  27. 挑戰問題一 我心裡想著一個介於1到2009的數,你每問一個問題我都立即誠實回答,你能在問11個“是與否”的問題內將我想的數猜出嗎? 答案

  28. 挑戰問題二 這一次我一樣想著一個介於1到2009的數,但等你問完11個“是與否”的問題後,我再誠實回答每一個問題,你能猜出我想的數嗎? 答案

  29. 挑戰問題三 現在我還是想著一個介於1到2009的數,讓你問完33個“是與否”的問題後,我才回答,不過其中任有一個答案我可能會說謊(也可能都不說謊),這樣你能猜出我想的數嗎? 答案

  30. 挑戰問題四 這次我仍然想著一個介於1到2009的數,你每問一個“是與否”的問題後我會馬上回答問題,最多讓你問23次,但其中任有一個答案我可能會說謊(也可能都不說謊),你能猜出我想的數嗎? 答案

  31. 修正碼 • 有一台老舊的發信機,它一次可以傳出15個0或1的訊號,但因為這台機器實在太老舊了,所以每次或多或少會發生發生錯一碼的事情,雖然很肯定不會同時錯二碼,但到底是那一位置發生錯碼,每次卻不盡相同,而且無法事先知道,請問應如何傳送信號,收信端才能正確的判別出是那一個位置出錯,而加以修正?

  32. 修正碼1 Alt碼 & Adrian Keet碼 & Robenstein碼

  33. Alt 碼 (1948/1949) • Alt 碼的前5個數字為表達之訊息,後10個數字則為此訊息複述二次所產生的。

  34. Alt 碼 (1948/1949) • 訊息為00110,則發出 00110 00110 00110 • 若收到00010 00110 00110: 00010 00110 可判斷出正確為00110 00110 • 三賽兩勝制,效率 5/15

  35. Adrian Keet 碼 (2002) • 前6個碼為表達之訊息,之後複述一次,最後三碼分別為{1,2}{3,4}{5,6}位置上的奇偶碼。 奇偶碼: 若集合中1的個數為奇數,該集合的奇偶碼為1; 若集合中1的個數為偶數,該集合的奇偶碼為0。

  36. Adrian Keet 碼 (2002) • 訊息為 011011,則發出 011011 011011 1 1 0 • 如果收到訊息為 010011011011110: 和為1,奇數 010011 和為1,奇數 011011 可知第3與第4碼和為奇數, 故可判斷正確訊息為011011 1 1 0 和為2,偶數 • 重抄及運用「奇偶碼」,效率 6/15

  37. Robenstein 碼 (1984) • Robenstein 碼的前7個碼為表達之訊息,之後複述一次,傳送的訊息,1的個數若為奇數,則最後一碼取1;否則,取0。

  38. Robenstein 碼 (1984) • 訊息0011001,則發出 0011001 0011001 1 • 若收到 0011011 0011001 1: 0011011 0011001 可知有奇數個1, 故可判斷正確訊息為0011001 1 • 運用「奇偶碼」的想法,效率 7/15

  39. 修正碼2 于非嶠碼 & 九宮碼 & 五星碼

  40. 于非嶠碼(2002) • 將8碼訊息依序填入如下表的3 x 5矩形表格中,第9碼為1和5的奇偶碼,10為2和6的奇偶碼,11為3和7的奇偶碼,12為4和8的奇偶碼,13為1到4的奇偶碼,14為5到8的奇偶碼,15為1到8的奇偶碼。 • 依照1到15的順序發出訊息

  41. 于非嶠碼(2002) • 訊息為01101011,則發出: 01101011 1101011

  42. 于非嶠碼(2002) • 若收到訊息為01101001,還原到3×5的表格: 由此碼可知是前8碼出錯 可判斷出正確為01101011 WHY? 後7碼有3碼與前8碼不合! 第15碼必正確! • 效率為 8/15

  43. 劉翰 九宮碼 (1997) • 將9碼訊息依序填入如下表的前9碼九宮格中, 第10碼為1,4,7的奇偶碼,11為2,5,8的奇偶碼, 12為3,6,9的奇偶碼,13為1,2,3的奇偶碼, 14為4,5,6的奇偶碼,15為7,8,9的奇偶碼。 • 按1到15的順序發出訊息

  44. 劉翰 九宮碼 (1997) • 訊息為011101001,則發出 011101001 111001

  45. 劉翰 九宮碼 (1997) • 收到011001001111001,依序填回表格: 可判斷出正確為011101001 • 效率為 9/15

  46. Q A M B H G J N F C E K D P L 劉翰 五星碼 (1997) • 將10碼訊息依字母先後順序序填入如右圖的A~J五星格中, L為A,B,C,D的奇偶碼, M為D,E,F,G的奇偶碼, N為G,H,B,J的奇偶碼, P為J,C,E,K的奇偶碼, Q為K,F,H,A的奇偶碼。 • 按A到Q的字母先後順序發出15碼的訊息

  47. Q 0 A 0 0 M 0 B H 1 G 1 J 0 0 N 0 F 1 C E 0 K 1 1 D 0 P L 0 劉翰 五星碼 (1997) • 訊息為0011001101,則發出 0011001101 00000

  48. Q 0 A 0 0 M 0 B H 1 G 1 J 0 N 0 0 F 1 C 0 E 1 K 0 D 0 P L 0 劉翰 五星碼 (1997) • 收到訊息為 001000110100000 依序填回右圖 可知此碼傳送錯誤,正確訊息應為 0011001101 • 運用「栽樹問題」,效率 10/15

  49. 2 6 5 1 4 3 7 (7, 4) Hamming 碼 • 將4個訊息填入1,2,3,4位置,而5,6,7的碼值取決於每個圓內的奇偶碼 • 按1到7的順序發出7碼的訊息 • 效率 4/7

  50. 2 0 6 0 5 0 1 1 1 4 3 1 1 7 0 0 0 1 0 1 1 (7, 4) Hamming 碼 • 如右圖,若訊息為1011,則發出 1011 001 • 如收到訊息為1010001,填回右圖: 兩個碼不符合,取兩個圓的交集 可判斷出正確碼為1011

More Related