c语言中十六进制转为二进制

本文概述

  • 什么是十六进制?
  • 什么是二进制?
什么是十六进制?十六进制是一种位置系统,以16为基数表示十六个不同的符号中的数字。这些不同的符号,即“ 0-9”代表从零到九的值,而“ A-F”代表从十到十五的值。
什么是二进制?二进制数是一个以2为底的数字系统表示的数字,它使用两个符号,即0和1。
例子
假设十六进制数为A12C。现在我们计算十六进制数的二进制值。
十六进制数= A12C
相当于A的二进制值是1010
等于1的二进制值是0001
等于2的二进制值是0010
相当于C的二进制值是1100
因此,等效于A12C的二进制值为1010000100101100。
c语言中十六进制转为二进制

文章图片
注意:要将十六进制转换为二进制数,将对十六进制数的每个数字的二进制值进行求值并合并以获得给定十六进制数的二进制数。让我们通过一个例子来理解。
#include< stdio.h> void hextobin(char b[]); void main() { char hex[]="A12C"; hextobin(hex); } void hextobin(char hex[]) { int i=0; while(hex[i]) { switch(hex[i]) { case '0': printf("0000"); break; case '1': printf("0001"); break; case '2': printf("0010"); break; case '3': printf("0011"); break; case '4': printf("0100"); break; case '5': printf("0101"); break; case '6': printf("0110"); break; case '7': printf("0111"); break; case '8': printf("1000"); break; case '9': printf("1000"); break; case 'A': printf("1010"); break; case 'a': printf("1010"); break; case 'B': printf("1011"); break; case 'b': printf("1011"); break; case 'C': printf("1100"); break; case 'c': printf("1100"); break; case 'D': printf("1101"); break; case 'd': printf("1101"); break; case 'E': printf("1110"); break; case 'e': printf("1110"); break; case 'F': printf("1111"); break; case 'f': printf("1111"); break; } i++; }}

在上面的代码中,我们要计算“ A12C”的二进制值。我们首先将此值存储在一个名为hex []的字符数组中,然后将该数组传递给hextobin()函数。 hextobin()将计算数字的二进制值,通过while循环迭代数组的每个元素,并通过switch语句查找每个对应元素的二进制值。
【c语言中十六进制转为二进制】输出量
1010000100101100

    推荐阅读