728x90
오늘은 리틀 엔디안 vs 빅 엔디안 에 대해서 공부하도록 하겠습니다.
엔디안 이란?
엔디안 은 컴퓨터 메모리와 같이은 1차원의 공간에서 여러 개의 연속된 대상을 배열하는 방법을 뜻하며, 바이트를 배열하는 방법을 특히 바이트 순서(Byte order) 라고 한다.
엔디안은 보통 큰 값이 앞에 나오는 빅-엔디안과 작은 값이 앞에 나오는 리틀-엔디안으로 나눌수 있으며, 두 경우에 속하지 않거나 둘을 모두 지원하는 것을 미들-엔디안이라 부릅니다.
빅-엔디안은 최상위 바이트부터 차례대로 저장하는 방식
리틀-엔디안은 최하위 바이트부터 차례대로 저장하는 방식
그럼 최상위 최하위란 무엇인가?
여기서 빅-엔디안은 사람이 숫자를 세는것처럼 큰 단위에 바이트가 앞에 오는 방식이고
리틀-엔디안은 그 반대로 작은 단위가 앞으로 오는 방식입니다.
단순히 12345678이 87654321로 거꾸로 저장한 것이 아니라
해당 수치를 데이터의 단위로 나누었을때 그 단위가 거꾸로 배열되는 형태인듯 합니다.
오늘날 x86 아키텍처를 사용하는 대부분 데스크톱은 리틀 엔디안을 사용하며 이를'인텔 포멧' 이라고 합니다.
거꾸로 네트워크에서는 주소를 빅 엔디안으로 사용됩니다. 역사적으로 라우팅이 전화를 거는 식으로 접두 부호가 되있기 때문입니다.
'개발자 면접 공부 > 운영체제,CS' 카테고리의 다른 글
UTF-8 vs UTF-16 (0) | 2022.09.16 |
---|---|
컴파일 과정 (0) | 2022.09.14 |
쓰레드 풀링, 메모리 풀링 (0) | 2022.08.23 |
블로킹(Blocking), 논 블로킹(Non-Blocking), 동기(Sync), 비동기(ASync) (0) | 2022.08.18 |
Stack OverFlow란? (0) | 2022.07.26 |