他指了一下二维码,这次笔尖浮着,和宁鸽的手背保持着几毫米的距离。
可是没碰和碰了一样。
好像宁鸽全身的神经末梢全部集中到他笔尖虚虚浮着的地方。
还不如干脆点一下,给个痛快。
“左上这个寻像图形的正下方有三个小格,表示这个二维码的掩码是什么样式的,”裴寒继续说,“掩码就像面具,遮住了原本的二维码,不肯直接给你看它的本来面目。
“这里代表掩码样式的三格是黑白黑,意味着掩码的样式是黑白交错的棋盘格。”
他的笔尖终于离开宁鸽的手背,在纸上画了棋盘一样的格子。
“原码加上掩码,就是你看到的二维码,我们现在要先把掩码去掉。去掩码的规则是异或运算,白加白得白,黑加黑得白,白加黑得黑。”
裴寒用右下角一小块做示范。
“看右下这四块格子,去掉掩码后,按之字型自下往上读,这四格是白白黑白,就是0010,代表这个二维码是字母数字型。我们平常用的二维码是UTF-8编码,这个不是,里面只有数字和字母。”
“然后是记位指示符,这个版本是九位,先不用管。接着就可以继续,在两格宽的范围内之字形由下往上读出十一位编码。”
卷毛一直在急切地看一眼倒计时,再看一眼凑在一起的裴寒和宁鸽他俩,无奈唯一的那条胳膊被欧文牢牢抓着,过不来。
“用手算二维码,这不是疯了吗?”
“这得算到下辈子去吧?”
“算不出东西来不是浪费时间吗?一共就一小时啊。”
他遥遥地唠叨个没完。
裴寒不理他,把十一位的二进制编码写在纸上,01101101010。
他快速地加了一下,转成十进制,就是874。
“用874除以常数45,得19,余19,两个19就是前两个字符的编码。”
“字母数字型的编码表很简单,0到9对应数字0到9,从10开始对应字母A,所以19对应的是字母J。拿到J和J。”
裴寒用同样的方法,写出下两个字符合起来的编码00000000110,也就是6,除以45后拿到数字0和数字6。
然后继续,拿到3和1。
这就是宁鸽“妈妈”的编号,JJ0631。
他们身上的二维码解码后,开头的几个字符就是每个人母亲的编号。
“我看我的二维码发现的。我的二维码上就是父母的编号,JH4213和JI5096,然后是我的,KW9309。”
裴寒放下笔,抬起头,发现宁鸽正一动不动地看着他。
“怎么了?”他柔声问,“不懂?”
“不是。”宁鸽说,“我不太好意思打断你,其实我特别想去洗手间。”
刚才为了压秤,水灌得实在太多了。
裴寒:“……”
卷毛很绝望:“去洗手间?能不能先不去啊?倒计时在走啊?”
“不能。我坚持不住了。”宁鸽站起来,“马上回来。”
等宁鸽回来时,裴寒还坐在那里,懒洋洋地一圈圈转着手里的笔,在卷毛求救的目光中消极怠工。
宁鸽去过洗手间,神清气爽,把小胖子的头盔转过来,拿过裴寒的笔,开始按他刚才说的试着解码。
宁鸽点点头盔,“这个掩码的三格是——黑——黑——黑,掩码是什么样式的?”
“黑黑黑?”裴寒抿了一下唇,掩饰住笑意,在纸上画,“……呃……是一黑竖条两白竖条。”
他笑得有点奇怪,宁鸽突然意识到是什么意思,抬头瞪着他。
他却像什么都没说一样,若无其事地低头去看宁鸽的纸。
宁鸽把右下小格子的掩码去掉,拿到了和裴寒刚刚做出来的一样的结果,同样是数字字母型,前两个字母也是J和J。
不同的是后面,得到了数字1和0。
接着是数字1和3。
“JJ1013。”
这就是小胖子妈妈的编号。
裴寒站起来,卷毛才赶紧问:“真算出来了?算出什么来了?
“他妈妈的编号。我们知道他妈妈是谁了。”裴寒转了一下头盔,“我们现在去找人。”