题目
在机器数中,( )的零的表示形式是唯一的。A. 补码B. 反码C. 原码[1]D. 补码和移码
在机器数中,( )的零的表示形式是唯一的。
A. 补码
B. 反码
C. 原码[1]
D. 补码和移码
题目解答
答案
D. 补码和移码
解析
考查要点:本题主要考查学生对不同机器数表示方式中“零”的表示形式是否唯一的理解,涉及原码、反码、补码、移码的基本概念。
解题核心思路:
- 明确各类机器数的定义:原码、反码、补码、移码的表示规则。
- 分析零的表示形式:判断每种机器数中是否存在正零和负零的区分。
- 关键结论:补码和移码通过特定设计消除了零的二义性,而原码和反码保留两种零的表示。
破题关键点:
- 原码和反码:符号位独立存在,零的符号位可为0或1,导致两种表示。
- 补码:通过模运算统一零的表示,仅有一种全0形式。
- 移码:基于补码设计,调整表示范围后,零的表示唯一。
原码
原码的符号位与数值位独立。例如,8位定点数中:
- +0:符号位为0,数值位全0,即
0 0000000。 - -0:符号位为1,数值位全0,即
1 0000000。
因此,原码的零有两种表示形式。
反码
反码的正零与原码相同,负零的数值位取反。例如:
- +0:
0 0000000。 - -0:符号位为1,数值位全1(取反后仍为0),即
1 1111111。
因此,反码的零也有两种表示形式。
补码
补码通过模运算统一零的表示。无论正零还是负零,均表示为全0。例如:
- +0:
00000000。 - -0:经过补码运算后仍为
00000000。
因此,补码的零唯一。
移码
移码基于补码设计,通过添加偏移量调整表示范围。例如,8位移码(偏移量为$2^7$):
- 零:对应补码的全0,移码为
10000000。
由于移码仅用于表示非负数,零的表示唯一。
结论:补码和移码的零表示唯一,故选D。