728x90
반응형
비트(bit)와 바이트(byte)
컴퓨터는 모든 데이터를 2진수로 표현하고 처리한다.
비트(bit)란 컴퓨터가 데이터를 처리하기 위해 사용하는 데이터의 가장 최소 단위이다.
이러한 비트에는 2진수의 값(0과 1)을 한 개만 저장할 수 있다.
바이트(byte)는 위와 같은 비트가 8개 모여서 구성되며, 한 문자를 표현할 수 있는 최소 단위이다.
바이트 저장 순서
컴퓨터가 데이터를 메모리에 저장할 때는 바이트 단위로 나눠서 저장한다.
하지만 컴퓨터가 저장하는 데이터는 대게 32비트 (4byte), 64비트 (8byte로) 구성된다.
따라서 이렇게 연속되는 바이트를 순서대로 저장해야 하는데, 이것을 바이트 저장 순서라고 한다.
이때 바이트가 저장되는 순서에 따라 두 가지 방식으로 나뉜다.
1. 빅 엔디안 (big endian)
2. 리틀 엔디안 (little endian)

16진수 0x12345678을 대입했다고 치면
빅 엔디안의 경우 {0x12, 0x34, 0x56, 0x78....} 순서로 메모리 주소가 저장됨.
리틀 엔디안의 경우 {0x78, 0x56, 0x34, 0x12...} 순서로 메모리 주소가 저장됨.
대부분의 시스템은 인텔 기반의 윈도이므로 리틀 엔디안의 방식을 사용하고 있다.
하지만 네트워크를 통해 데이터를 전송할 때에는 빅 엔디안의 방식이 사용된다.
따라서 인텔 기반의 시스템에서 데이터 전송을 할 때에는 바이트 순서에 신경을 써야 한다..
728x90
반응형
'📕Programming > 📝Etc' 카테고리의 다른 글
| 벡터 중복 원소 제거 (0) | 2024.11.12 |
|---|---|
| 비주얼 단축키 (0) | 2024.05.29 |
| ios_base::sync_with_stdio(false), cin.tie(0) 시간초과 해결 (0) | 2024.01.02 |
| string을 int로 변환하기(반대 경우도) [to_string, stoi, stringstream] (0) | 2023.11.27 |
| pragma region 및 endregion (0) | 2023.07.04 |