다른 곳에서 질문글을 보면서 잠깐 해봤는데 제 계산과 실제 결과가 달라서요, 딱 2배 차이가 나고 있습니다. (사실 근소한 오차는 더 있을지도)
제 계산:
1)
FLX_MAX는 7F 7F FF FF - 이건 코드로로 확인 가능
0111 1111 0111 1111 1111 1111 1111 1111
0: 부호
1111 1110: 지수(254-127 = 2^127승)
1...1(23자리): 가수
2)
부동소수점의 덧셈은, 지수를 두 수 중 큰 쪽에 맞추고(작은 쪽은 그만큼 가수의 소숫점이 이동), 그 상태에서 가수부를 더한 후, 다시 가수가 1.m 형태가 되도록 정규화
3)
따라서 구하려는 X는, 지수를 2^127에 맞췄을 때 가수가 0.000 0000 0000 0000 0000 0001 (2^-23)이 되는 값
= 2^(-23) * 2^127
= 1.0 * 2^104