2010-02-24 2 views
1

나는 최소 및 값이 있다는 것을 알고 :
분 : 3.362... 10-4932
최대 : 내게 지수 부분을 제공 1.189... 10+4932
(2^14) * log(2) ~ 4932. 그러나 나는 가수를 이해할 수 없다.IEEE 확장 배정 밀도의 최소값과 최대 값을 계산하는 방법은 무엇입니까?

+0

서식을 지정하지 않은 채 다른 숫자 옆에 너무 많은 숫자가 있기 때문에 질문을 읽기가 어렵습니다. 이 문제를 해결할 수 있을까요? – Tronic

+0

@ 트로닉,이게 더 나은가요? – atoMerz

답변

0

가수는 암시적인 시작 1 비트를 갖는다. 이렇게하면 항상 1 인 비트에 대해 1 비트의 저장 공간이 낭비되는 것을 피할 수 있습니다 (모든 지수 비트가 0 일 때 특별한 경우 인 감소 된 부동 소수점 제외).

암시 적 첫 번째 숫자는 이진수로만 가능합니다. 예 : 10 진수로 3.14e + 2를 가질 수 있으며, 더 이상 숫자를 알 수 없으므로 첫 번째 숫자 (3)을 삭제할 수 없습니다.

예를 들어 부동 소수점 값은 모든 지수 값 (EEE)가 포지티브 일 수 있고, 000 개의 가장 부정적인 지수되도록 바이어스이 특정 부동 소수점 형식에 대한 상수이다

(s ? -1 : 1) * ((binary)1mmmmm << ((binary)eee - bias)); 

(C 스타일 의사 코드)로 읽혀.

따라서 지수의 최대 값 (편향되지 않음)으로 시프트 한 0b111111 (가수보다 1 비트 더)으로 최대 값을 계산할 수 있습니다. imum 값은 음수 부호와 같습니다.

+0

OK이 IEEE 표준의 최대 값은 바이너리 형식으로 1.11111 ... 1 (마침표 뒤 64 자) 여야합니다.이 값은 십진수로 거의 2입니다. 그러나 2는 위의 1.189와 같이 아무것도 아닙니다. 최소값과 최대 값에도 다른 가수가있는 것 같습니다. 오후 8시 30 분 P.S. (2^14) * log (2) ~ 4932이어야합니다. – atoMerz

관련 문제