🚀
위 사진은 독립신문 창간호로써 '독립신문'이라는 제목이 우횡서로 적혀있습니다.
현재 우리가 읽고 쓰는 방식(왼쪽 -> 오른쪽)과는 반대로 글이 적혀있으며
컴퓨터 또한 마찬가지로 방식에 따라 데이터를 저장하는 순서가 다릅니다.
이러한 순서를 '바이트 오더' 라고 하며
이번 포스팅에서는 빅 엔디안 방식과 리틀 엔디안 방식에 대해 알아보도록 하겠습니다.
💡 비트(bit)와 바이트(byte)
- 비트(bit) : 컴퓨터가 데이터를 처리하기 위해 사용하는 데이터의 최소 단위 (0과 1로 구성)
- 바이트(byte) : 8개의 bit가 모여 하나의 문자를 표현할 수 있는 최소 단위
💡 바이트 오더(Byte Order)
컴퓨터 메모리에 바이트가 저장되는 순서를 바이트 오더라고 하며,
바이트가 저장되는 순서에 따라 빅 엔디안 방식, 리틀 엔디안 방식으로 나뉩니다.
그리고 두 경우에 속하지 않거나 둘을 모두 지원하는 것을 미들 엔디안 방식이라고 합니다.
💡 빅 엔디안(Big endian)
낮은 주소에 데이터의 높은 바이트(MSB, Most Significant Bit)부터 저장하는 방식
빅 엔디안 방식은 평소에 우리가 숫자나 문자를 읽는 방식과 같은 선형 방식이며,
메모리에 저장된 순서 그대로 읽을 수 있기 때문에 이해하기 쉽다는 장점을 가집니다.
예시로 32비트 크기의 정수 '0x12345678'이 있다고 할 때
이 정수는 1바이트 값 0x12, 0x34, 0x56, 0x78 4개로 구성되고 위와 같이 저장됩니다.
💡 리틀 엔디안(Little endian)
낮은 주소에 데이터의 낮은 바이트(LSB, Least Significant Bit)부터 저장하는 방식
리틀 엔디안 방식은 빅 엔디안 방식과는 반대로 거꾸로 읽는 방식이며,
대부분의 인텔 CPU 계열에서는 이러한 방식으로 데이터를 저장합니다.
예시로 32비트 크기의 정수 '0x12345678'이 있다고 할 때
이 정수는 1바이트 값 0x12, 0x34, 0x56, 0x78 4개로 구성되고 위와 같이 저장됩니다.
🔎 빅 엔디안 vs 리틀 엔디안
빅 엔디안(Big endian) | 리틀 엔디안(Little endian) |
Unix의 RISC계열의 프로세서가 사용하는 바이트 오더링 네트워크를 통한 데이터 전송시 사용 비교 연산에서 리틀 엔디안보다 빠름 |
Intel 계열의 프로세서가 사용하는 바이트 오더링 산술연산에서 빅 엔디안보다 빠름 |
📚 참고
'⚙️OS' 카테고리의 다른 글
[OS] 컴퓨터 시스템의 기본 구성 요소 (0) | 2022.04.25 |
---|---|
[OS] 운영체제의 구성요소 (0) | 2022.04.25 |
[OS] 컴퓨터 시스템의 구조 (0) | 2021.10.30 |
[OS] 프로세스(Process)와 스레드(Thread) 차이 (멀티 프로세스, 멀티 스레드) (0) | 2021.10.17 |
[OS] 운영체제란? (운영체제의 역할, 목적, 종류, 기능) (0) | 2021.10.17 |