A+B(加法器实现)

#include
#include
using namespace std;
int main()
{
        int k, a, b, t1, t2, ans;
        while(cin >> a >> b) {
        k = 0;
        ans = 0;
        for (unsigned int i = 1; i; i *= 2)
        {
            t1 = (a & i) ? 1 : 0;
            t2 = (b & i) ? 1 : 0;
            if (t1 == 1 && t2 == 1)
            {
                if (k == 1) ans = ans | i;
                k = 1;
            }
            else if (t1 == 1 || t2 == 1)
            {
                if (k == 0) ans = ans | i;
            }
            else
            {
                if (k == 1) ans = ans | i;
                k = 0;
            }
        }
        printf("%d\n", ans);
        }
}

a

你可能感兴趣的:(A+B(加法器实现))