개발자 면접 공부/운영체제,CS

리틀 엔디안 vs 빅 엔디안

chogyujin 2022. 9. 9. 17:36
728x90

오늘은 리틀 엔디안 vs 빅 엔디안 에 대해서 공부하도록 하겠습니다.


엔디안 이란?

엔디안 은 컴퓨터 메모리와 같이은 1차원의 공간에서 여러 개의 연속된 대상을 배열하는 방법을 뜻하며, 바이트를 배열하는 방법을 특히 바이트 순서(Byte order) 라고 한다.

 

엔디안은 보통 큰 값이 앞에 나오는 빅-엔디안과 작은 값이 앞에 나오는 리틀-엔디안으로 나눌수 있으며, 두 경우에 속하지 않거나 둘을 모두 지원하는 것을 미들-엔디안이라 부릅니다.

 

빅-엔디안은 최상위 바이트부터 차례대로 저장하는 방식

리틀-엔디안은 최하위 바이트부터 차례대로 저장하는 방식

 

그럼 최상위 최하위란 무엇인가?

여기서 빅-엔디안은 사람이 숫자를 세는것처럼 큰 단위에 바이트가 앞에 오는 방식이고

리틀-엔디안은 그 반대로 작은 단위가 앞으로 오는 방식입니다.

단순히 12345678이 87654321로 거꾸로 저장한 것이 아니라

해당 수치를 데이터의 단위로 나누었을때 그 단위가 거꾸로 배열되는 형태인듯 합니다.

 

오늘날 x86 아키텍처를 사용하는 대부분 데스크톱은 리틀 엔디안을 사용하며 이를'인텔 포멧' 이라고 합니다.

거꾸로 네트워크에서는 주소를 빅 엔디안으로 사용됩니다. 역사적으로 라우팅이 전화를 거는 식으로 접두 부호가 되있기 때문입니다.