在写一种很新的代码

举个例子解释一下这个add函数执行过程,如下面两个数
00010 2
01110 14
【与运算值 00010(同为1为1)再左移一位00100,异或运算值01100(相同为0,相异为1)】
第一次执行add()得到下一次递归参数a,b
00100 ,01100
、、、
00100
01100
第二次执行add()得到下一次递归参数a,b
01000 , 01000
、、、
01000
01000
第三次执行add()得到下一次递归参数a,b
10000,00000
、、、
10000
00000
第四次执行add()得到下一次递归参数a,b
00000 ,10000
第五次执行add()此处a值为0,递归结束返回b的值
10000 16