黑马程序员--基本数据类型

来源:互联网 发布:天津保姆价格知乎 编辑:程序博客网 时间:2024/05/22 20:39

------- android培训java培训、期待与您交流! ----------


一,int型  4字节



short int 型, 2字节


long int 型 4字节


char  型 1字节


float 型 4字节


double 型 8字节


bool 型 1字节


int(32位,4字节) 范围:最大值 0111 1111 1111 1111 1111 1111 1111 1111 = 2^31 - 1 = 2 147 483 647,


  负数最小最大无法一下分清,首先  负数范围是


  1000 0000 0000 0000 0000 0000 0000 0000 到 1111 1111 1111 1111 1111 1111 1111 1111


因为计算机负数的存储方式为补码,即上面的为数的补码形式。原码转补码规则:符号位不变,其余位取反加一。


反过来则,先减一,再取反。


补码:1000 0000 0000 0000 0000 0000 0000 0000
减一:1111 1111 1111 1111 1111 1111 1111 1111
取反:1000 0000 0000 0000 0000 0000 0000 0000(2^31,也是2 147 483 648 ,且是负数,即 -2 147 483 648)


补码:1111 1111 1111 1111 1111 1111 1111 1111
减一:1111 1111 1111 1111 1111 1111 1111 1110
取反:1000 0000 0000 0000 0000 0000 0000 0001(-1)


即 int 的范围(-2^31 -- 2^31-1)


short 与long范围,一般short 不大于 int 而long 不小于int ,具体的需要根据系统的位数而定。


补码,反码,原码


之前一直不明白为什么要用补码,反码等,现在先粗浅的谈谈这个。


首先,计算机引用二进制,用1表示开,用0表示关,二进制系统,易于用电子的方式实现。


在计算机中,只能做加操作,为了实现减等操作,便将符号位也带如运算,即减1 与加(-1)的结果相同。

------- android培训java培训、期待与您交流! ----------


0 0
原创粉丝点击