Data lab

-INT_MIN=INT_MIN 因为补码的相反数 = 补码的按位取反 + 1

位运算

相反数

~x+1 // -x
!(负数 || 正数) == 0

!(x + ~0x30+1)
// x - 0x30 > 0

!((x + ~0x30+1) & (1<<31))
// x - 0x30 >= 0
// &(1<<31) 判断x - 0x30的符号位,负和非负两种结果


!(x & (1<<31))  ==> !(1 || 0)
~1 ==> 111110 ==+1==> 111111
~0 ==> 111111 ==+1==> 000000

非规格化的浮点数 当指数部分全为0时,尾数部分不再需要非零位开头的要求。这意味着非规格化数可以表示非常接近于0的小数。

NaN ==> 指数部分全为1,尾数部分不全为0