位级运算与逻辑运算容易搞混,
位级运算:|就是OR, &就是AND,~就是NOT,^就是 EXCLUSIVE-OR(异或 P或Q为真,且不同为真,才为真)
逻辑运算: ||, &&, !
移位运算:
X<<k:x左移K位,丢弃K个最高位,并在右端补K个0
X>>k:右移分逻辑和算术的
逻辑的是 左端补K个0,丢弃K个最低位
算术则是补K个最高有效位的拷贝
PS:对于无符号数据,右移必须是逻辑的
位级运算与逻辑运算容易搞混,
位级运算:|就是OR, &就是AND,~就是NOT,^就是 EXCLUSIVE-OR(异或 P或Q为真,且不同为真,才为真)
逻辑运算: ||, &&, !
移位运算:
X<<k:x左移K位,丢弃K个最高位,并在右端补K个0
X>>k:右移分逻辑和算术的
逻辑的是 左端补K个0,丢弃K个最低位
算术则是补K个最高有效位的拷贝
PS:对于无符号数据,右移必须是逻辑的