二进制数怎么转换成十六进制数 ?

2024-11-26 02:42:59
推荐回答(5个)
回答1:

4位2进制数 刚好是从 0000 (零)到 1111 (十五),所以 二进制与十六进制数的互换及其简单: 二到十六 四位一并(不够补0); 十六到二 一位拆四。

如:11001111001= 0110 0111 1001 = 679 (16)
A 5 C 7
A5C7 (16)= 1010 0101 1100 0111 (2)

回答2:

电脑计算器上就有这功能

开始--所有程序--附件--计算器:
查看->科学型
然后先选中二进制,输入你想输入的,然后选十六进制就可以了

回答3:

C语言编程
#include
#include
int main()
{
char a[20],b[5];
int i,result = 0,k = 1,j = 0;
printf("输入一个二进制数:\n");
gets(a);
for(i = strlen(a)-1;i >= 0;i --)
{
if(a[i] == '1') result += 1 << (k-1); //如果是1,用1*位权
if(k == 4 || i == 0) //每四位计算一次结果(result)。
//如果到了最高位(i==0)不足四位(比如100 0000),也计算
{
switch(result)
{
case 10: b[j++]='A';break; //大于等于十转化成字母
case 11: b[j++]='B';break;
case 12: b[j++]='C';break;
case 13: b[j++]='D';break;
case 14: b[j++]='E';break;
case 15: b[j++]='F';break;
default: b[j++]=result + '0';break;
}
result = 0; //结果清零
k = 0; //表示位权的K清零
}
k ++; // 初始位权为1
}
b[j] = '\0';
printf("结果是:\n");
for(i = strlen(b)-1;i >= 0;i --)
printf("%c",b[i]);
printf("\n");
return 0;
}

回答4:

4个二进制化为一个16进制,你懂的

回答5:

有软件?搜搜看