본문 바로가기
까망 동네/IT 용어

빅엔디안 & 리틀엔디안

by 까망 하르방 2024. 1. 5.
반응형

데이터 저장

컴퓨터는 데이터를 저장할 때 Byte 단위로 나눠서 저장

연속되는 바이트를 저장하는 순서(Byte Order)가 있다.

* 비트(bit) 컴퓨터가 데이터를 처리하기 위해 사용하는 데이터의 최소 단위

* 바이트(byte)는 한 문자를 표한할 수 있는 최소 단위로 8비트로 구성

* 1 Byte = 8 Bit

 

빅 엔디안(Big-endian), 리틀 엔디안(Little-endian) 두 가지 방식으로 나눌 수 있다.

낮은 주소(하위 Bit)~ 높은 주소(상위 Bit)로 나뉜다.

 

 

빅 엔디안 (Big-Endian)

낮은 주소에 상위 비트(MSB : Most Significant Byte)부터 저장하는 방식

이 방식은 평소 사람이 사용하는 선형 방식과 같아

메모리에 저장된 순서 그대로 읽을 수 있기에 이해하기 쉽다.

 

 

리틀 엔디안 (Little-Endian)

낮은 주소에 하위 비트(LSB : Least Significant Byte)를 저장하는 방식.

선형 방식과 다르게 거꾸로 읽어야 한다.

 

 

빅 엔디안 vs 리틀 엔디안

우리가 사용하는 인텔 기반의 윈도우 x86 아키텍처가 리틀 엔디안 방식을 사용한다.

한편, 네트워크 데이터 전송에서는 빅 엔디안 방식이 사용된다.

역사적으로 라우팅이 전화를 거는 식으로 접두 부호로 이루어졌기 때문이다

이러한 이유로 소켓 통신할 때도 빅 엔디안과 리틀 엔디안에 맞춰 변환 과정이 필요할 수 있다.

 

가장 작은 자릿수부터 큰 자릿수로 진행되는

가산기(adder) 설계에서 리틀 엔디안이 더 단순했다고 하는데

오늘날 프로세서는 여러 개의 바이트를 동시에 읽어 동시 덧셈을 수행해서

엔디안 방식간 차이는 크게 없다고 한다.

 

한편으로 숫자 비교는 가장 큰 자릿수부터 비교하기에

이런 경우는 빅 엔디안이 조금 더 빠를 수 있다.

 

반응형

댓글