用位运算实现加法

2014-11-24 09:08:26 · 作者: · 浏览: 0
[cpp]
#include
#include
#include
#include
#include
#include

/************************************************************************************************************************************************************
**** lxmuyu
**** begin: 2012 11 23
****
**** 用位运算实现加法
****
**** end : 2012 11 23
****
************************************************************************************************************************************************************/

int add(int a, int b){
int temp = 0;
do{
temp = a;
a = a & b;
b = b ^ temp;
a = a << 1;
}while(a != 0);

return b;
}

void main(){
int a, b;
scanf("%d %d", &a, &b);
printf("a + b = %d\r\n", add(a,b));
scanf("%d", a);
}