什么是余3码?\n


余3码(或 XS3)是一种用于表示十进制数的非加权码。它是一种自补二进制编码十进制(BCD)码和数值系统,具有偏差表示。它在算术运算中尤其重要,因为它克服了使用 8421 BCD 码相加两个十进制数字(其和超过 9)时遇到的缺点。余3码算术使用与普通非偏差 BCD 或二进制 位置数制 不同的算法。

余3码的表示

余3码是非加权的,可以通过对每个十进制数字加 3 来获得,然后可以使用每个数字的 4 位二进制数来表示。给定二进制数的余3码等效值是使用以下步骤获得的

  • 找到给定二进制数的十进制等效值。
  • 将十进制数的每个数字加 +3。
  • 将新获得的十进制数转换回二进制数以获得所需的余3码等效值。

您可以将 0011 添加到二进制编码十进制数 (BCD) 中的每个四位组,以获得所需的余3码等效值。

以下是十进制数字的余3码 -

十进制数字
BCD 码
余3码
0
0000
0011
1
0001
0100
2
0010
0101
3
0011
0110
4
0100
0111
5
0101
1000
6
0110
1001
7
0111
1010
8
1000
1011
9
1001
1100

代码 0000 和 1111 不用于任何数字。

示例 1 - 将十进制数 23 转换为余3码。

因此,根据余3码,我们需要在 十进制数 中的两个数字上都加 3,然后将结果转换为每个数字的 4 位二进制数。所以,

= 23+33=56 =0101 0110,这是给定十进制数 23 的所需余3码。

示例 2 - 将十进制数 15.46 转换为余3码。

根据余3码,我们需要在十进制数中的两个数字上都加 3,然后将结果转换为每个数字的 4 位二进制数。所以,

= 15.46+33.33=48.79 =0100 1000.0111 1001,这是给定十进制数 15.46 的所需余3码。

转换为二进制编码十进制 (BCD) 码

应该注意的是,对于给定的余3码,可以通过将数字分成 4 位一组(从整数部分的最低有效位开始,从分数部分的最左边的数字开始)来确定等效的十进制数。然后从每个四位组中减去 0011(=3),这将是该数字的二进制十进制数字 (BCD) 形式。现在,您还可以通过将每个 4 位组转换为十进制数字来将此 BCD 码转换为十进制数。

示例 - 将余3码 1001001 转换为 BCD 和十进制数。

因此,将每个组分成 4 位,即 0100 1001,并从给定数字中减去 0011 0011。所以,

= 0100 1001 -0011 0011 =0001 0110

因此,二进制编码十进制数为 0001 0110,十进制数为 16。

自补性

余3码是非加权的自补码。自补二进制码总是对其自身进行补码。二进制数的补码可以通过用 1 替换 0 和用 0 替换 1 从该数中获得。二进制数及其补码之和始终等于十进制 9。换句话说,余3码的 1 的补码是对应十进制数的 9 的补码的余3码。

例如,十进制数 5 的余3码是 1000,1000 的 1 的补码是 0111,它是十进制数 4 的余3码,它是数字 5 的 9 的补码。

余3码的优点

以下是余3码的优点:

  • 这些是非加权的二进制十进制码。
  • 这些是自补码。
  • 这些使用偏差表示。
  • 代码 0000 和 1111 不用于任何数字,这对内存组织是一个优势,因为这些代码可能会导致传输线路出现故障。
  • 它没有限制,并且大大简化了算术运算。
  • 它在算术运算中尤其重要,因为它克服了使用 8421 BCD 码相加两个十进制数字(其和超过 9)时遇到的缺点。

更新于:2023 年 10 月 31 日

64K+ 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.