首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >9条条形码字母表中3的公式是什么?

9条条形码字母表中3的公式是什么?
EN

Software Engineering用户
提问于 2012-06-15 22:49:21
回答 2查看 1.7K关注 0票数 8

背景:9个条形码字母表中的3个

9种条形码中的3种简单语法

在9个条形码中,字母表和数字后面的公式是什么?

例如,ASCII有一个相对明确的安排。数字从33开始,大写为65,小写为97。从这些起点可以推断出任何数字或字母的ASCII代码。每个范围的起点也是32 + 1的倍数。

条形码似乎是随机的,缺乏顺序。如果我们使用第二个链接中的语法,这是9个中的3个中的前6个字符:

代码语言:javascript
复制
A 100-01
B 010-01
C 110-00
D 001-01
E 101-00
F 011-00

我看不出这里有什么图案,是什么?我对设计人员的设计模式很感兴趣,就像我在设计一个他们自己的算法一样,这个算法可以根据给定字符的顺序为你提供上面的代码。

我很难回答这个问题,它是历史,计算机科学,信息科学吗?我之所以选择程序员,是因为StackExchange搜索的条形码点击量最大,而且我希望将其与ASCII具体联系起来,以解释我正在寻找的公式/解释。

更新

出于好奇,下面是代码39:http://jsfiddle.net/b9chris/LnX2e/2/中所有基本字符的完整列表

(源行摘自我的C#条形码库)

您会注意到,所建议的简化语法可能会使问题有点混乱,因为它可能意味着每个字符都是一个5位数字和一个破折号位置。最后4个字符有许多破折号(很宽的间隙)。实际上,这些代码最好被认为是9位数字,大多数符号的奇数位设置为0。下面是9位数字:http://jsfiddle.net/b9chris/LnX2e/1/

EN

回答 2

Software Engineering用户

回答已采纳

发布于 2012-06-16 03:52:06

我不知道这是否是正确的解释,但根据您发布的内容:前3位是1到6的反向二进制。当前3(4?)中有一个奇数1s时,最后一个数字是1。比特,所以这可能是奇偶校验位。

票数 8
EN

Software Engineering用户

发布于 2013-07-18 15:50:49

你链接到的维基百科页面提到

他们最初的设计包括两个宽的条形和一个宽的字符空间,从而产生了40个可能的字符。

作为参考,它引用了大卫·阿拉里斯的回忆录:

我接着用粉笔的侧面画出一个符号字符,画出宽阔的条子。五杆四间的结构,包括两条宽的杆和一条宽的空间,闪现在我的脑海里。条形图中的五种编码中的两种提供了十个组合,宽的空间为四个单独的组提供了空间。

因此,考虑到这一点,我们可以识别标有标记的条形和空格,并出现一种模式:

代码语言:javascript
复制
  BSBSBSBSB     BB S
  001122334

0 000110100     23 1
1 100100001     04 1
2 001100001     14 1
3 101100000     01 1
4 000110001     24 1
5 100110000     02 1
6 001110000     12 1
7 000100101     34 1
8 100100100     03 1
9 001100100     13 1

A 100001001     04 2
B 001001001     14 2
C 101001000     01 2
D 000011001     24 2
E 100011000     02 2
F 001011000     12 2
G 000001101     34 2
H 100001100     03 2
I 001001100     13 2
J 000011100     23 2

K 100000011     04 3
L 001000011     14 3
M 101000010     01 3
N 000010011     24 3
O 100010010     02 3
P 001010010     12 3
Q 000000111     34 3
R 100000110     03 3
S 001000110     13 3
T 000010110     23 3

U 110000001     04 0
V 011000001     14 0
W 111000000     01 0
X 010010001     24 0
Y 110010000     02 0
Z 011010000     12 0
- 010000101     34 0
. 110000100     03 0
  011000100     13 0
* 010010100     23 0

请注意,第一节中用于0的条形图与其他三节中的10对应。如果我们旋转要排序的条形,40123,那么我们看到的模式是

代码语言:javascript
复制
    40123
04  xx...
14  x.x..
01  .xx..
24  x..x.
02  .x.x.
12  ..xx.
34  x...x
03  .x..x
13  ..x.x
23  ...xx

这是列举5个元素对的明显方法之一。

同样地,如果在表示中从左到右将位命名为B1-S3-B2-S0-B3-S1-B4-S2-B0,并将每段代码表示为SBB索引,那么序列12..90AB..YZ-. *就变成了010 020 021 030 031 032 040 041 042 043 110 120 ... 342 343

票数 3
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/153124

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档