컴퓨터 수치 계산은 모두 이진법이지만 인코딩이 다르면 이진수가 다르게 생성됩니까?

WBOY
풀어 주다: 2016-08-04 09:20:10
원래의
1257명이 탐색했습니다.

예를 들어 2*3을 계산할 때 컴퓨터는 먼저 이를 바이너리로 변환하여 계산합니다. 인코딩 형식이 다르면 다른 바이너리에 해당하나요?

답글 내용:

예를 들어 2*3을 계산할 때 컴퓨터는 먼저 이를 바이너리로 변환하여 계산합니다. 인코딩 형식이 다르면 다른 바이너리에 해당하나요?

예, 인코딩마다 데이터 기록 방법이 다르며 물론 유사합니다.
인코딩은 주로 문자열을 대상으로 합니다. 디지털 스토리지도 빅 엔디안 순서와 스몰 엔디안 순서로 구분되는데, 이는 모두 서로 다른 이진 데이터 기록 규칙을 나타냅니다.

질문 주제에는 먼저 명확히 해야 할 몇 가지 기본 개념이 있습니다.

먼저 말씀하시는 내용은 소스 코드에서 "2*3"이어야 합니다. 소스 코드 파일의 문자 인코딩은 다를 수 있으며 바이너리 표현도 다릅니다. 그런 다음 실행되기 전에 대상 코드를 생성하기 위해 먼저 컴파일해야 하는 "계산"에 대해 언급했습니다(CPU 명령어에 의해 해석되거나 실행되는지 여부). 똑같습니다. 가상 머신에서 생성된 바이트코드인 경우 숫자 형식은 바이트코드의 인코딩과 동일합니다.

먼저 데이터의 종류를 파악해야 합니다. 2*3의 계산은 10*11(이진수)인 두 개의 정수에 대한 계산입니다. 인코딩이 없습니다. 다른 아키텍처에 적용하면 정수의 길이가 다르다는 의미입니다.

언급하신 인코딩은 문자용입니다. 예를 들어 2와 3의 ASCII는 각각 0110010과 0110011입니다. 이는 계산에 사용되지 않습니다.

예, 원하는 인코딩을 사용하고 원하는 대로 저장할 수 있습니다.
단, 계산 결과는 동일해야 합니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