Menu
Coddy logo textTech

왜 16진법인가?

Coddy Assembly 여정의 기초 섹션에 포함된 레슨 — 45개 중 10번째.

이제 여러분은 컴퓨터가 이진수를 사용한다는 것을 알고 있습니다. 그렇다면 왜 어셈블리 프로그래머들은 이진수를 직접 작성하는 경우가 드문 것일까요?

이진수의 문제점:

이진수는 매우 깁니다. 다음 예시를 보세요:

숫자이진수
25511111111
10001111101000
655351111111111111111

1과 0의 긴 문자열을 작성하는 것은 느리고, 오류가 발생하기 쉬우며, 읽기 어렵습니다.

해결책: 16진수 (16진법).

16진수(또는 "hex")는 16개의 기호를 사용합니다:

기호
0-90 ~ 9
A10
B11
C12
D13
E14
F15

16진수가 컴퓨터에 완벽한 이유:

16진수 한 자리는 정확히 4비트(반 바이트)를 나타냅니다.

비트필요한 16진수 자리수
4비트 (니블)16진수 1자리
8비트 (1바이트)16진수 2자리
16비트 (2바이트)16진수 4자리
32비트 (4바이트)16진수 8자리
64비트 (8바이트)16진수 16자리

같은 숫자, 세 가지 방식:

10진수2진수16진수
25511111111FF
100011111010003E8
655351111111111111111FFFF

16진수가 2진수보다 얼마나 더 짧은지 확인해 보세요.

어셈블리에서 16진수를 볼 수 있는 곳:

  • 메모리 주소 (0x7FFF 또는 0x402000와 같은)
  • ASCII 코드 ('A'의 경우 0x41, 줄바꿈의 경우 0x0a와 같은)
  • 디버거에서의 레지스터 값
  • 색상 값 (빨간색을 위한 0xFF0000과 같은)

16진수는 접두사와 함께 작성됩니다:

접두사예시의미
0x0xFF16진수 FF (10진수 255)
$$FF동일함 (일부 어셈블러에서 사용됨)
hFFh동일함 (오래된 방식)

이 과정에서는 0x 접두사를 사용합니다: 0x0a, 0x41, 0xFF.

직접 해보기

이 레슨에는 코드 챌린지가 없습니다.

quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