C语言 打印变量在内存中的二进制形式(补码)

时间:2014-10-04 14:05:06   收藏:0   阅读:311
void show_bits(int n)
{
	int i = 0;
	for(i=0;i<32;i++)
		printf("%d",(n&(1u<<(31-i)))!=0?1:0);
	putchar(‘\n‘);
}

整数的原码 = 整数的补码

负数的补码:(原码)->(反码)->(反码+1)

负数的原码:(补码-1)->最高位符号位别动其余均转反码

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!