일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Reverse Me
- abex crack me 1번
- 메이플스토리 M 사전예약
- 1.9.2
- 구조체 함수
- 리틀엔디언
- react native
- 안드로이드 백도어
- 빅엔디언
- abex crack me 2번 문제풀이
- 덧셈
- 배열 정렬
- 프로그래밍 언어론
- UDP daytime
- 재밌는 모바일게임
- 프론트엔드 개발자
- 네트워크 관리사 2급 필기
- 배열 탐색
- 배열
- 구조체
- 오버워치
- sa 계정 비밀번호 변경
- c언어 알고리즘
- abex crack me 5번문제
- 마인크래프트
- 리버싱
- 레나 리버싱
- 알고리즘
- C언어
- 암호화폐
- Today
- Total
Gyejoong's Information
리틀엔디언과 빅엔디언의 차이점 본문
우선 엔디언(Endianness)은 컴퓨터의 메모리와 같은 1차원의 공간에 여러 개의 연속된
대상을 배열하는 방법을 뜻하며, 바이트를 배열하는 방법을 특히 바이트 순서(Byte order)라 한다.
엔디언은 보통 큰 단위가 앞에 나오는 빅 엔디언과 작은 단위가 앞에 나오는 리틀 엔디언으로 나뉘게 된다.
간단하게 차이점을 알아보자면 그림으로 알수있다.
출처 : 위키백과
위 그림은 빅엔디언의 그림이다. 32비트의 정수를 메모리에 배열할 때, ABCD순서로
큰단위를 앞에 배열하는 것을 볼 수있다.
출처 : 위키백과
위 그림은 리틀엔디언의 그림이다. 32비트의 정수를 메모리에 배열할 때, DCBA순서로 작은단위가
앞에 배열된 것을 볼 수있다.
좀더 간단하게 차이점에 대해서 알아보자면 바이트순서(byte order)로 알아볼 수 있을것이다.
우선 표를 하나 작성하여 보겠다.
종류 |
0x1234의 표현 |
0x12345678의 표현 |
빅 엔디언 |
12 34 |
12 34 56 78 |
리틀 엔디언 |
34 12 |
78 56 34 12 |
위쪽에 빅엔디언의 그림과 리틀엔디언의 그림과 비교해 보았을 때, 같은점을 볼 수있다.
빅엔디언에서는 0ABCD 이런식으로 배열된것을 볼수 있었고, 0x1234의표현과 0x12345678의 표현으로 보았을때,
12 34와 12 34 56 78 이런식으로 배열이 되는 것을 확인할 수있고
리틀 엔디언은 위쪽 그림에서 0DCBA순서르 배열 된것을 볼수 있고, 0x1234의 표현과 0x12345678의 표현으로 볼때,
34 12, 78 56 34 12 이런식으로 배열이 되는 것을 확인할 수있다.
간단하게 정리하자면
리틀엔디언과 빅엔디언의 차이점은 바이트 순서(Byte order)이고, 빅엔디언은 큰 단위가 앞에,
리틀엔디언은 작은단위가 앞에 온다.
'Study > Socket programming' 카테고리의 다른 글
TCP/IP 프로토콜 소켓프로그래밍 - UDP로 daytime서비스 구현하기 (0) | 2016.10.27 |
---|---|
소켓프로그래밍 서버 코드 (daytime, echo) (0) | 2016.10.05 |
소켓 프로그래밍 클라이언트 코드(daytime,qotd,echo,finger) (0) | 2016.10.05 |