这是主要代码
int print_B(int a){//转化为2进制数
printf("a的值是:%d转化为二进制是:\t",a);
if (a>0) {//判断第一位
printf("0");
}
else{
printf("1");
}
int count=sizeof(int)*8-2; //显示要右移的位数
int temp;
while (count>=0) {
temp=a>>count&1; //每一位与1的结果
printf("%d",temp); //输出每一位2进制
if(count%4==0) //每4个中间加入一个空格
printf(" ");
count--;
}
printf("\n");
return 0;
}
以上是补码 要求反码,如果还有大神会12-2(要用加法计算出,记得以前老师讲过,机器语言只有加法吧)求出2进制数
|
|