來源:潇湘晨報
據騰訊官方公衆号消息 支付碼、名片碼、健康碼、校園碼、複學碼、乘車碼、挪車碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼,這麼多碼?光疫情期間,微信“碼上經濟”就用掉了 1400億個二維碼,那麼就有同學來問了:
二維碼會被人類掃完嗎?
我們邀請到兩位鵝廠開發老鵝來解答:
這個問題很簡單,答案是:會。
因為二維碼的尺寸是有限的,那二維碼的數量就是有限的。
但是掃完所有的二維碼,需要很長很長很長很長的時間。
現在的二維碼有40個官方版本(二維碼是由Denso公司于1994年9月研制的一種矩陣二維碼符号)。從Version1-40,最小為21*21、最大為177*177矩陣。
其中,微信名片就是37×37 的矩陣規格,微信的付款碼是 25×25 的矩陣規格。方便理解,我們用方塊作為矩陣單位。
如何計算,各矩陣中生成的二維碼個數?我們來舉個例子:
下面四宮格,每個格子有兩種顔色變化,請問一個四宮格可以組合出多少個圖形?
解:一個格子兩種顔色,那就是兩種可能,兩個格子就是四種可能,三個格子就是8種可能,四個格子就是16種可能。所以,四宮格能夠組成2^4,共16個圖形。
以此類推:25X25 的微信付款碼
每一排有 25 個方塊,共 25 列,除去定位用的方塊和冗餘糾錯的方塊等,還剩下478 個方塊。按照二進制,每個方塊隻有黑或白兩種選擇,所以 478 個小方塊理論上一共可以組合 2^478 個二維碼。
也就是一個25X25規格尺寸的二維碼可以生成:
780437137578998057845399307448291576437149535666242787714789239906342934704941405030076525765872992789956732780351655723861993919822071326572544個二維碼。
大家可以嘗試念出來大概多少個?根據疫情期間1400億個二維碼的數量來計算,假設微信一年會用掉6000億個二維碼。那微信用掉25X25這一個尺寸産生的二維碼需要多少年呢?
我們來算一下:2^478/6000億=1.301×10^132 年(超多億億億億年)
二維碼咱中國人是不缺了,小小推廣一下,世界上所有人都用,那就是1.301×10^132 / 5 = 2.602 x 10^131 年(好多億億億億年)
還能給力推廣一下麼?根據資料,宇宙中大約有700垓(7x10^22)顆恒星,又根據德雷克公式
預計會有15600000個星球有智能生命,假設每顆星球上有地球同等人口需要掃二維碼的外星人,那夠全宇宙掃2.602 x 10^131 / 1.56x10^7 = 1.668x10^124 年(很多億億億億年)參考熱寂理論對宇宙終極命運猜想, 一千萬億年後,行星脫離軌道,所有生物都沒辦法依靠恒星活着了,那個時候二維碼還是遠遠沒有掃完。看來,全宇宙都用上也不愁了。隻是,人類可觀測宇宙有大約為93 × 10^9光年,所以離地球遠點的星球,估計要等上好一陣才能掃到碼了。
版權歸原作者所有,向原創緻敬
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!