숫자·비트 연산·단위

부동소수점 변환기표시된 소수 뒤의 실제 값

소수 하나를 입력해 저장값과 비교하거나, 완전한 16진수 및 2진수 워드를 해석하세요.

부동소수점 변환기

입력

입력은 이 브라우저에서 처리되며 서버로 전송되지 않습니다.

소수점은 점을 쓰며 e/E 지수를 허용합니다. 16진수는 8/16자리, 2진수는 32/64비트여야 합니다. 워드에는 0x/0b와 공백, 탭을 사용할 수 있습니다.

결과

소수 표시 · 유효 숫자 9 / 17자리

0.100000001

정규화 수

부호 비트 · 1비트

0

저장 지수 · 8비트

01111011

가수 필드 · 부호 없는 정수 · 23비트

10011001100110011001101
정밀도
32비트 · binary32
입력 표현
10진수 값
16진수 워드
0x3DCCCCCD
2진수 워드
00111101110011001100110011001101
부호 비트
0
저장 지수
123
실제 지수
-4
가수 필드 · 부호 없는 정수
5033165
숨겨진 선행 비트
1
정확한 값의 식
13421773 × 2^-27
변환 상태
최근접 · 중간값은 짝수로 반올림
정확한 저장값 · 전체 10진수
0.100000001490116119384765625
부호 있는 오차 · 저장값 − 입력값
0.000000001490116119384765625

옵션

선택한 정밀도로 직접 반올림합니다. 가장 가까운 값, 정확한 중간은 짝수 쪽을 선택합니다. 정밀도나 표현을 바꾸면 현재 텍스트를 다시 읽습니다. 최대 1024자, 명시적 10진 지수 −4096…4096.

분석이 완료되었습니다.

부동소수점 변환기는 디버거에 보이는 짧은 소수와 실제 저장된 값의 차이를 확인할 때 유용합니다. 화면의 0.1이 정확히 10분의 1을 뜻하지는 않습니다. 전체 10진 전개와 부호 있는 오차를 함께 보면 차이가 생긴 방향까지 알 수 있습니다.

IEEE 754 변환에는 숫자를 새로 인코딩하는 작업과 기존 비트 패턴을 읽는 작업이 있습니다. 16진수와 10진수 사이의 변환을 선택할 때 입력의 의미를 먼저 정하세요. 메모리에서 가져온 값이라면 워드의 길이와 바이트 순서도 확인해야 합니다.

부동소수점 변환기로 차이 확인하기

정밀도마다 달라지는 저장 위치

부동소수점 변환기는 원래의 정확한 소수를 각 형식에 따로 반올림합니다. 단정밀도에서 0.1은 0.100000001490116119384765625로 저장됩니다. 배정밀도는 더 가깝지만 여전히 정확하지 않습니다. 오차의 부호를 보면 저장값이 목표보다 큰지 작은지 알 수 있습니다.

하나의 목표 위치를 간격이 큰 격자와 작은 격자에 투영하고 가장 가까운 표현 가능 지점을 원으로 표시한 그림.

서로 다른 NaN 유지

7FC00001과 7FC00002는 모두 quiet NaN이지만 페이로드는 각각 1과 2입니다. 원본 비트를 읽으므로 부호와 quiet 비트도 남습니다. NaN이라는 같은 이름으로 표시된다고 해서 오류 분석에 필요한 서로 다른 패턴이 합쳐지지 않습니다.

페이로드 표시가 서로 다른 두 NaN 패턴이 각각의 출력에서도 같은 표시를 유지하는 그림.

표현과 정밀도를 구분하는 순서

01

문자열을 어떻게 읽을지 선택

처음에는 10진수 0.1과 binary32가 선택됩니다. 입력 표현을 바꾸는 동작은 텍스트 변환이 아니라 재해석입니다. 기존 16진 워드를 읽을 때는 가장 높은 비트를 왼쪽에 두고 정밀도에 맞는 전체 길이를 입력하세요.

02

짧은 표시와 전체 값을 비교

짧은 소수는 32비트에서 유효 숫자 9자리, 64비트에서 17자리로 표시됩니다. 전체 저장값 영역에는 모든 소수 자리가 남습니다. 오차는 저장값에서 입력값을 뺀 값이므로 음수라고 해서 잘못된 계산은 아닙니다.

03

특수값은 적용 전에 미리 보기

예제에서 음의 0, 최소 비정규화 수, NaN 등 다섯 가지를 선택할 수 있습니다. 적용한 변경은 결과와 함께 되돌릴 수 있습니다. 자동 모드는 350ms 뒤 갱신하며 끄면 분석 버튼이나 Ctrl/Cmd + Enter를 사용합니다.

비트에서 정확한 값까지

부호, 지수, 가수 필드 분리

단정밀도와 배정밀도 형식은 각각 1/8/23과 1/11/52비트로 나뉩니다. 저장 지수와 실제 지수, 숨겨진 선행 비트를 별도로 표시합니다. 정규화 수의 선행 비트는 1, 비정규화 수는 0이므로 지수가 모두 0일 때 해석이 달라집니다.

