七夕缘起-第4.1章-数据损坏的烦恼

七夕缘起-第4.1章-数据损坏的烦恼


一个宁静的早晨。
牛郎早已醒来,坐在桌边,望着天边初升的太阳。
现在的牛郎已经修得仙身,添了几分帅气,也多了几分洒脱。
不过,由于天书契的原因,牛郎的通信类仙术无法生效,所以,与织女的沟通,还是要依赖喜鹊。

牛郎写了一封长信,将自己的经历第一时间告诉了织女。
织女也回复了一封很长的信,表达了自己的兴奋与想念之情。
读着织女的回信,牛郎感动得热泪盈眶:“这有些语句,怎么这么不通顺呀……”
牛郎想了想:“难道是,当传输数据过大时,可能出现数据损坏的情况吗?”
“这样看来,有必要尝试数据的校验与重传递了。”

因为喜鹊是凭借记忆传递,发送端的喜鹊将信件中的内容,一句一句口口相传发出去;
接收端最后的那只喜鹊,将每一句按顺序收集起来,重新写到纸上,形成一封新的信件。
之前已经有完善的丢包重传机制,一句话如果丢了,那么会被重新发送;
但是,如果某只喜鹊记错了,导致内容有误,这又该怎么办呢?

“要不然每句话限定字数怎么样?”牛郎首先想到了字数匹配,这样多个字少个字就能看出来了。
“比如,每句话都是14个字,即两句七言诗。虽然很文雅,但不够通俗,简直就是‘不说人话’了。”
“而且,某个字如果错了,也区分不出来。”

牛郎低头看着手中的信,忽然有了一个想法:“不如,在每句话后面,标注上这句话的总笔画数目,这样准确率会极大提高。”
“只是,还是有个小小的不足,每句话后面都带个笔画数,也不像‘人话’呀,有没有什么更正常的方式……”



牛郎尝试着模拟了一下:“你好,织女。24今天开心吗?22”
这样子,准确度是会提高不少,但是,可读性不好。
有没有什么更好的方式,能兼顾两者呢?

加个格式?“你好,织女。(24)今天开心吗?(22)”
这样也不太好,虽然清晰了许多,但依旧读起来不顺畅。

“要不在一段的末尾加个总的字数?”牛郎再次摇摇头,
“这样字数对阅读的影响变小了,但是不能及时发现问题,重传一段的成本也高很多。”
牛郎低头沉思。

“对了,这个笔画的概念,其实我并不关心。也就是说,它完全可以只存在于传输过程。”
牛郎仿佛找到了开门的钥匙。
“我还是按照正常的方式写信,只是要求喜鹊在发送每一句话时,带上一个笔画数。”
“接收方收到后,验证无误则将原话写下,无需记录笔画数。而验证出错,则要求对方重新传输。”
“这样,既能保证准确性,也能保证最终结果的可读性。”

牛郎起身,利用沙玉戒指腾空,向着喜鹊山上飞去。
“对了,有时间该学个飞行的仙术了,总是用沙玉戒指挺累的……”牛郎自言自语。
来到山顶,远远地就看到三人,小艾、小皮、小冰在庙前的空地上,正在切磋交流。
“别打了,求帮个忙!”牛郎喊到。
小冰看到牛郎,随手扔过来一道冰锥。牛郎轻弹手指,一道沙幕出现,成功格挡。
“这打招呼的方式,越来越危险了呀……”



四人来到庙中,围坐桌前,牛郎解释了自己的想法。
小艾听后,摇摇头:“这个想法很好,但是,对于喜鹊来说,有些过难了。”
“你想,普通的一句话,它不是随机的文字,而是一个有明确意思的组合,这就很容易记忆。”
“而后面加一个数字,当这句话比较长时,非常容易记错。”
小皮补充道:“你应该还能记得自己刚来时第一句话是什么。”
“但是如果你说完后在加上它的笔画数,我敢说不到一个时辰,你就记不得这个数字了。”

牛郎心有不甘:“完全将校验语义化,我也想过,但是,太难了,并且可能让语句变得很奇怪。”
小皮想了想,说:“也不是完全不行,关键是笔画数太大了,一般要两位数到三位数,自然容易错。”
“如果只是0-9的一个数字,那么,其实也不是那么容易记错。”

“随便几个字就会超过9笔,只用一位数,还真是有点难。”牛郎说。
这时,小冰插话了:“其实也简单,只取个位数,不就得了。”
牛郎一想,好像在理:“确实只有1位数,此时只有误差刚好是10的倍数,才会出错,准确度也很高。”

