c语言 i=10 j=~i j的值等于11????为什么??? 请高手指点
c语言 i=10 j=~i j的值等于11????为什么??? 请高手指点
  日期:2021-06-13 08:09:31 人气:1
  
  
结果应该为-11。
数字在计算机中都是以补码存放的。
10的补码为00000000 00000000 00000000 00001010
~i,即取反,故得:11111111 11111111 11111111 11110101
这是在计算机中存放得值,是一个数得补码,那么这个补码所对应的原码是多少呢(补码转源码的知识,源码=补码取反再加1)
符号位保持不变,1表示负号,即:
10000000 00000000 00000000 0000101
      数字在计算机中都是以补码存放的。
10的补码为00000000 00000000 00000000 00001010
~i,即取反,故得:11111111 11111111 11111111 11110101
这是在计算机中存放得值,是一个数得补码,那么这个补码所对应的原码是多少呢(补码转源码的知识,源码=补码取反再加1)
符号位保持不变,1表示负号,即:
10000000 00000000 00000000 0000101
