正在加载图片...
Chinaopub.coM 第二进制数57 下载 起初的3个比特通常是101,这就是最左边的护线,它帮助计算机扫描仪定位。从护线中 扫描仪可以知道代表单个比特的条或间隙的宽度,否则,所有包装上的UPC印刷大小都是 样的。 紧挨着最左边的护线是每组有7个比特位的六组比特串,每一组是数字0~9的编码之 我们在后面将证明这一点。接着的是5个比特的中间护线,此固定模式(总是01010)是一种 内置式的检错码。如果扫描仪在应当找到中间护线的地方没有找到它,扫描仪就认为那不是 UPC。中间护线是防止条形码被窜改或错印的方法之一。 中间护线的后面仍是每组7个比特的6组比特串。最后是最右边的护线,也总是101。最后 的最右护线使得UPC反向扫描(也就是自右向左扫描)同正向扫描一样成为可能,这一点我 们将在后面解释。 因而整个UPC对12个数字进行了编码。左边的UPC包含了6个数字的编码,每个数字占有 7个比特位。你可以用下表进行解码: 左边的编码 0001101=0 011000l=5 001100l=1 010l11l=6 00100l1=2 0111011=7 0111101=3 0110l11=8 0100011=4 0001011=9 注意,每个7位代码都是以0开头,以1结尾的。如果扫描仪遇到了第一个比特位值为1或 最后一个比特位值为0的情况,它就知道自己没有将UPC正确地读入或者是条形码被窜改了 另外我们还注意到每个代码都仅有两组连续的值为1的比特位,这就意味着每个数字对应着条 形码中的两个竖条 上表中的每个代码中都包含有奇数个值为1的比特位,这也是用于检测差错和数据一致性 的一种机制,称为奇偶校验。如果一组比特位中含有奇数个1,就称之为奇校验:如果含有偶 数个1,就称之为偶校验。这样看来,所有这些代码都拥有奇校验。 为了给UPS右边的7位一组的数字解码,可以采用下面的表格: 右边的编码 l110010=0 1001110=5 1100110=1 l101100=2 1000100=7 l000010=3 1001000=8 1011100=4 l110100=9 这些代码都是前述代码的补码或补数:凡是1的地方都换成0,凡是0的地方都换成1。这 些代码都是以1开始,以零结束,并且每组都有偶数个1,称之为偶校验 现在,可以对UCP进行解码了。借助前两个表格, Campbel公司10-盎司的罐装鸡汁面 的包装上用UPC编码的12个数字是 051000012517 这个结果是令人失望的,正如你所看到的那样,它们和印在UPC底部的数字完全相同。起初的3个比特通常是1 0 1,这就是最左边的护线,它帮助计算机扫描仪定位。从护线中, 扫描仪可以知道代表单个比特的条或间隙的宽度,否则,所有包装上的 U P C印刷大小都是一 样的。 紧挨着最左边的护线是每组有 7个比特位的六组比特串,每一组是数字 0~9的编码之一, 我们在后面将证明这一点。接着的是 5个比特的中间护线,此固定模式(总是 0 1 0 1 0)是一种 内置式的检错码。如果扫描仪在应当找到中间护线的地方没有找到它,扫描仪就认为那不是 U P C。中间护线是防止条形码被窜改或错印的方法之一。 中间护线的后面仍是每组 7个比特的6组比特串。最后是最右边的护线,也总是 1 0 1。最后 的最右护线使得 U P C反向扫描(也就是自右向左扫描)同正向扫描一样成为可能,这一点我 们将在后面解释。 因而整个U P C对1 2个数字进行了编码。左边的 U P C包含了6个数字的编码,每个数字占有 7个比特位。你可以用下表进行解码: 左边的编码 0 0 0 1101=0 011 0 0 0 1 = 5 0 0 11001=1 0101111 = 6 0 0 1 0 0 11=2 0111 0 11 = 7 0 111101=3 011 0 111 = 8 0 1 0 0 0 11=4 0001011 = 9 注意,每个7位代码都是以0开头,以1结尾的。如果扫描仪遇到了第一个比特位值为 1或 最后一个比特位值为 0的情况,它就知道自己没有将 U P C正确地读入或者是条形码被窜改了。 另外我们还注意到每个代码都仅有两组连续的值为 1的比特位,这就意味着每个数字对应着条 形码中的两个竖条。 上表中的每个代码中都包含有奇数个值为 1的比特位,这也是用于检测差错和数据一致性 的一种机制,称为奇偶校验。如果一组比特位中含有奇数个 1,就称之为奇校验;如果含有偶 数个1,就称之为偶校验。这样看来,所有这些代码都拥有奇校验。 为了给U P S右边的7位一组的数字解码,可以采用下面的表格: 右边的编码 1110010=0 100111 0 = 5 11 0 0 110=1 1010000=6 11 0 1100=2 1000100=7 1000010=3 1001000=8 1 0 11100=4 111 0 1 0 0 = 9 这些代码都是前述代码的补码或补数:凡是 1的地方都换成 0,凡是0的地方都换成 1。这 些代码都是以1开始,以零结束,并且每组都有偶数个 1,称之为偶校验。 现在,可以对U C P进行解码了。借助前两个表格, C a m p b e l l公司1 0 盎司的罐装鸡汁面 的包装上用U P C编码的1 2个数字是: 0 51000 01251 7 这个结果是令人失望的,正如你所看到的那样,它们和印在 U P C底部的数字完全相同。 3 4 第9章 二 进 制 数 57 下载
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有