중간값 부근의 이중 반올림 방지

10진 텍스트를 정확한 유리수로 읽어 목표 유효 숫자로 직접 반올림합니다. 1.000000059604644775390625보다 아주 조금 큰 수를 먼저 double로 바꾸면 차이가 없어질 수 있습니다. 이 변환은 원래의 차이를 보존하여 올바른 float32 이웃을 선택합니다.

검증용 워드와 보고서

16진수와 2진수 출력에는 signaling NaN까지 모든 비트가 유지됩니다. 워드만 복사하거나 입력, 정밀도, 필드, 정확한 소수와 오차를 포함한 보고서를 저장할 수 있습니다. 다른 디버거나 구현의 결과와 비교할 때 사용하세요.

반올림과 입력의 범위

지원 형식과 반올림은 고정
binary32와 binary64만 지원합니다. 가장 가까운 값을 고르고 중간값에서는 남는 유효 숫자의 최하위 비트가 짝수인 쪽을 택합니다. 반정밀도, bfloat16, 확장 정밀도, 다른 반올림 방식이나 하드웨어 예외 플래그는 제공하지 않습니다.
완전한 길이의 워드만 허용
16진수는 8자리 또는 16자리, 2진수는 32비트 또는 64비트여야 합니다. 맞는 접두사와 ASCII 공백, 탭은 허용하지만 밑줄과 다른 문자는 거부합니다. 부족한 비트를 채우거나 초과한 비트를 자르지 않으며 바이트 순서도 바꾸지 않습니다.
범위를 벗어나도 결과를 구별
너무 큰 유한 입력은 부호 있는 무한대로, 아주 작은 입력은 비정규화 수나 부호 있는 0으로 반올림될 수 있습니다. 유한한 10진 입력과 유한한 결과 사이에서만 오차를 계산합니다. 원본 워드나 NaN 같은 특수값에는 임의의 오차를 붙이지 않습니다.
quiet 비트는 페이로드에서 제외
가수의 최상위 비트가 1이면 quiet라는 일반적인 규칙을 사용합니다. 페이로드는 그 비트를 제외한 부분입니다. 텍스트 NaN은 페이로드 0의 표준 quiet NaN을 생성하므로 다른 패턴은 원본 워드로 입력해야 합니다. 이전 아키텍처의 예외 동작은 재현하지 않습니다.
단일 값과 명확한 입력 문법
최대 1024자, 명시적 10진 지수는 −4096부터 4096까지입니다. ASCII 숫자와 점을 쓰며 쉼표 소수, 수식, 줄바꿈은 허용하지 않습니다. 파일, URL, 일괄 입력, 바이트 순서 변환, 비트 버튼, 인접 값 탐색, ULP 거리와 상대 오차도 지원하지 않습니다.

부동소수점 변환기 자주 묻는 질문

단정밀도와 배정밀도는 어떻게 다른가요?

float32는 저장 가수 23비트에 정규화 수의 숨겨진 1비트를 더해 24비트 정밀도를 갖습니다. float64는 52비트와 숨겨진 비트로 53비트입니다. 지수도 8비트에서 11비트로 넓어집니다. 배정밀도는 범위와 간격이 유리하지만 0.1을 정확하게 저장하지는 못합니다.

입력한 소수와 저장된 값이 왜 다른가요?

유한한 2진 소수는 분모가 2의 거듭제곱인 수입니다. 0.1은 분모에 5가 필요하여 2진수로 무한히 반복됩니다. 제한된 유효 숫자에 맞춰 반올림한 값이 저장되므로 전체 10진 전개를 보면 입력과 차이가 납니다.

NaN과 Infinity, 음의 0은 어떻게 구별하나요?

지수가 모두 1이고 가수가 0이면 무한대, 가수가 0이 아니면 NaN입니다. 음의 0은 지수와 가수가 0이고 부호 비트만 1입니다. NaN은 quiet 비트와 나머지 페이로드도 따로 확인할 수 있습니다.

아주 작은 비정규화 수는 무엇인가요?

저장 지수가 0이고 가수가 0이 아닌 수입니다. 선행 비트는 0이며 실제 지수는 float32에서 −126, float64에서 −1022로 고정됩니다. 최소 정규화 수보다 작은 값을 점진적으로 표현하여 0과의 간격을 메웁니다.

7FC00000을 해석하면 어떤 값인가요?

32비트 16진 입력으로 읽으면 quiet NaN이며 페이로드는 0입니다. 7FC00001은 같은 분류이지만 페이로드가 1입니다. 64비트로 선택하면 워드 길이가 부족하므로 자동으로 채우지 않고 오류를 표시합니다.

결과가 예상과 다른가요?

다른 경계값 확인하기

부동소수점 변환기로 캡처한 워드나 반올림 경계의 소수를 확인하세요. 조건을 하나씩 바꾸고 현재 결과가 준비된 뒤 전체 보고서를 복사할 수 있습니다.