例如,给我们数字-1.5(10)。
将其转换为带符号的二进制文件,我们得到11.1000(2)。
其二进制补码为00.1000(2),转换为十进制时为0.5(10)。
这是不言自明的,因为它是一个不同的二进制数。
还有什么要解释的?
您正在混合苹果(有符号二进制)和桔子(二进制补码)。
[您在一个表示形式(带符号的二进制)中取了一个负值,使用different表示形式(2的补码)将其取反,结果(毫不奇怪)最终出现了垃圾。
如果您对带符号的二进制文件否定了11.1000(2),则最终将得出01.1000(2)-正确的答案。
如果您有started,其2的补码表示为-1.5、10.1000(2),并且取2的补数<< that >>,则最终得到01.1000(2)-也正确。请注意,其中的[[无
涉及将任何内容转换为十进制。