2013-03-19 3 views
2

두 개의 이론적으로 동일한 배정도 숫자 사이의 뺄셈을 위해서는 어떤 순서로 크기를 변경해야합니까?배정도의 크기 순서

두 개의 배정 밀도 배열이 있습니다. 그들은 이론적으로 동일 할 것으로 예상됩니다. 두 가지 방법은 완전히 다른 두 가지 방법으로 계산되므로 두 방법 사이에 약간의 차이가 있습니다. 요소별로 요소를 검사했는데 최대 차이는 6.5557799910909154E-008이되었습니다. 내 상사는 배정 밀도가 매우 높은 차이라고 말하지만, 차이가 있다면 E-008의 순서가 맞다고 생각합니다.

답변

2

Double precision floating point는 다음의 형식을 갖고 프라 딥 감사

  • 부호 비트 1 비트
  • 지수 폭 : 11 비트
  • 유효수 정밀도 : 53 비트 (52 명시 적으로 저장)

이것은 15 - 17 자릿수의 유효 자릿수를 나타냅니다. 최대 유효 자릿수가 15 자릿수 인 십진수 문자열이 IEEE 754 배정 밀도로 변환 된 다음 동일한 유효 십진수로 다시 변환 된 경우 최종 문자열은 원본과 일치해야합니다. IEEE 754 배정 밀도가 적어도 유효 소수점이 17 인 십진수 문자열로 변환 된 다음 다시 double로 변환 된 경우 마지막 숫자는 원본과 일치해야합니다.

Single precision floating point 형식은 다음

  • 부호 비트 1 비트
  • 지수 폭 : 8 비트
  • 유효수 정밀도 : 24 (명시 적으로 저장된 23)

이것은 6에서 9까지 중요한 10 진수 자릿수를 제공합니다 (10 진수 문자열이 최대 6 자리의 십진수는 IEEE 754 단 정밀도로 변환 된 다음 같은 수의 유효 소수점으로 다시 변환됩니다. 그런 다음 최종 문자열은 원본과 일치해야합니다. IEEE 754 단 정밀도가 최소한 유효 소수 9 자리의 소수 문자열로 변환 된 다음 다시 단일 값으로 변환되는 경우 최종 숫자는 원본과 일치해야합니다.

최대 차이는 단 정밀도로 변환하는 것과 같은 정밀도가 떨어짐을 나타냅니다.

두 가지 방법 중 더 정확한 방법을 알고 있습니까? 주된 차이점 인 계산 속도와 정밀도 사이의 균형이 맞지 않습니까? 아니면 수치 적으로 덜 안정적인 알고리즘 중 하나입니까? 투입물의 정확도는 얼마입니까? 당신의 입력이 정확하지 않다면 정확도의 8 자리 숫자의 차이는 관련이 없을 수도 있습니다. 그렇지 않으면 행성의 궤적에서 화성을 잃을 수도 있습니다.