百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

(四)软件设计师考试之三种常考校验码(附带图片版)

cac55 2024-09-29 09:22 24 浏览 0 评论

#软考##计算机##程序员##中级软考#

校验码

  • 码距
  1. 两个编码中,A码变为B码所需要改变的位数。
  2. 如10101和00110,第一、四、五位都不同,则码距为5。
  • 三种基本校验方式:奇偶校验码、循环冗余校验码、海明校验码

奇偶校验

  • 奇校验:校验编码中是否有奇数个1。
  • 偶校验:校验编码中是否有偶数个1。

循环冗余校验码CRC

  • CRC只能检错,不能纠错。
  • 一个能整除某个多项式的编码。
  • 将原始报文除以指定多项式,将所得余数作为校验位加在原始报文之后,再作为发送数据发给接收方。
  • 形式为:|←数据位→|←校验位→|

1)特点

  • 校验码由信息码产生
  • 校验码位数越长,校验能力越强

2)校验方法

(1)先将多项式转为二进制表示,规则为:根据多项式幂指数看第n位有没有x的n-1次方,有则为1,无则为0。

  • 例如多项式:x^4+x^3+x+1,第1位x^0=1,有;第2位x^1,有;第3位x^2,无;第4第5同理。则此多项式为11011。

(2)在原始报文后面加上多项式最高幂指数个0(以上例则为4个0)。

(3)原始报文与多项式二进制数进行模2运算。

(4)将最后的余数作为校验码,与原始报文拼接,再发送出去。

(5)接收方将收到的数据与多项式二进制数进行模2运算,若余数为0,则校验正确,数据传输正确。

  • 试题1(2017年上半年试题14)

循环冗余校验码(Cyclic Redundancy Check,CRC)是数据通信领域中最常用的一种差错校验码,该校验方法中,使用多项式除法(模2除法)运算后的余数为校验字段。若数据信息为n位,则将其左移k位后,被长度为k+1位的生成多项式相除,所得的k位余数即构成k个校验位,构成n+k位编码。若数据信息为1100,生成多项式为X^3+X+1(即1011),则CRC编码是()。

A.1100010

B.1011010

C.1100011

D.1011110

解:(1)题目已给二进制表示

(2)多项式最高幂指数为3,则原始报文后加3个0:1100000

(3)模2运算结果商为111,余数为10

(4)因为余数必须为k-1位,k=3。所以余数应为010,所以发送出去的报文为1100010。

海明校验码

1)性质

在数据位之间的确定位置插入K个校验位,通过扩大码距实现检错和纠错。

校验码位数:2^r - 1 >= n +k(n是信息码位数,k是校验码位数)。

2)生成过程

设信息位1011:

(1)由2^r - 1 >= n +k得K=3,校验码为3位,占位是1,2,4位。

7

6

5

4

3

2

1

1

0

1


1







(2)将信息位拆分成二进制表示。即

7=4+2+1

6 = 4+2

5 = 4+1

3 = 2+1

展开的二进制表示:第7位的信息位由第4、2、1位的校验码共同校验,其它同理。

(3)找出每个校验位有关联的信息位,进行异或求值。如校验位4关联的信息位是7、6、5,异式得0;校验位2同理,得0;校验位1同理,得1。

(4)最终发送的海明码为1010101。

3)检错

(1)接收到海明码后,将每一位校验位与其关联的信息位进行异或。如上例则为第4位校验位与

第7、6、5位信息位进行异或。

7

6

5

4

3

2

1

i4

i3

i2


i1






r2


r1

r0

r2异或i4异或i3异或i2→0

r1异或i4异或i3异或i1→0

r0异或i4异或i2异或i1→0

(2)如果是偶校验则为0,奇校验则为1。

4)纠错

假设上例接收出错,为1011101,并且是偶校验,则纠错过程为:

(1)

r2异或i4异或i3异或i2 = 1异或1异或0异或1 = 1

r1异或i4异或i3异或i1 = 0异或1异或0异或1 = 0

r0异或i4异或i2异或i1 = 1异或1异或1异或1 = 0

(2)将检错结果排列为二进制:100,这个100就是指出错的位置,即第4位。

(3)纠错方法就是将出错位取反。

以上知识点来源于我看完《软件设计师教程》第五版的相关知识点做的汇总,关注我,后续将会持续追更笔记。望各位软考顺利上岸~

图片版:



相关推荐

服务器用的CPU和个人电脑用的CPU有什么区别?一篇文章告诉你!

服务器cpu和普通cpu的区别你的电脑CPU是‘短跑健将’,服务器CPU却是‘铁人三项选手’——它不追求瞬间爆发力,而要7×24小时扛住千军万马的数据洪流!想知道为什么企业机房敢收天价服务费?答案全藏...

“吃鸡”新版本第1天,玩家进入游戏点击“立即更新”,后悔了!

