인코딩을 공부하면서, 바이트 오더링이라는 단어를 들어보았다. 처음 들어본 단어라, 간단하게 정리해보려 한다.
Endianness
- 엔디언
 
- 1차원의 공간에 여러 개의 연속된 대상을 배열하는 방법을 의미
 
Byte Order
- 컴퓨터는 메모리라는 장치에 정보를 나열하여 저장한다.
 
- 이러한 점에서 Endianness 방법을 사용하며, 특히 이렇게 컴퓨터에 있어서 바이트를 배열하는 방식을 바이트 오더라 부른다.
 
종류
| 종류 | 0x1234의 표현 | 0x12345678 | 
|---|
| Big Endian | 12 34 | 12 34 56 78 | 
| Little Endian | 34 12 | 78 56 34 12 | 
- Big Endian
 
- 큰 단위의 Byte가 앞에 오는 방법
 
- 네트워크가 주소를 쓰는 방식
 
- 장점
- 디버깅을 편하게 해줌
 
- 사람이 숫자를 읽고 쓰는 방식과 같기 때문에 디버깅시 메모리 값을 보기 편함
 
 
- Little Endian
 
- 작은 단위의 Byte가 앞에 오는 방법
 
- x86 아키텍쳐 사용 (인텔 포맷)
 
- 장점
- 메모리 저장 값의 하위 바이트만 사용할 때 별도 계산이 필요없음
 
- 0x2A = 2A 00 00 00
 
- 앞 두바이트 혹은 한 바이트만 떼어내면 바로 하위 비트를 얻을 수 있음
 
- 빅 엔디언의 경우에는 변수 주소에 2바이트 혹은 3바이트를 더해야 함