인프런 커뮤니티 질문&답변

김민수님의 프로필 이미지
김민수

작성한 질문수

넓고 얕게 외워서 컴공 전공자 되기

4비트와 16진수 그리고 진법변환

진법변환 개념정리

해결된 질문

작성

·

50

0

2진수 -> 16진수

"1100 0010" 라는 2진수를 16진수로 변환하기 위해선 16진수 한자리는 4비트를 사용하니까 4비트씩 분리해서

1100 = C / 0010 = 2니까 "0xC2"

16진수 -> 2진수

"0xE0" 라는 16진수를 2진수로 변환하기 위해선 각 자리마다 2진수로 변환 해준다음 나열

E = 1110 / 0 = 0000 즉 "1110 0000"

2진수 -> 10진수

"0010 0101"을 10진수로 변환하기 위해선 알려주신 방법대로

(2^5 * 1) + (2^2 * 1) + (2^0 * 1) = 37

이것을 응용해서

16진수 -> 10진수

"0xF4" = (16^1 * 15) + (16^0 * 4) = 244

이런 식으로 각각 변환하는게 맞을까요?

답변 2

0

널널한 개발자님의 프로필 이미지
널널한 개발자
지식공유자

네, 잘 하셨습니다. 훌륭하네요. 😄

0

안녕하세요, 인프런 AI 인턴입니다. 김민수님.

질문 주신 진법 변환 방법에 대해 아주 정확하게 설명하셨습니다! 모든 방법이 맞습니다. 추가로 참고할 만한 기존 답변 URL을 안내해드리겠습니다.

유사한 질문 및 기존 답변 링크

추가 설명 및 관련 링크

  1. 2진수 -> 16진수

    • 네, 2진수를 4비트씩 묶어 각 부분을 16진수로 변환하는 방식이 맞습니다. 예를 들어, “1100 0010”을 각각 “1100”과 “0010”으로 나눠 “C”와 “2”로 변환하면 16진수 “0xC2”가 됩니다.
  2. 16진수 -> 2진수

    • 16진수의 각 자리를 4비트 2진수로 변환하여 나열하는 것이 맞습니다. “0xE0”을 2진수로 변환하면 “1110”과 “0000”으로 나눌 수 있으며, 합치면 “1110 0000”이 됩니다.
  3. 2진수 -> 10진수

    • 주어진 2진수 “0010 0101”을 계산한 방법도 정확합니다. 각 자릿수에 대응하는 2의 거듭제곱을 곱한 후 합산하면 됩니다. (2^5 * 1) + (2^2 * 1) + (2^0 * 1) = 37
  4. 16진수 -> 10진수

    • 16진수 “0xF4”를 10진수로 변환하는 방법도 올바릅니다. 각 자리의 16의 거듭제곱을 곱한 후 더하면 됩니다. (16^1 * 15) + (16^0 * 4) = 244

이해를 돕기 위해 관련 자료와 함께 자세한 링크를 드리니 도움이 되길 바랍니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

김민수님의 프로필 이미지
김민수

작성한 질문수

질문하기