用"异或"表示加法,“位与”计算进位。
/**
*Copyright @ 2019 Zhang Peng. All Right Reserved.
*Filename:
*Author: Zhang Peng
*Date:
*Version:
*Description:
**/
#include<iostream>
using namespace std;
int add(int a, int b)
{
int sum, carry;
do
{
sum = a^b;
carry = a&b;
a = sum;
b = carry << 1;
}
while (b != 0);
return sum;
}
int main()
{
cout << add(1, -3) << endl;
system("pause");
return 0;
}