b2c信息网

您现在的位置是:首页 > 明日新闻 > 正文

明日新闻

整数源码转换补码的规则(整数的原码和补码)

hacker2022-06-12 04:22:16明日新闻83
本文目录一览:1、计算机源码,反码,补码之间怎么计算?

本文目录一览:

计算机源码,反码,补码之间怎么计算?

转换方法:

 如果是正数或零,则首位为 0,补码=原码=反码。

 否则,首位为 1,数值位取反加一,即可实现“补码与原码”互换。

例如:

 对 1111 1001 取反,为 1000 0110,再加一,得:1000 0111。

 对 1000 0111 取反,为 1111 1000,再加一,得:1111 1001。

这说明,补码 ←→ 原码,方法是相同的。

原码、补码、反码之间是怎样转换的?

正数的原码、反码、补码是一致的。(例如:2的原码:0000 0010,那么其反码和补码都是0000 0010)

负数的反码顾名思义,是除了符号位与原码一致,其余位都与原码相反。(例如:-2的原码是1000 0010,那么其反码是1111 1101),负数的补码则是在其反码的基础上加1。(例如:-2的反码是1111 1110)

1、首先,数字除了我们平时最长使用的十进制数外,还有二进制,八进制,十六进制等。这里我们的原码,补码,反码之间转换指的是二进制数。如下。

2、在二进制数中,数字的正负是根据首位是0还是1来判断的,如果首位是0,那么就是正数,首位是1就代表负数。如下图。

3、从原码到反码,如果该数为正数,也保持不变,如果首位是1,也就是说是负数,就将除了首位的1除外的所有数字取反。如下图所示。点击即可查看。

4、如果想要把原码转换成补码,对正数来说,补码与原码相同,对负数来说,之间将反码加1就可以得到补码,计算示例如下图所示。当然,我们还可以将补码转换为原码。如果是负数得到的补码,可以通过求该补码的补码来得到原来的原码。如下。

十进制的原码、补码

十进制-67的原码是01000011、反码是10111100和补码是10111101。

转换规则:

1、负整数的原码为二进制前面加符号位;

-67=1000011(二进制)=11000011(原码)

2、负整数的反码=原码各位取反(除了符号位外);

11000011(原码)=10111100(反码)

3、负整数的补码=负整数的反码+00000001;

10111100(反码)=10111101(补码)

扩展资料:

已知一个数的补码,求原码的操作其实就是对该补码再求补码:

⑴如果补码的符号位为“0”,表示是一个正数,其原码就是补码。

⑵如果补码的符号位为“1”,表示是一个负数,那么求给定的这个补码的补码就是要求的原码。

例:已知一个补码为11111001,则原码是10000111(-7)。

因为符号位为“1”,表示是一个负数,所以该位不变,仍为“1”。

其余七位1111001取反后为0000110;再加1,所以是10000111。

参考资料来源:百度百科-补码

发表评论

评论列表

  • 语酌云裳(2022-06-12 05:28:28)回复取消回复

    0111100(反码)3、负整数的补码=负整数的反码+00000001;10111100(反码)=10111101(补码)扩展资料:已知一个数的补码,求原码的操作其实就是对该补码再求补码:⑴如果补码的符号位为“0”,表示是一个正数,其原码就是补码。⑵