首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

二维码的工作原理是什么?每天都在扫,会被用完吗?

总之,这个由黑白两种颜色小方块组成的图案,是我们很得力的助手,那么,为什么只要我们随便一扫,它总能带给你所需?

二维码与条形码的比较

简单的说,二维码是一种开放性的信息存储器,它能将固定的信息存储在自己的黑白小方块之中。而且它可以无限使用,对识别器没有任何要求,任何设备只要带扫一扫的功能,都可以将它所存储的信息读取出来。

它的工作原理就跟商品外包装上的条形码一样,只不过条形码是通过黑白条纹来存储商品的信息的。

虽然它们的原理相同,但条形码的信息存储量比二维码要少的多,条形码只能进行最基本的信息存储。这主要是由于条形码只能在水平方向进行识别,而条形码的水平宽度有限,信息存储量无法拓展。

二维码的工作原理

与条形码想相比,二维码把黑白条纹改成黑白小方块,加大了信息的存储量,也能表示更多的数据类型,在读取信息的同时,可以从水平方向和垂直方向来读取,这样又能加入更多的信息在二维码之中。

二维码工作的原理其实就是二进制算法。二进制是将所有的语言信息用机器语言0和1表达出来。世界上的各种各样的语言文字至少有上千种,人可以通过学习别人的语言来进行翻译,但机器却不可以。

可以说,二进制编码是一切语言的翻译器,同样我们可以在文字语言和机器语言之间相互转换。

二维码就是将我们能看懂的文字语言,以机器语言的形式来存储。其中黑色小方块代表的是1,白色小方块代表的是0,黑白相间的图案其实就是一串编码,扫码的过程即翻译编码的过程。

那编码起始位置怎么定位呢?我们注意到,每个二维码的边角部位都有三个位置探测图形(大方块),由此来起到定位作用。三个点能确定一个面,这能保证我们在扫码时,不管手机横着扫、竖着扫或者斜着扫,都能获得特定的信息。

二维码的颜色

那么二维码为什么是单一的黑白形式?这也跟二进制有关,即黑色的小方块代表1,白色小方块代表0,所以常见的二维码都是以黑白的形式来展现。

通常我们所看到的以及大多数软件生成的二维码都是黑色的,但事实上彩色的二维码生成技术也并不复杂,并且备受年轻人的喜爱,有一些网站也可以提供彩色二维码在线免费生成的服务。

当然彩色二维码,会具有普通黑白二维码的所有功能,呈现出来的是彩色外观。制作彩色二维码也是有要求的,即前景色必须为深色,背景色必须为浅色,而且定位点的颜色与其他方块的颜色尽量类似,不然就会影响识别。

基于二维码的纠错功能,即使二维码部分被覆盖或丢失,扫描设备依然能够识别出其记录的完整信息。

当前已有不少“个性二维码”的生成工具,把一些个性图案与二维码进行合成,得到个性化并能被扫描设备识别的二维码,这种“个性二维码”得到人们喜爱并且也流行起来。

全世界每天消耗二维码100亿个,每年消耗3.65万亿个。二维码会用完吗?

目前,标准的二维码共有40种,最小为21×21矩阵,最大为177×177。

这里以33×33版本为例,来说明一下二维码的数量有多少:

此版本中,总共包含了1089个方块。不过,并不是每个块都能填进去有意义的信息。其中,有三个黑色的大方块用于扫描定位,不包含信息。每个用于定位的黑色大方块由7×7=49个小块组成,定位用掉的方块总数为49×3=147块。因此,用于表示信息的方块总数为1089-147=942块。每个方块有两种填充方式,要么0要么1,所以33×33版本的二维码总数为2^942,即3.7×10^283(37后面跟了282个0)。

假设全世界每天消耗二维码100亿个二维码。如果自宇宙在138亿年前诞生以来,人类就开始以这个速度消耗二维码,人类也才用了5.0×10^22个。也就是说,33×33版本足够人类使用7.3×10^260个“138亿年”,或者说10^271年,即1000万亿亿…前后共计33个亿…亿亿年。

如果再算上另外39个版本,二维码总数更加巨大,例如,177×177版本的变化总数高达5.2×10^9386(2^31182)。理论上,如果人类能够在宇宙中存在足够漫长的时间,二维码是可以用完的,但这个时间实在太漫长了,也许就连宇宙本身都等不到那一天。

即便二维码真的用完,说不定遥远未来的人类还会继续增加更多的维度,其变化形态将会更多。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230206A0373200?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券