import java.lang.*; import java.util.*; class SumTwoIntegers { public static int getSum(int a, int b) { int bitmask = 0b1; int carry = 0b0; int sum = 0; while (bitmask != 0) { int i = a & bitmask; int j = b & bitmask; sum |= (i ^ j) ^ carry; carry = (i & j) | ((i | j) & carry); bitmask <<= 1; carry <<= 1; } return sum; } public static void main(String[] args) { int a = 12; int b = 32; int ans = getSum(a, b); System.out.println(ans); System.out.println(Integer.toBinaryString(ans)); } }