> 백엔드 개발 > C++ > C 언어를 사용하여 2진수를 16진수로 변환하는 방법은 무엇입니까?

C 언어를 사용하여 2진수를 16진수로 변환하는 방법은 무엇입니까?

PHPz
풀어 주다: 2023-09-01 18:57:06
앞으로
1922명이 탐색했습니다.

C 언어를 사용하여 2진수를 16진수로 변환하는 방법은 무엇입니까?

2진수는 1과 0으로 표현됩니다.

16자리 16진수 체계는 {0,1,2,3…..9, A(10), B(11),… …F(15)}

2진수 표현에서 16진수 표현에서 비트 문자열 ID는 최하위 쪽부터 시작하여 니블이라고 하는 4비트 청크로 그룹화됩니다. 각 블록은 해당하는 16진수로 대체됩니다.

16진수와 2진수 표현을 명확하게 이해하기 위해 예를 살펴보겠습니다.

0011 1110 0101 1011 0001 1101
  3    E    5    B   1    D
로그인 후 복사

C언어에서는 16진수 상수를 0X3E5B1D로 씁니다.

10진수를 2진수로 변환한 다음 16진수로 변환하는 방법에 대한 또 다른 예는 다음과 같습니다. -

7529D = 0000 0000 0000 0000 0001 1101 0110 1001B
      = 0x00001D69 = 0x1D69
로그인 후 복사

Example

여기 C 프로그램이 있습니다. while 루프 시스템 번호를 사용하여 2진수를 해당하는 16진수로 변환하는 방법 -

라이브 데모

#include <stdio.h>
int main(){
   long int binaryval, hexadecimalval = 0, i = 1, remainder;
   printf("Enter the binary number: ");
   scanf("%ld", &binaryval);
   while (binaryval != 0){
      remainder = binaryval % 10;
      hexadecimalval = hexadecimalval + remainder * i;
      i = i * 2;
      binaryval = binaryval / 10;
   }
   printf("Equivalent hexadecimal value: %lX", hexadecimalval);
   return 0;
}
로그인 후 복사

출력

위 프로그램이 실행되면 다음과 같은 결과가 생성됩니다 -

Enter the binary number: 11100
Equivalent hexadecimal value: 1C
로그인 후 복사

위 내용은 C 언어를 사용하여 2진수를 16진수로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