빅 엔디안 리틀 엔디안(Byte Order) - 2

2023. 10. 15. 12:00컴퓨터/CS

왜 Byte Order를 사용할까? 

 

먼저 산술에 관한 이야기이다.

 

어떤 수를 더한다고 했을 시 

Big Endian 방식으로 저장된 수와 

Little Endian 방식으로 저장된 수가 있다고 해보자.

 

Big Endian 방식으로 더하기를 한다고 하면, 

1234 + 1823

 

MSB 부터 더한다. 

 

천의자리는 2

백의 자리는? 자리올림이 발생하였다.

 

다시 천의 자리로 가서 3

백의 자리 0

십의 자리 5

일의 자리 7 이런식으로 된다.

 

하지만 Little Endian 방식은 

 

일의 자리 7

십의 자리 5

백의 자리 자리올림 발생 0

천의 자리 2 

 

이런식으로 자리올림이 발생 할 때 편하게 계산이 가능하다.

 

(우리가 실제로 수를 더할때와 동일하다.)

 

그 외 형변환, 디버깅 등 각 각 장, 단점이 있다고 한다.

 

CPU 마다 엔디안 방식이 다르다고 한다 그래서 서로 통신할 때 규격을 맞추어야 하는데

그것을 Network Byte Order라고 부른다. 기본적으로 Big Endian 을 따른다고 함.

 

Host Byte Order는 Host에 따른 Byte Order 방식이라고 한다.

 

(ARM이면 Big, Intel 이면 Little Endian.)

'컴퓨터 > CS' 카테고리의 다른 글

빅 엔디안 리틀 엔디안(Byte Order)  (0) 2023.10.14