본문 바로가기

컴퓨터 일반

빅 엔디안(Big Endian)과 리틀 엔디안(Little Endian)

CUP가 메모리에 데이터를 저장하는 방식의 분류이다.
빅 엔디안은 상위 바이트의 값을 낮은 번지수부터 저장하는 방식이고
리틀 엔디안은 상위 바이트의 값을 높은 번지수부터 저장하는 방식이다.

예를들어 0x123456이라는 수를 메모리에 저장한다면

빅 엔디안 방식은

 1번지  2번지  3번지
 0x12  0x34  0x56 

의 형태로 상위 바이트를 낮은 주소번지에 CPU가 저장하게되고

리틀 엔디안 방식은

 1번지  2번지  3번지
 0x56  0x34  0x12 

의 형태로 상위 바이트를 높은 주소번지에 CPU가 저장한다.


네트워크상에선 데이터를 보내는 순서에 따라 해석이 달라지기때문에
데이터를 보낼땐 리틀 엔디안 방식의 CPU라도 빅 엔디안 방식으로 통일해서 데이터를 보내기로 되어있다.
이것이 네트워크 바이트 순서 약속이다.