"엔디언, 빅엔디언, 리틀엔디언"의 두 판 사이의 차이

16번째 줄: 16번째 줄:
! 10진수 !! 16진수 !! 빅 엔디언 || 리틀 엔디언
! 10진수 !! 16진수 !! 빅 엔디언 || 리틀 엔디언
|-
|-
| 255 || 0xFF || 00 00 00 FF || FF 00 00 00
| 255 || 0xFF || <code>00 00 00 FF</code> || <code>FF 00 00 00</code>
|-
| 168496141 || 0x0A0B0C0D || <code>0A 0B 0C 0D</code> || <code>0D 0C 0B 0A</code>
|}
|}



2016년 6월 23일 (목) 13:17 판

endianness
엔디언
big-endian, little-endian
빅엔디언, 리틀엔디언

1 엔디언

  • Byte Order과 연관된 개념
  • 엔디언은 메모리의 배열하는 방법

2 빅엔디언, 리틀엔디언

  • 빅 엔디언 - 메모리 증가 방향과 동일하게 저장
  • 리틀 엔디언 - 메모리 증가 방향과 반대로 저장
10진수 16진수 빅 엔디언 리틀 엔디언
255 0xFF 00 00 00 FF FF 00 00 00
168496141 0x0A0B0C0D 0A 0B 0C 0D 0D 0C 0B 0A

 

 

3 리눅스 엔디언 확인

#include <stdio.h>

void main()
{
    int a = 255;
    char *pC = (char *)&a;
    int i;

    for (i = 0; i < sizeof(a); i++)
    {
        printf("%02x ", (unsigned char)*pC++);
    }
}
// ff 00 00 00 
// 리눅스는 실제 값과 메모리 순서값이 반대임 - 리틀엔디언

4 참고 자료

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}