# 二维码会被人类扫完吗？

- 作者：爱范儿
- 发布时间：2020-05-27 14:43
- 分类：生活
- 原文：https://www.ifanr.com/1339965

![](https://s3.ifanr.com/wp-content/uploads/2020/05/photo-1550482781-48d477e61c72.jpeg)

支付码、名片码、健康码、校园码、复学码、乘车码、挪车码码码码码码码码码码码码码码码码码码码码码码码码码码，这么多码？光疫情期间，**[微信「码上经济」](http://mp.weixin.qq.com/s?__biz=MzA3NDEyMDgzMw==&mid=2652956839&idx=1&sn=1518c5d2df710fc0a946ad78e95e44eb&chksm=84d0e349b3a76a5f9ea631227bddeebfc27c3eeb30680d4394190d7b79b091965097c4d2d78b&scene=21#wechat_redirect)**就用掉了 1400亿个二维码，那么就有同学来问了：

二维码会被人类扫完吗？

我们邀请到两位鹅厂开发老鹅来解答：

这个问题很简单，**答案是：会。**

**因为二维码的尺寸是有限的，那二维码的数量就是有限的。**

**但是扫完所有的二维码，需要很长很长很长很长**的时间。

现在的二维码有40个官方版本（二维码是由Denso公司于1994年9月研制的一种矩阵二维码符号）。

从Version1-40，最小为21\*21、最大为177\*177矩阵。

其中，微信名片就是37×37 的矩阵规格，微信的付款码是 25×25 的矩阵规格。方便理解，我们用方块作为矩阵单位。

![](https://media.ifanrusercontent.com/user_files/wpdata/images/02/77/0277e99ad5e42287335f2cd96cfb81bee3201b56-e7cfdb9b7e03b503f0c3488fdfc97a30bd71d2b3.jpg)

▲ 扫~37×37矩阵的二维码



如何计算，各矩阵中生成的二维码个数？我们来举个例子：

下面四宫格，每个格子有两种颜色变化，请问一个四宫格可以组合出多少个图形？

![](https://media.ifanrusercontent.com/user_files/wpdata/images/28/9f/289feeb21c92afac879db7b81fe01cf2de17d10a-4d8c27caa837f1622c97fb19e9214896ae7da5f1.jpg)

解：一个格子两种颜色，那就是两种可能，两个格子就是四种可能，三个格子就是8种可能，四个格子就是16种可能。所以，四宫格能够组成2^4，共16个图形。

![](https://media.ifanrusercontent.com/user_files/wpdata/images/b5/dc/b5dc7867ae770a2f3b56fba6eda7fb99cca25e7b-92f1cd71546b5c3704fd67eeb2c671e03b94c9b0.jpg)

以此类推：

![](https://media.ifanrusercontent.com/user_files/wpdata/images/82/96/8296049f4ef66c8e94f7d47d25d2fd316aa10d6b-fb94f2be71963832bdc1a06564be0790229e2e0a.jpg)

▲ 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 年（好多亿亿亿亿年）

![](https://media.ifanrusercontent.com/user_files/wpdata/images/d1/03/d10353f498a903b315d4500fad7ed0b8724bed04-2d4de5b43629e4b106585cc09013253760ca1659.jpg)

**还能给力推广一下么？**

根据资料，宇宙中大约有700垓（7×10^22）颗恒星，又根据德雷克公式

![](https://media.ifanrusercontent.com/user_files/wpdata/images/b4/da/b4daf2fff92a9c4a1afa1501859610266fe81fc4-f5df1d29a4cae4243f46da0b747faf7b13656ddb.png)

预计会有15600000个星球有智能生命，假设每颗星球上有地球同等人口需要扫二维码的外星人，那够全宇宙扫

2.602 x 10^131 / 1.56×10^7 = 1.668×10^124 年（很多亿亿亿亿年）

**参考热寂理论对宇宙终极命运猜想， 一千万亿年后，行星脱离轨道，所有生物都没办法依靠恒星活着了，那个时候二维码还是远远没有扫完。**

看来，全宇宙都用上也不愁了。

只是，人类可观测宇宙有大约为93 × 10^9光年，所以离地球远点的星球，估计要等上好一阵才能扫到码了。

![](https://media.ifanrusercontent.com/user_files/wpdata/images/83/bb/83bba45da2fda8f5a8831a4bfb278cabccef9fbd-5fbab3395419d81cb64f26839716a8fda9e14880.jpg)

**[本文](https://mp.weixin.qq.com/s/rWzBJc3aq2q_IdpQOw0_Eg)来自微信公众号「腾讯」（ID：tencent），爱范儿经授权发布。**
