【第一章概述—计算机中的数制】压缩 BCD 码和非压缩 BCD 码有什么区别举例子

BCD(Binary-Coded Decimal)码是一种将十进制数以二进制形式表示的方法。在 BCD 码中,每一位十进制数都用四位二进制数表示。BCD 码分为压缩 BCD 码非压缩 BCD 码两种,它们的区别主要体现在数据存储和表示方式上。

非压缩 BCD 码(Unpacked BCD)

特点:

  • 每个十进制数字(0-9)使用8位二进制表示,其中高4位通常是零,低4位表示实际的十进制数字。
  • 每个十进制数字占据一个完整的字节。

例子: 十进制数 56 的非压缩 BCD 表示:

  • 5 用二进制 00000101 表示(8位,其中高4位为0,低4位为5)。
  • 6 用二进制 00000110 表示(8位,其中高4位为0,低4位为6)。

因此,十进制 56 的非压缩 BCD 码为:

00000101 00000110

压缩 BCD 码(Packed BCD)

特点:

  • 每个十进制数字仍然使用4位二进制表示,但两个十进制数字被压缩到一个字节中,高4位表示十位,低4位表示个位。
  • 相比非压缩 BCD,压缩 BCD 码更加节省存储空间。

例子: 十进制数 56 的压缩 BCD 表示:

  • 5 用二进制 0101 表示(4位)。
  • 6 用二进制 0110 表示(4位)。

因此,十进制 56 的压缩 BCD 码为:

01010110

总结

  • 非压缩 BCD 码:每个十进制数使用8位二进制表示,占据更多的存储空间,适合某些特定场景(如处理器指令集中的应用)。
  • 压缩 BCD 码:每两个十进制数压缩到一个字节中,节省空间,更适合在需要压缩表示的场景中使用。

这些差异主要在于存储效率和数据表示方式的选择上。

你可能感兴趣的:(#,微机原理与接口技术,考研,学习)