일라이어스 감마 부호

일라이어스 감마 부호(Elias gamma code)는 양의 정수를 대응시키는 범용 부호이다. 피터 일라이어스가 1975년 논문에서 ‘복합 표현 γ’()라는 이름으로 소개했다.

감마 부호로 부호화하는 과정은 다음과 같다.

  1. 그 수를 이진법으로 적는다.
  2. (숫자의 자릿수 - 1)개의 0을 그 앞에 덧붙인다. (일진 부호)

감마 부호를 복호화하는 과정은 다음과 같다.

  1. 1이 나올 때까지 0을 읽고 그 개수를 N이라고 한다.
  2. 1 다음의 N개의 비트를 읽고, 그 숫자(처음 1을 포함)를 이진법으로 읽는다.

감마 부호로 표현된 첫 몇 개의 정수는 다음과 같다.

 1 = 20 + 0 = 1 2 = 21 + 0 = 010 3 = 21 + 1 = 011 4 = 22 + 0 = 00100 5 = 22 + 1 = 00101 6 = 22 + 2 = 00110 7 = 22 + 3 = 00111 8 = 23 + 0 = 0001000 9 = 23 + 1 = 000100110 = 23 + 2 = 000101011 = 23 + 3 = 000101112 = 23 + 4 = 000110013 = 23 + 5 = 000110114 = 23 + 6 = 000111015 = 23 + 7 = 000111116 = 24 + 0 = 00001000017 = 24 + 1 = 000010001

감마 부호는 부호화될 수 있는 가장 큰 값이 바로 알려져 있지 않거나, 큰 값이 작은 값보다 훨씬 적게 나올 때 사용된다.

참고 자료

  • Elias, P. (1975). Universal code length sets and representations of integers. IEEE Trans. Inform. Theory, 21, 194--203.

같이 보기