当前位置:   article > 正文

计算机中两个整数的异或运算以及原码、补码、反码

计算机中两个整数的异或运算以及原码、补码、反码

1、知识预知:

⑴计算机中数值计算是以二进制补码形式进行计算。

⑵原码、反码、补码:

①原码:

     原码的存储位数是 8位,第一位为符号位,其余为数值位;符号位0为正,1为负。

示例:

       5的原码为:00000101

       -5的原码为:10000101

 

②反码:

     正数反码是其原码,负数的反码为:原码的符号位不变,其他位全部取反。

示例:

      5的反码为原码本身00000101

      -5的反码为:11111010,原码10000101中符号位1不变,其余位按位取反1111010,结果:符号位+数值位:11111010

2fe2e86a19754550be6467986acb595c.jpg

 

③补码:

     正数补码是其原码,负数补码符号位不变,其余位按位取反,再加1(即反码加1)。

示例:

     5的补码为原码本身00000101

     -5的补码为:11111011

e48bb7ca69eb4125a51a98407b68da46.jpg

 

2、计算机中两个整数的异或运算

     异或^:参与异或的两个数的二进制数,如果对应位相同(同为0或1)则运算后结果为0,否则为1。(简记:同为0,异为1)

 

注意:异或操作需要先把数转换成补码。

 

示例1(正数异或):

11e2a99788fa43f9a1705f083f76983c.jpg

 

 示例2(负数异或):

a049c5c9fd534d27a5c23076c49ef610.jpg

 

小结:①异或操作是二进制补码进行运算,最后转换为原码。

               ②负数的补码转换为原码:与负数原码转补码步骤相同。(符号位不变,其余位按位取反,再加1)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/175707
推荐阅读
相关标签
  

闽ICP备14008679号