关于汉明码组成的一个疑点的解决

在学习《计算机组成原理》存储器校验的汉明码的过程中,产生了一个疑惑,并利用不等式的证明解决了这个疑惑,下面展示一下解决过程,博君一笑。
首先,明确一下汉明码的组成:
设欲检测的二进制代码为n位,为使其具有纠错能力,需增添k位检测位,组成n+k位的代码。为了能准确对错误定位以及指出代码没错,新增添的检测位数k应满足:
2∧k≥n+k+1
设n+k位代码自左至右依次编号为第1,2,3,…,n+k位,而将k位检测位记作Ci(i=1,2,4,8…),分别安插在n+k位代码编号的第1,2,3,8,…,2∧(k-1)位上。

不知道会不会有人和我有同样的疑惑,会不会出现检测位2∧i>n+k的情况,这样的话检测位便不能顺利安插了。但下面的证明打消了这个疑虑,从最后一位检测位入手证明:
2∧k≥n+k+1①,
假设①成立时,n+k≥2∧(k-1)②恒成立,
①+②得:2∧k>2∧(k-1)+1,
上式显然成立,即假设成立。

由上面的证明可以看出,n+k≥2∧(k-1)恒成立,即最后一位检测位一定可以找到合适的位置,此疑点被迎刃而解。

你可能感兴趣的:(关于汉明码组成的一个疑点的解决)