几个位运算

转载 2007年10月14日 16:32:00

www.cppblog.com上看到,收藏学习

-x      =   ~+ 1 = ~(x-1)  
~x      =   -x-1    
-(~x)   =   x+1  
~(-x)   =   x-1  
x
+y     =   x - ~- 1 = (x|y)+(x&y)    
x
-y     =   x + ~+ 1 = (x|~y)-(~x&y)    
x
^y     =   (x|y)-(x&y)  
x
|y     =   (x&~y)+y  
x
&y     =   (~x|y)-~x      
x<y:        (x-y)^((x^y)&((x-y)^x))  
x
<=y:       (x|~y)&((x^y)|~(y-x))  
x
<y:        (~x&y)|((~x|y)&(x-y))
x
<=y:       (~x|y)&((x^y)|~(y-x))
x==y:       ~(x-y|y-x)  
x
!=y:       x-y|y-x   

利用位运算得出N的2进制中有几个1

位运算
  • king624498030
  • king624498030
  • 2015-04-15 11:05:45
  • 529

(C++)剑指offer-11:二进制中1的个数(位运算)

剑指offer-11:二进制中1的个数(位运算) 目录 剑指offer-11二进制中1的个数位运算 目录 1问题描述 2答案 1问题描述 输入一个整数,输出该数二进制表...
  • malele4th
  • malele4th
  • 2018-02-12 20:42:17
  • 22

位运算——数0的个数

最简单的方法 移位来运算:N>>=1;然后用N 同1进行“与”运算,来判断末尾是否为1 下面有更快的方法; 快速的方法:判断某一位置是否是1的一个方法,v&=(v-1); 最经典: ‍ ...
  • zhhx2001
  • zhhx2001
  • 2016-05-07 12:17:53
  • 810

位运算的应用与技巧:

位运算的应用: 程序中的所有数在计算机内存中都是以二进制的形式储存的。所谓位运算,就是直接对整数在内存中的二进制位进行操作,一般解题时都用一个十进制整数来代表某个集合。 基本的位运算操作: &(按...
  • consciousman
  • consciousman
  • 2016-10-15 21:24:49
  • 1068

经典的位运算合集 Matrix67及总结

  • 2011年04月05日 20:17
  • 598KB
  • 下载

如何读字节从输入流取bit作位运算(JAVA实现)

在以下是笔者在遇到取bit位运算,源码如下: package com.bit;import java.io.ByteArrayInputStream;import java.io.DataInput...
  • buaamse
  • buaamse
  • 2008-06-13 14:14:00
  • 1398

用宏定义来完成位运算(置位,复位,截取)

1、用宏定义来完成位运算 1、置位    置位特定位n:#define   SET_NTH_BIT(x, n)   ( x | ((1U) 置位n到m位: #define  SET_BIT_N_TO_...
  • zwh847021940
  • zwh847021940
  • 2016-09-13 14:54:30
  • 1293

c++位运算c++位运算

  • 2011年08月02日 13:13
  • 63KB
  • 下载

c语言位运算c语言位运算

  • 2010年03月10日 10:48
  • 38KB
  • 下载

java位运算.docx

  • 2011年10月26日 20:50
  • 50KB
  • 下载
收藏助手
不良信息举报
您举报文章:几个位运算
举报原因:
原因补充:

(最多只允许输入30个字)