빅엔디안 예제

Posted by abitou on Αυγ 02, 2019

많은 메인프레임 컴퓨터는 빅엔디안이지만 대부분의 최신 컴퓨터는 거의 엔디안이 되지 않습니다. Endianness는 처음에 제품 라인에 장기적인 영향을 미칠 수있는 반도체 공급 업체에 의해 임의의 결정이다. 공급업체가 기술을 업데이트할 때 이전 버전과의 호환성을 유지하기 위해 기존 endianness를 유지합니다. 예를 들어, 모토로라 68000과 인텔 8086(x86 제품군의 전신)의 디자이너들은 1970년대에 그들의 엔디언성을 선택했으며 오늘날에도 계속해서 그들의 엔디언스를 사용하고 있습니다. 빅 엔디안과 리틀 엔디안은 조나단 스위프트의 걸리버 여행에서 파생된 데, 빅 엔디안들은 큰 끝에서 알을 부러뜨린 정치적 파벌(«원시적 방법»)을 깨고 자신의 주제를 요구한 릴리푸티안 왕에게 반항했다. 리틀 엔디안)을 작은 끝에서 알을 부러뜨린다. 대니 코헨은 1980년 기사에서 바이트 주문을 위해 리틀 엔디안과 빅엔디안(Big-Endian)라는 용어를 소개했습니다. [1] [2] 바이트 주문 문제의 이 기술적, 정치적 시험에서, «엔디안»이름은 조나단 스위프트의 1726 풍자에서 그려진, 걸리버의 여행, 내전이 큰 끝 또는 삶은 계란의 작은 끝이 균열에 적절한 끝인지 여부를 통해 분출하는 가장 중요한 비트 또는 가장 중요한 비트를 포함하는 끝에서 계산하는 것과 유사합니다. [3] [4] 비트 필드 데이터 구조는 빅 및 리틀 엔디안 시스템에서 반대 순서로 컴파일러로 표시됩니다. 빅 엔디안 바이트 순서는 네트워크 데이터 교환을 위한 «중립» 또는 표준으로 선택되었으며, 따라서 Big Endian 바이트 순서는 «네트워크 바이트 순서»라고도 합니다. 따라서 리틀 엔디안 시스템은 소켓을 통해 네트워크에 쓸 때 데이터의 내부 리틀 엔디안 표현을 빅 엔디안 바이트 순서로 변환합니다. 또한 리틀 엔디안 시스템은 네트워크 연결을 읽을 때 바이트 순서를 교환해야 합니다.

Java와 같은 언어는 Java 코드가 모든 플랫폼에서 실행될 수 있도록 이를 관리하고 프로그래머는 바이트 순서를 관리할 필요가 없습니다. Endianness는 컴퓨터에서 만든 바이너리 파일을 다른 컴퓨터에서 다른 endianness로 읽을 때 문제가 됩니다. 일부 CPU 명령 어세트는 bswap[21] (x86 – 486 이상) 및 rev[22] (ARMv6 이상)와 같은 endian 바이트 교환에 대한 기본 지원을 제공합니다. Endian 문제는 일반적인 인코딩 문제의 예입니다 – 데이터는 추상적 인 개념을 나타내야하며 나중에 개념을 데이터에서 만들어야합니다. 이 항목은 자체 문서(또는 시리즈)를 받을 자격이 있지만 endian 문제를 더 잘 이해해야 합니다.

Comments are closed.

Ο καιρός

ar8ra

advertisement