作为代码理论的一部分,块编码是前向纠错 (FEC) 的一种形式,也称为信道代码,它将消息转换为特定的代码,并将信息作为具有预定长度的数据块发送。较大的数据块使接收计算机更容易解码信息并纠正传输过程中发生的错误。分组码和卷积码是FEC中常用的两种码类型。这些类型的代码允许通过不可靠的连接发送消息,并且在消息到达时仍然可以解密。
由于发送消息时会产生噪声,因此有必要使用块编码。当数据需要长距离传输或通过不可靠的连接传输时,汉明权重和距离用于确定出错的可能性。汉明权重是表示所有可能的代码组合所需的位数,汉明距离是在表示合法码之前必须发生多少个错误e,但错误的信息。
例如,如果使用块编码的发送者想要发送一条消息,则只能使用三个可能的代码,每个代码是三位数长,汉明权重将为三。这些代码可能是 000、010 和 011。如果错误导致任何一位数字发生更改,例如 000 更改为 010,则该代码将被读取为合法代码 (010),而不是发送者想要的代码 (000) 。因此,该代码的汉明距离为 1,因为只需更改一位数字即可导致计算机无法修复的错误。
为了降低汉明距离并减少错误,数据作为代码块发送,该代码块被编码为特定的代码。一定长度的码字。原始消息数据位被称为k位。 k 位被翻译到相应的n位,它们是被选择作为每k位的更长代码的代码。添加 1 或 0 以使位长度一致并减少汉明距离。然后,这些 n 位块被传输到接收计算机。
将块编码与两个人进行对话进行比较时,思考块编码是最简单的。当在嘈杂的房间里说话或远距离喊叫时,接收者听到的内容更容易出错。如果句子很长,人们可以通过将整个句子放在上下文中来纠正更多错误,但短句子的错误率更高,因为更难破译人在说什么。
举个例子,如果一个人喊"红猫",而另一个人听到"喂猫",他们错误地打断了句子。然而,如果第一个人说"我有一只红色的猫",而第二个人听到"我有一只喂过的彩色猫",那么句子的上下文就很容易理解确定此人实际上说的是"red"而不是"fed"。这是块编码背后的基本原理,也是使用更长、统一的代码来帮助计算机准确翻译信息块的基本原理。
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!