Nodejs의 데이터 구조와 엔디안

데이터 구조는 Wikipedia에 따라 데이터 값, 데이터 값 간의 관계 및 데이터에 적용할 수 있는 기능 또는 작업의 모음입니다.

데이터 구조의 메모리
메모리의 개념은 유한한 메모리 슬롯이 있다는 것입니다. 그래서 지칠 수 있습니다.
프로그램은 항상 여유 메모리 슬롯에 저장됩니다. 메모리는 비트와 바이트로 저장됩니다. 8비트가 바이트를 만듭니다.

예를 들어:

1 represented as a byte is 0000 0001         
2 represented as a byte is 0000 0010
3 represented as a byte is 0000 0011
4 represented as a byte is 0000 0100


이들은 base 2로 표시됩니다. 그리고 base 2^8 = 256 로 인해 저장할 수 있는 유한한 숫자를 제공합니다. 따라서 더 큰 숫자를 저장하기 위해 바이트를 늘립니다.

예를 들어 Java에서 "int"는 4바이트, 32비트 정수에 해당합니다. "long"유형은 64비트 정수인 8바이트를 나타냅니다.

데이터 구조의 엔디안
컴퓨터 메모리 저장소의 Endianness 개념은 바이트를 읽는 방법을 나타냅니다. 먼저 Little-endian(왼쪽에서 오른쪽으로 읽기)이라고 하는 가장 작은 바이트 값 또는 big-endian(왼쪽에서 오른쪽으로 읽기)이라고 하는 가장 큰 바이트 값일 수 있습니다.
예를 들어,

65,000 decimal number in base 2 is: 0b11111101 11101000.
0b here helps us know it is in base 2 and not 1,111,110,111,101,000


위의 답변은 빅 엔디안 바이트로 되어 있는데, 가장 큰 0b11111101을 가진 바이트가 왼쪽에서 오른쪽으로 먼저 읽기 때문에 쓰기 때문입니다. Google에서 다른 0 바이트 "0b1111110100000000 to base 10"으로 채워진 빅엔디안을 변환하여 이를 확인할 수 있습니다. 결과는 64,768로 초기 수인 65,000에 매우 가깝습니다.

네트워크의 경우 표준은 Big-endian이고 대부분의 PC의 경우 표준은 Little-endian입니다. 이 code 스니펫을 온라인으로 확인하여 컴퓨터에서 실행되는 엔디안을 알아보세요. 내 컴퓨터는 Little-endian에서 실행됩니다.

엔디안은 이러한 불필요한 복잡성을 제거하는 현대 컴퓨터 언어와 바이엔디안이고 둘 모두를 처리할 수 있는 프로세서로 인해 크게 문제가 되지 않았습니다.

더 많은 연구를 원하시면 https://www.algoexpert.io을 방문하십시오.

좋은 웹페이지 즐겨찾기