按位取反

a = 1:0000 0000 0000 0001

b=~a 所以:

b的补码=1取反: 1111 1111 1111 1110

 

printf("%d",b);输出b的原码:

减1:1111 1111 1111 1101

取反: 1000 0000 0000 0010

结果:-2.

 

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int a,b;
 6     a=1;
 7 
 8     b=~a;    
 9     printf("\40:The a's l complement(decima)is %d\n",b);
10 
11     a=~b;    
12     printf("\40:The a's l complement(hexidecimal)is %d\n",a);
13 
14     return 0;
15 }

 

 

posted @ 2012-05-04 07:30  zhengmian  阅读(297)  评论(0)    收藏  举报