mssql sqlserver 位运算计算方法分享


摘要:
下文将分享 mssql sqlserver 位运算计算符的计算方法分享
位运算的计算:
sql中的位运算,
1.将十进制转换为二进制;
2.再进行位运算;
3.再转换为十进制 呈现给用户。
sql 位运算,运算符包括以下四种符号:
&(位与)、~(位非)、|(位或)、^(位异或)


下文将举例讲述sql 位运算的相关知识

 /*
例:
一个十进制为4字节 32位 ,最高位为符号位
十进制 98 转二进制为:  0000 0000  0110 0010
十进制 180  转二进制为:0000 0000  1011 0100
*/

---例1:&(位与) 计算方法如下: 0&0 =0 0&1 =0 1&1 =1
---- 98&180 = 0000 0000 0010 0000(二进制) = 32 
select 98&180  =32
--------------------------------------------------

---例2:~(位非) 计算方法如下: ~0=1 ~1=0
---- ~98 = 1111 1111 1001 1101 =  -99 
select ~98  = -99
----------------------------------------------------

---例3:|(位或) 计算方法如下: 0&0=0 ;0&1=1;1&1=1
---- 98|180 = 0000 0000 1111 0110 = 32 
select 98|180  =246


---例4:^(位异或) 计算方法如下: 0&0=0 ;0&1=1;1&1=0
---- 98|180 = 0000 0000 1101 0110 = 32 
select 98^180  =214