欢迎诸位小伙伴们来到天哥开讲的《和平精英》“精英小课堂”~每逢两三个月,这款游戏就会迎来一次大版本迭代更新,很多朋友会在第一时间更新版本,前往全新的主题模式里一探究竟。不过也有一些老玩家并不会立刻更新...

中关村在线·aigo存储杯《无畏契约》全国高校争霸赛招募启事

以青春之名,燃电竞之火1赛事背景与宗旨在金秋送爽的9月,芊芊学子们即将回归校园生活。为了给精彩的校园生活锦上添花,由中关村在线与aigo存储联合主办的《无畏契约》全国高校争霸赛正式启幕,旨在为全国高...

【生肖狗】9.7-9.10提醒:人算不如天算,转变即是转机

九月上旬的风,带着秋意的清爽,也带着几分不可捉摸的变数。对于生肖狗的朋友们来说,9月7日到9月10日这四天,格外需要留意“计划与变化”的碰撞——你们向来习惯提前规划,做事稳妥周全...

转转客服IM系统的WebSocket集群架构设计和部署方案

本文由转转技术李帅分享,原题“转转客服IM的WebSocket集群部署方案”,下文有修订和重新排版。1、引言转转作为国内头部的二手闲置交易平台,拥有上亿的用户。用户在使用转转app遇到问题时,一般可以...

上线3天Steam好评率86%,《时间旅者:重生曙光》开启生存恐怖新篇章

这里究竟发生了什么?末日降临,真正的故事悄然启幕。目前,生存恐怖类游戏《时间旅者:重生曙光(Cronos:TheNewDawn)》已在PC(Steam、EpicGamesStore)、P...

什么神仙洗衣机让我一天有28小时?拆开松下「大四洗」藏了啥秘密

说起家庭洗衣的烦恼,想必很多人都有过类似的经历:贴身内衣要单独洗,宝宝的口水巾得小心呵护,宠物玩具怕藏污纳垢,床单被套又体积庞大,把这些东西混在一起洗担心越洗越脏,分开洗又得反复操作,洗完烘、烘完再洗...

爆料人挖出GTA6注册的奇葩域名 延续经典讽刺风格

等待《侠盗猎车手6》的日子跨越了数个春秋,在游戏圈期盼着这部可能成为史上最重磅游戏的过程中,每过一段时间就会有些许消息浮出水面。最新线索来自数据挖掘者Tez2在GTA论坛的发现,他可能偶然发现了关于...

跟着故事去旅行——读《驼峰间:旅行、探险与征服》

作者:郭冰茹《驼峰间》记录了旅行家伊本·白图泰有生之年流传的一则寓言,说一对父子被关进了监狱,有一天儿子问父亲他们每天吃的都是些什么肉,父亲说有牛、羊和骆驼,并且详细地描述了每种动物的特点。但不管父亲...

前端工程师需要熟悉的Linux服务器(SSH 终端操作)指令

在Linux服务器管理中,SSH(SecureShell)是远程操作的核心工具。以下是SSH终端操作的常用命令和技巧,涵盖连接、文件操作、系统管理等场景:一、SSH连接服务器1.基本连接...

跳票6年后,「丝之歌」首发把Steam服务器干爆了 | 玩点好的

文丨果脯樱花隧道昨天晚上22点,「鸽」了6年的《空洞骑士:丝之歌》终于上线,算是了却不少玩家的执念。毕竟,这款游戏实在让人等了太多太多年,而且曾有过多次定档后跳票的「案底」,不知道把多少人都整出了P...

对标魔兽失败!腾讯版“魔兽”运营一年多后,宣布国际服凉凉

大家好,这里是正惊游戏,我是正惊小弟。有很多游戏都想干掉《魔兽世界》,但是大部分魔兽杀手都知道自己不是魔兽的对手,不过是想蹭一下人气而已。腾讯也有一款曾经想对标魔兽的大作,可是上线才一年半国际服就宣布...

408 Request Timeout:服务器等待客户端发送请求的时间过长。

408RequestTimeout是HTTP状态码之一,表示客户端在发送请求时,服务器等待的时间过长,最终放弃了处理该请求。此问题通常与网络延迟、客户端配置、服务器设置或者应用程序的性能有关...

梦幻西游:9.9维护解读,全新时间服锁定129级

梦幻西游:9.9维护解读,全新时间服锁定129级9月9日维护解读。1、教师节活动开启,一共7天。挂机,答题,收笔墨纸砚,收海马,搞起来。或者是提前收点家具,教师节期间体力珍贵,家具会涨价。又或者是教师...

只是拆掉一面墙,空间就立马大变样,这种设计思路,值得学习

你有没有过这样的经历?刚买的房子户型图看起来方方正正,装修完却发现——玄关鞋柜只能塞在角落,进门就撞墙;餐厅正好在过道中间,吃饭像走流程;明明有四个房间,却有一个空着没用,像块食之无味的鸡肋;客餐厅之...

取消回复欢迎 发表评论: