單獨(dú)對校驗(yàn)碼是解釋是一組數(shù)字的最后一位,由前面的數(shù)字通過某種運(yùn)算得出,用以檢驗(yàn)該組數(shù)字的正確性。那么條形碼中的校驗(yàn)碼的定義是什么呢?校驗(yàn)碼是位于條碼最后一位的、從單元數(shù)據(jù)串的其他數(shù)字中計(jì)算出來的數(shù)字,用于檢查數(shù)據(jù)的正確組成。從字面上看,兩者是一樣的,只不過條形碼中的校驗(yàn)碼是用來檢驗(yàn)條碼數(shù)據(jù)的正確性。但是為什么條形碼中要加入校驗(yàn)碼呢?這些校驗(yàn)碼到底有什么用呢?
要知道條形碼中為什么要加入校驗(yàn)碼首先就要先了解條碼掃描器的識別原理。它主要由條碼掃描和譯碼兩部分構(gòu)成:掃描是利用光束掃讀條碼符號,將光信號轉(zhuǎn)換為電信號,這部分功能由掃描器完成。譯碼是將掃描器獲得的電信號按一定的規(guī)則翻譯成相應(yīng)的數(shù)據(jù)代碼,然后輸入計(jì)算機(jī)(或存儲器),這個過程由譯碼器完成。因?yàn)樽g碼的時候要譯成二進(jìn)制和十進(jìn)制數(shù),代碼作為數(shù)據(jù)在向計(jì)算機(jī)或其它設(shè)備進(jìn)行輸入時,容易產(chǎn)生輸入錯誤,為了減少輸入錯誤,編碼專家發(fā)明了各種校驗(yàn)檢錯方法,并依據(jù)這些方法設(shè)置了校驗(yàn)碼,這也就是為什么條形碼中要加入校驗(yàn)碼了。
我們最常見的校驗(yàn)碼就是商品條碼中的校驗(yàn)碼,那么這些校驗(yàn)碼是怎么產(chǎn)生的呢?這就要用到專業(yè)的條碼軟件,一般來說專業(yè)的條碼軟件中檢驗(yàn)位是自動生成的,下圖就為中瑯條碼標(biāo)簽打印軟件制作的商品條碼(由紅色框標(biāo)注的部分為校驗(yàn)位):
類似于中瑯條碼標(biāo)簽打印軟件的專業(yè)條碼軟件還有很多,我們在制作條碼標(biāo)簽的時候一定要選擇專業(yè)的條碼軟件。條形碼中的校驗(yàn)碼除了可以用條碼軟件自動生成外還可以自己計(jì)算出來。需要校驗(yàn)位的一般都為商品條碼,我們都知道商品條碼的類型還是比較多的,但是它們的校驗(yàn)位的計(jì)算方法都是完全一樣的。1、包含校驗(yàn)碼的所有數(shù)字從右向左編號,分別為1,2,3......18位; 2、從第2位開始,所有偶數(shù)位的權(quán)數(shù)為3,從第3位開始,所有奇數(shù)位的權(quán)數(shù)為1;3、將對應(yīng)位置的代碼數(shù)字與權(quán)數(shù)相乘;4、將所有乘積相加求和;(結(jié)果為109);5、對第4步的和,求MOD 10運(yùn)算(將和109除以10,取其余數(shù)9);6、如果余數(shù)為0,則校驗(yàn)碼為0,否則,用10減去余數(shù)的差即為校驗(yàn)碼。
其實(shí)把所有條形碼的校驗(yàn)碼的計(jì)算方法總結(jié)后可以得出一個計(jì)算步驟:1、為代碼中的每一位數(shù)字規(guī)定序號;2、給每一位代碼分配一個權(quán)數(shù);3、權(quán)數(shù)與對應(yīng)的代碼相乘;4、將所有的乘積相加;5、對和進(jìn)行MOD(求余數(shù))運(yùn)算;6、對結(jié)果進(jìn)行再處理得到校驗(yàn)碼。
由上面可以看出條形碼中的校驗(yàn)位計(jì)算非常嚴(yán)格,如果要自己計(jì)算的話一定要遵照校驗(yàn)碼的計(jì)算規(guī)則來計(jì)算,否則就有可能會造成制作的標(biāo)簽掃碼槍識別不了。在這里還是建議用專業(yè)的條碼軟件來制作標(biāo)簽,一來比較方便,軟件生成數(shù)據(jù)的速度比較快,二來也避免了數(shù)據(jù)出錯。
共有條評論 網(wǎng)友評論