关于C语言中加法的实现原理

来源:互联网 发布:javascript代码怎么用 编辑:程序博客网 时间:2024/05/22 00:23

最近发现了一个挺有意思的题:

usigned int a = 8;int b = -7;if( a + b <= 5 )    printf( "X" );usigned int c = 8;int d = -10;if( c + d <= 5 )    printf( "Y" );

正确结果是 X。

问题就出在加法的底层实现上。
在位运算中,加法是通过 XOR(异或)和 AND(与)两个运算来实现的。

XOR是结果。AND是进位。

0 0
原创粉丝点击