int  main()

{
      int  a = 0;

      int  b = ~a;

      printf("%d\n",b);

      //输出的b=-1

      //a=00000000000000000000000000000000;

      //b=11111111111111111111111111111111;因为符号位为1,所以b在内存中是补码。

     负数在内存中存储的话是以二进制的补码存储的,而打印的是原码所以需要转换。

     //b反码=11111111111111111111111111111110;

      //b原码=10000000000000000000000000000001;

}