趙清實(shí)
支付碼、名片碼、健康碼、校園碼、復(fù)學(xué)碼、乘車(chē)碼、挪車(chē)碼……這么多碼?光疫情期間,微信“碼上經(jīng)濟(jì)”就用掉了1 400億個(gè)二維碼,那么就有同學(xué)問(wèn)了:二維碼會(huì)被人類(lèi)掃完嗎?
問(wèn)題很簡(jiǎn)單,答案是:會(huì)。
因?yàn)槎S碼的尺寸是有限的,那二維碼的數(shù)量就是有限的。但是掃完所有的二維碼,需要很長(zhǎng)很長(zhǎng)很長(zhǎng)很長(zhǎng)的時(shí)間?,F(xiàn)在的二維碼有40個(gè)官方版本(二維碼是由Denso公司于1994年9月研制的一種矩陣二維碼符號(hào))。從Version1-40,最小為21×21、最大為177×177矩陣。
其中,微信名片就是37×37的矩陣規(guī)格,微信的付款碼是25×25的矩陣規(guī)格。方便理解,我們用方塊作為矩陣單位,我們來(lái)舉個(gè)例子:下面四宮格,每個(gè)格子有兩種顏色變化,請(qǐng)問(wèn)一個(gè)四宮格可以組合出多少個(gè)圖形?
解:1個(gè)格子2種顏色,那就是2種可能,2個(gè)格子就是4種可能,3個(gè)格子就是8種可能,4個(gè)格子就是16種可能。所以,四宮格能夠組成24,共16個(gè)圖形,以此類(lèi)推25×25的微信付款碼就是……
每一排有25個(gè)方塊,共25列,除去定位用的方塊和冗余糾錯(cuò)的方塊等,還剩下478個(gè)方塊。按照二進(jìn)制,每個(gè)方塊只有黑或白兩種選擇,所以478個(gè)小方塊理論上一共可以組合2478個(gè)二維碼。也就是一個(gè)25×25規(guī)格尺寸的二維碼可以生成:78043713757899805784539930744829157643714953566624278 77147892399063429347049414050300765257658729927899567 32780351655723861993919822071326572544個(gè)二維碼。
大家可以嘗試念出來(lái)大概多少個(gè)?根據(jù)疫情期間1 400億個(gè)維碼的數(shù)量來(lái)計(jì)算,假設(shè)微信一年會(huì)用掉6 000億個(gè)二維碼。那微信用掉25×25這一個(gè)尺寸產(chǎn)生的二維碼需要多少年呢?我們來(lái)算一下:2478/6 000億=1.301×10132年。
二維碼咱中國(guó)是不缺了,推廣一下,世界上所有人都用,那就是1.301×10132/5 = 2.602 x 10131年(好多億億億億年)。
所以,雖然二維碼也是有限的,但是要掃完所有的二維碼,估計(jì)要等上很久了。