校验码
进位进制数
基数:每个数码位所用到的不同符号的个数,r进制的基数位r
BCD码
8421码:
每4个二进制位对应一个十进制位(有6个冗余状态)
8、4、2、1分别对应每-位的权值,00001001分别对应09,进行加法后若超出该范围,则需+0110进行修正(强制向高位进1)
余3码
8421码+ (001 1)
2421码
2、4、2、1分别对应每一位的权值
表示04时最高位为0,表示59时最高位为1
ASCII码
大写字母: 65(0100 0001) ~90(0101 1010)
小写字母: 97(0110 0001)~122(0111 1010)
奇偶校验码
由若干位代码组成的一个字叫码字。
将两个码字逐位进行对比,具有不同的位的个数称为两个码字间的距离
一种编码方案可能有若千个合法码字,各合法码字间的最小距离称为“码距”。
奇校验码:整个校验码(有效信息位和校验位)中“1” 的个数为奇数。
偶校验码:整个校验码(有效信息位和校验位)中“1”的个数为偶数。
异或运算后,当结果为一时,则代表为奇数个1,反之则为偶数个,源码异或后则可得偶校验的校验码
海明码
海明码设计思路:将信息位分组进行偶校验——多个校验位——多个校验位标注出错位置
补充:海明码有1位纠错,2位检错能力为了区分1位错和2位错,还需添加“全校验位”对整体进行偶校验注意:有的题目位置编号可能是从小到大的,但处理方法雷同
循环冗余校验码
算CRC码时用异或运算
理论上可以证明循环冗余校验码的检错能力有以下特点:
1)可检测出所有奇数个错误;
2)可检测出所有双比特的错误;
3)可检测出所有小于等于校验位长度的连续错误;
K个信息位,R个校验位,若生成多项式选择得当,且2^R>=K+R+1,则CRC码可纠正1位错
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类