빅 엔디안과 리틀 엔디안의 차이에 대해서 설명해보겠다.

아주 간략하게 설명하고, 필요하다면 사족을 붙여야겠다.


바이트 오더?

바이트를 배열하는 방법을 말한다. 그 배열하는 방법을 엔디안(Endian)이라고 한다.


빅 엔디안(Big Endian)

주로 Unix시스템인 RISC프로세서 계열에서 사용하는 바이트 오더이다. 

메모리 시작 주소가 상위 바이트부터 기록된다는 것.

* 메모리 시작 주소에 상위 바이트부터 기록*

ex) 4바이트(32bit)값 0x01020304 를 빅엔디안 순서로 메모리에 입력되는 과정을 보면 다음과 같다.

그림을 설명하자면 네모 한칸이 메모리 한 번지를 의미하며, 하위 주소에서 상위 주소로 주소 번지가 증가함을 의미한다. 


리틀 엔디안(Little Endian)

주로 인텔(Intel)프로세스 계열에서 사용하는 바이트 오더이다. 

메모리 시작 주소가 하위 바이트부터 기록된다는 것.

* 메모리 시작 주소에 하위 바이트부터 기록*

ex) 4바이트(32bit)값 0x01020304 를 리틀엔디안 순서로 메모리에 입력되는 과정을 보면 다음과 같다.


그림을 설명하자면 네모 한칸이 메모리 한 번지를 의미하며, 상위 주소에서 하위 주소로 주소 번지가 증감함을 의미한다. 


** 쉽게 설명하자면 빅 엔디안은 왼쪽에서 오른쪽으로, 리틀 엔디안은 오른쪽에서 왼쪽으로 읽으면 된다. 


네트워크 바이트 오더?

네트워크 상에서 표준으로 이용되는 프로토콜은 네트워크 바이트 오더인 빅 엔디안이다.



'네트워크' 카테고리의 다른 글

TCP Three-way Hand Shaking  (0) 2015.10.06
동기 vs 비동기  (0) 2015.10.06
GET방식 과 POST방식  (0) 2015.08.08
HTTP 와 HTTPS  (0) 2015.08.08
HTTP 프로토콜  (0) 2015.08.08
Posted by slender ankles
,