EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
EDA365原创 作者:巢影字幕组 7 g5 G3 a- v$ [8 F' m
2 I' f/ E* G1 [, k/ y
; A- b8 D1 @( D6 H3 g; E! ^
5 a! ~2 X8 M3 L6 b5 G5 @2 J* [( j" _2 N! m
: o _' H# I( }* l) J! {2 Q$ Y
不知道从什么时候开始,我们的生活突然之间就充满了二维码,看网页要扫二维码,加好友要扫二维码,现在连楼下卖草莓的大爷都支持扫码支付了。 那么你有没有想过这个长得很奇怪的东西到底是怎么来的?二维码到底是什么原理呢?
/ R2 o% n4 V; M8 W
* U* U: ^/ j+ r4 N6 V' M
二维码,就是把信息翻译成黑白小方块,然后填到大方块里。这有点类似于中学考试中用的答题卡。 就是把信息变成机器可扫描的图案。当然二维码的原理和答题卡还不太一样。
& @# D' L7 h: e
$ o" K$ }" s( y3 A/ c. t
我们先来介绍二维码的哥哥条形码,也就是超市收银员扫的那个黑白条,电脑在水平方向上识别粗细不均的黑白条,就能找出藏在其中的商品编号信息。
% k1 D$ U0 c8 h) q
; l, i4 g) y2 K3 U" e7 W
相比只在一个维度上,携带信息的条形码,二维码在水平垂直两个维度上都携带了信 字母、符号等这些字符,换了一身衣服,把它们打扮成了能被手机相机识别的黑白条或块。那么最关键的问题来了,这些字符到底是怎么变成这种二维码图案的呢?这就要提到一个人类具有划时代意义的伟大发明---二进制。 我们平时使用的数字、字母、汉字等各种字符,虽然画风完全不同,但是机智的人类发明了一个方法,使它们都可以被统一转换成由0和1组成的二进制数字序列。这个转换的过程叫做编码。国际上有几套通用的编码规则。
' W4 ^8 u% q4 x
今天就用一个例子来感受一下编码是怎么回事儿。比如AB这个由两个英文字母组成的字符。 根据编码规则,每一个独立的英文字母都有唯一的一个十进制数字与之对应。而像【AB】 这样的字符串,只要在对应数字的基础上再做运算, 把运算结果再转化成二进制,整个计算机和互联网文明都是建立在这种二进制编码上的。你现在看的视频,在你的手机里其实也只是一串0和1而已。
4 U/ `8 a: ^0 V" s* c
我们回到二维码的生成原理上,字符再变成只有零和一组成的数字序列后,再进行一系列优化算法,就得到了最终的二进制编码。 在最后这串编码中,一个0对应的就是一个白色小方块,一个1对应的就是一个黑色小方块。我们把这些小方块按照八个一组填进大方块里。这就是一个完整的可以被手机相机识别的二维码图案了。
) n U9 ~0 W& Q+ |# R
我们看到二维码上都有三个固定的大方块,这个其实是用来给二维码定位的,这样,不论你在哪个方向上扫描二维码,得到的信息都是一样的。 N# _% S1 ]0 I, x8 i Q
; _ O& R" q9 N+ {4 i( r1 z
出品|EDA365 作者|巢影字幕组
/ c3 C, V7 _' \) k3 Y
% U" e& j7 \+ E+ t! a7 i1 q$ c
注:本文为EDA365电子论坛原创文章,未经允许,不得转载 " ]! r" x( u! V, Z% D) b
' S; J2 q7 W" h5 J, Y& K- @
! P% N8 z) z( n( u1 a- Z
|