운영체제 별로 메모리 저장 방식이 다르다.
빅엔디안(big endian) 방식은 작은 메모리 주소값을 시작으로 오름차순으로 최상위 비트부터 차례대로 저장하는 방식이다. 유닉스 계열 운영체제에서 사용한다. 네트워크의 바이트 오더이기도 하다.
리틀엔디안(little endian) 방식은 큰 메모리 주소값을 시작으로 내림차순으로 최상위 비트부터 저장하는 방식이다. 윈도우 등 운영체제에서 사용한다.
비트 단위로 정보를 전송할 때 운영체제 스타일에 따라 주의해서 코드를 짜야한다.
글만 보면 이해가 잘 안 될 수 있는데 그림으로 보면 되게 단순한 개념이다.
주의할 점은, 바이트오더 방식으로 읽어야 한다는 것이다. 즉, 비트단위로 쪼개서 특정 메모리 방향으로 저장하는게 아니라, 바이트 단위로 저장한다.
위 예시에서 한칸을 저장되는 단위라고 볼 때 리틀엔디안에 int value = 0x12345678; 을 할당했다면, 78/56/34/12순으로 저장될 것이다.