엔디안 예제

Endian 바이트 순서는 정수 및 부동 점 데이터에 영향을 주지만 프로그래머가 보고 의도한 문자열 순서를 유지관리함에 따라 문자열 문자열에는 영향을 주지 않습니다. 이 섹션에서는 가장 일반적인 종단 변형에서 32비트 번호 0A0B0C0Dh의 예제 레이아웃을 제공합니다. 다른 형식을 사용하는 여러 디지털 프로세서가 있습니다. 일반적인 임베디드 시스템과 일반 컴퓨터 CPU에서도 마찬가지입니다. 일반적인 컴퓨터(저장 장치, 주변 장치 등)에서 CPU가 아닌 역할에 사용되는 대부분의 프로세서는 항상 32비트는 아니지만 이러한 두 가지 기본 형식 중 하나를 사용합니다. 비트 필드 데이터 구조는 빅 및 리틀 엔디안 시스템에서 반대 순서로 컴파일러로 표시됩니다. 리틀 엔디안 머신: 빅 엔디안 씨가 담배를 피우고 있는지 모르겠어요. 그래, 나는 짧은 2 바이트 동의하고, 나는 그와 같은 그들을 읽을 것이다 : 위치 s는 0x12이며, 위치 s + 1은 0x34입니다. 그러나 내 세계에서 첫 번째 바이트는 가장 작습니다! short의 값은 바이트 0 + 256 * 바이트 1 또는 256 * X + W 또는 0x3412입니다. 빅 엔디안 및 리틀 엔디안 바이트 주문 모두에서 각 바이트 내의 비트는 빅 엔디안입니다.

즉, 지정된 수의 저장된 바이트로 표시되는 전체 비트 스트림에 대해 크거나 작은 엔디안이 되려는 시도는 없습니다. 예를 들어 hexadecimal 4F가 지정된 저장소 주소 범위의 다른 바이트와 함께 저장소에 먼저 배치되든 마지막이든 바이트 내의 비트 순서는 다음과 됩니다. W가 숫자로 해석될 경우 소수점 이하의 „18“이 될 것입니다 (그런데, 숫자로 해석해야한다고 말하는 것은 없습니다 – ASCII 문자 또는 완전히 다른 것일 수 있습니다). 응용 프로그램 이진 데이터 형식(예: MATLAB .mat 파일 또는 . 지형에 사용되는 BIL 데이터 형식은 일반적으로 endianness 독립적입니다. 대니 코헨은 1980년 기사에서 바이트 주문을 위해 리틀 엔디안과 빅엔디안이라는 용어를 소개했습니다. [1] [2] 바이트 주문 문제의 이 기술적, 정치적 시험에서, „엔디안“이름은 조나단 스위프트의 1726 풍자에서 그려진, 걸리버의 여행, 내전이 큰 끝 또는 삶은 계란의 작은 끝이 균열에 적절한 끝인지 여부를 통해 분출하는 가장 중요한 비트 또는 가장 중요한 비트를 포함하는 끝에서 계산하는 것과 유사합니다. [3] [4] 예제는 값의 메모리에 있는 저장소를 참조합니다. 육각표 표기형을 사용합니다. Endian 문제는 일반적인 인코딩 문제의 예입니다 – 데이터는 추상적 인 개념을 나타내야하며 나중에 개념을 데이터에서 만들어야합니다. 이 항목은 자체 문서(또는 시리즈)를 받을 자격이 있지만 endian 문제를 더 잘 이해해야 합니다.

추가 정보: 컴퓨터에서 만든 바이너리 파일을 다른 컴퓨터에서 읽을 때 Endianness는 다른 endianness가 있는 문제입니다.