小艾提了一句:“虽说是校验,是不是有点太简单了?这种内容,王母那边一眼就看出来了吧?”
牛郎一笑:“有道理,虽然以天庭的水平,迟早会发现我们的算法,但是还是想难为他们一下。”
接着,牛郎打了个响指:“有办法了。其实,取个位数,就是除以10的余数。我们可以改为取除以7的余数,这样就不好猜了。”



小皮略作沉思,说:“我觉得,我们不要用余数了,而是让余数与7再作差一次。”
“相当于前面的笔画数,加上末尾的校验数后,刚好可以被7整除。”
小艾说:“忽然想到一点,咱们要统计一句话的笔画数,其实还是挺麻烦的。”
“随口说一句话容易,但一眼看出来笔画数目,挺难。”

牛郎说:“也不是每一只喜鹊都需要校验的,咱们只要首尾两只喜鹊校验,就足够了。”
“另外,笔画统计的耗时,如果和信息在途中传递的时间相比的话,这个时间还是非常短的。”
小皮反驳道:“时间虽短,但是让你一致做这种数笔画的事情,很快应该就厌倦了吧?”
牛郎想了想,说:“确实,这个工作过于枯燥了。但是我有不想放弃笔画校验,我有个想法。”
“笔画,不应该数,而应该是查阅的。而且,要有喜鹊专门负责。查阅减少枯燥,熟能生巧提高效率。”
“也许一段时间后,负责统计笔画的喜鹊,听完一句话就能知道有多少笔画了。”

小艾问:“查阅,不会是需要准备一本字典吧?我总觉得,翻字典比数笔画更慢呢……”
牛郎回答:“当然,这里必须要优化下的。对了,应该不用那么麻烦了。你们不是神仙么,施法造个笔画转换器吧?”
“不会。”三人异口同声。
小冰说:“牛郎啊,你也是神仙了吧,自己来造一个呀?”
牛郎摇摇头:“我现在什么仙术都不会……”
小冰说:“我们可以教你呀!来来来,仙魔本一家,接下来我跟你说说魔法入门:HelloWorld……”


05
小艾补充道:“HelloWorld,是上古时期流传下来的仙术,它是最简单的仙术,却也被称为最高深的仙术,它包含着这个世界的秘密。”
“当然,传说而已了,无数人研究过HelloWorld,其实并没有什么特殊之处。”

“让我们开始吧,”小冰说,“现在,想想面前有8个能量点,仔细体会,然后尝试分别控制每个点。”
牛郎闭上眼睛,想想8个能量点还是比较容易的,虽然不知道有什么用。
小冰说:“睁开眼睛就好,真的很简单的。现在增加第四个、第七个点的能量。”
牛郎努力控制着,当这两个点的能量达到一个高峰时,空中竟凭空出现了一个“H”!
“怎么样,好玩吧?”小冰问道。
牛郎笑了笑:“还真挺有意思的。神仙果然不一样。那接下来该怎么办呢?”

小冰说:“把第4个点的能量降下来,然后提高第1、3、6这三个点的能量。”
牛郎吃力地完成了,空中的“H”转瞬变为了“e”。
“太神奇了!”牛郎感叹道,“不过,这能量的高低,有什么规律吗?”

“没有。”小冰说,“正式因为没有规律,所以才是它的高深之处。”
就这样,牛郎凭借着惊人地天赋,在小冰的指导下,竟然一次就成功施展了“HelloWorld”仙术。
“对了,”牛郎问道,“神仙的仙术与魔族的魔法有什么区别吗?”
小冰回答:“本质都一样,只是消耗不同而已。仙术消耗‘仙源’,魔法消耗‘魔力’。”
小皮补充说:“仙源是很柔和的力量,但魔力却是很霸道的力量,同样的法术,神仙和魔族施展效果是不一样的。”


06
牛郎看着自己面前的“HelloWorld”,颜色偏淡蓝色,圆润平静,果然是一种非常柔和的感觉。
这时,小冰轻轻挥手,也施展出了“HelloWorld”。
只见“HelloWorld”整体为猩红色,虽是红色,却毫无热烈之感,给人一种冰冷、绝望之意,
边缘镶嵌着淡淡的黑色,加之凌厉而又分明的棱角,隐隐透出一种强烈的杀意,让人背后直冒凉风。

牛郎看后,心头一惊:“魔法与仙术,果然差异巨大。一个普通的‘HelloWorld’,竟可以有如此杀气。”
小冰微微一笑:“来,试试效果?”
说完,小冰将手一挥,猩红色的“HelloWorld”向着牛郎直冲而去。

