赵清实
支付码、名片码、健康码、校园码、复学码、乘车码、挪车码……这么多码?光疫情期间,微信“码上经济”就用掉了1 400亿个二维码,那么就有同学问了:二维码会被人类扫完吗?
问题很简单,答案是:会。
因为二维码的尺寸是有限的,那二维码的数量就是有限的。但是扫完所有的二维码,需要很长很长很长很长的时间。现在的二维码有40个官方版本(二维码是由Denso公司于1994年9月研制的一种矩阵二维码符号)。从Version1-40,最小为21×21、最大为177×177矩阵。
其中,微信名片就是37×37的矩阵规格,微信的付款码是25×25的矩阵规格。方便理解,我们用方块作为矩阵单位,我们来举个例子:下面四宫格,每个格子有两种颜色变化,请问一个四宫格可以组合出多少个图形?
解:1个格子2种颜色,那就是2种可能,2个格子就是4种可能,3个格子就是8种可能,4个格子就是16种可能。所以,四宫格能够组成24,共16个图形,以此类推25×25的微信付款码就是……
每一排有25个方块,共25列,除去定位用的方块和冗余纠错的方块等,还剩下478个方块。按照二进制,每个方块只有黑或白两种选择,所以478个小方块理论上一共可以组合2478个二维码。也就是一个25×25规格尺寸的二维码可以生成:78043713757899805784539930744829157643714953566624278 77147892399063429347049414050300765257658729927899567 32780351655723861993919822071326572544个二维码。
大家可以尝试念出来大概多少个?根据疫情期间1 400亿个维码的数量来计算,假设微信一年会用掉6 000亿个二维码。那微信用掉25×25这一个尺寸产生的二维碼需要多少年呢?我们来算一下:2478/6 000亿=1.301×10132年。
二维码咱中国是不缺了,推广一下,世界上所有人都用,那就是1.301×10132/5 = 2.602 x 10131年(好多亿亿亿亿年)。
所以,虽然二维码也是有限的,但是要扫完所有的二维码,估计要等上很久了。