在Visual C++中的int整型一般由四个字节表示

Visual C++中int表示的范围

Visual C++中int表示的范围

在计算机中采用补码形式存储int(对于正数其补码与原码相等),

补码的数字从0000 0000 0000 0000 0000 0000 0000 0000~1111 1111 1111 1111 1111 1111 1111 1111

通过补码和原码的转换规则,1111 1111 1111 1111 1111 1111 1111 1111表示的值为-1;

1111 1111 1111 1111 1111 1111 1111 1110表示的值为-2;

1111 1111 1111 1111 1111 1111 1111 1101表示的值为-3;

1000 0000 0000 0000 0000 0000 0000 0001表示的值为-2147483647;

将1000 0000 0000 0000 0000 0000 0000 0000硬性规定为-2147483648;

简化性的理解:

 对于一个8字节的整数(int)来说,范围是2的8次方,表示-128~127。如下面的表格所示,如果用原码和反码,

+0和-0是同一个数却有两个不同的表示,这样不仅会使计算机多一层处理,还会浪费一个表示范围;而补码就能很好的解决这个问题。

(-128只有补码,而没有原码和反码,因为数值位只能表示0~127。)

 

相关文章:

  • 2021-06-21
  • 2022-12-23
  • 2021-11-14
  • 2021-12-04
猜你喜欢
  • 2022-12-23
  • 2021-12-04
  • 2022-12-23
  • 2022-01-02
  • 2022-12-23
  • 2021-12-04
  • 2022-12-23
相关资源
相似解决方案