如同摧枯拉朽一般,牛郎凝成的“HelloWorld”应声而碎,化作点点蓝色光斑。
而那猩红的“HelloWorld”,正中牛郎的胸膛,然后,弹开了……
牛郎先是一惊,然后叹了一口气:“这个法术没有攻击力么……”

小冰看着疑惑的牛郎,解释道:“‘HelloWorld’吧,其实是个照明法术。”
“仙魔的法术性质不同,而我的魔力比你强得多,自然会将你的法术击碎。”
“学会了,晚上起来,就再也不用摸黑了。”
“甚至,装点一下室内分位也挺好。”
说者,小冰再次施展魔法,一道道五颜六色的“HelloWorld”随着小冰的手势,飞向了屋顶的各处。

望着满屋闪烁着的“HelloWorld”,小冰说:“魔族节日的时候,我们就在这样的装饰下,一起唱歌跳舞。”
牛郎不禁感叹:“你们魔族真会玩……”


07
“今天学会了一道法术,没有白来。”牛郎说,“不过咱们还是先谈正事吧。”
“关于校验的字典问题,我回去再想想。这段时间,可能需要手动数一下了。”
“还有一点比较重要,那就是,笔画校验失败,需要重新传递的话,应该有一个最大重传次数限制。”
“如果一直重传,很可能因为一句话的错误,导致整个通信都被低效化,甚至阻塞。”

小皮说:“次数么,我觉得咱们笔画数目用了7计算,不如重传次数也按7次来计算吧。”
牛郎点点头:“我也觉得合适。发送方来进行计数,达到7次后,在发送信息的笔画数后面,注明下‘最终版’。”
“接收方收到后,不管是否正确,都不能要求重发。即使要求重发,发送方也会置之不理。”
“当然,这里如果正确,那么与普通句子一致地处理就好。如果7次重试还是有错,辛苦在句子后面标出来吧。”

“哈哈哈哈”小冰笑了,“这种通信过程处理不了的错误,就只能人工处理了么?”
牛郎回应道:“总要考虑体系搭建的得失呀。完善的纠错机制固然好,但总体成本也高。”
“7次传递还是出现错误,本身这种概率极低的。说极端一点,假定数据错误率在50%,7次都是错的概率有多大?”

“应该在1%左右。”小艾脱口而出,“每次都命中那50%的概率,也就是0.5的7次方。”
牛郎轻轻鼓掌:“神仙果然神算!目前我看与织女的往来信件,可知的错误量不超过10%,7次的话,基本可以认为不可能出错了。”


08
讨论完毕,小艾提议道:“怎么这个校验,总该有个名字吧?”
牛郎想了想,说:“文字的笔画加上后面的数字,刚好被7整除。”
“也就是计算过程中,可以从6开始倒数,每次数到0时,再重新从7开始。”
“文字笔画数完时,此时数到几,后面这个校验数字就是几。”

“这样倒是构成了一个循环,同时最后生成了一个冗余的数字用于校验。”
“不如就叫做——‘循环冗余校验’吧!”

小冰连连拍手,“这名字听起来是有点怪,不过,也感觉非常高大上!”
“完美!”小艾说,“既然如此,那我们即刻行动吧!”
说完,小艾立即召唤了一只喜鹊,详细说明了情形。
“这个规则只需要发送与接收方的喜鹊参与,链路上的喜鹊无需知晓。一天之后,规则就会生效。”小艾说。

“多谢几位。”牛郎赶紧道谢,“今日走的匆忙,下次一定带些豌豆前来。”
“对了,小冰,你有什么喜好的食物吗?”
小冰想了想,说:“没有。要不给我也带些豌豆吧,冰原之上还真是没有这类食物。”
“好!下次见面一定带来!”牛郎起身,想三位道别,“时候不早了,我也该回去了。”

小冰一笑:“别客气,我送你一程吧!”
还不等牛郎回话,小冰轻轻拍出一掌,接着牛郎便飞出庙门,一条完美的抛物线,直冲山下的小屋……


  • 版权说明:
    文章内容系作者原创,转载请注明出处。
  • 封面图片:
    百度百科-你好世界-电影海报
    图片源自网络,如有侵权,可联系作者删除。
  • 拓展资料:
    百度百科-循环冗余校验
    百度百科-HelloWorld

你可能感兴趣的:(七夕缘起-第4.1章-数据损坏的烦恼)