시간/숫자

IEEE 754 부동소수점 변환기

10진수 ↔ IEEE 754 이진 표현(단정밀도 또는 배정밀도) — 부호, 지수, 가수, 특수 값.


            

Computers store fractional numbers in binary under the IEEE 754 standard — a sign, an exponent, and a mantissa, packed into a fixed number of bits. This tool shows that representation for any decimal number and parses it back into a number.

How to use it

Common uses

Things to keep in mind

Most decimal fractions (0.1, for example) have no exact binary representation — that's the root cause of the typical rounding errors seen in calculation results.

Comparing floating-point numbers for exact equality (===) is unreliable — check instead whether the difference is smaller than a small threshold (epsilon).

이 도구에 대한 아티클: IEEE 754: 코드에서 0.1 + 0.2가 0.3과 같지 않은 이유

자주 묻는 질문

단정밀도와 배정밀도의 차이는 무엇인가요?

단정밀도(float, 32비트)는 약 7자리의 십진 정밀도를 제공하고, 배정밀도(double, 64비트)는 약 15-17자리를 제공합니다. JavaScript의 Number 타입은 배정밀도를 사용합니다.

일부 소수는 왜 정밀도를 잃나요?

IEEE 754는 숫자를 이진수로 저장하며, 많은 십진 분수(0.1 등)는 정확한 유한 이진 표현이 없습니다 — 따라서 아주 작은 반올림 오차와 함께 가장 가까운 가능한 값이 저장됩니다.

NaN, Infinity, -0은 무엇을 의미하나요?

NaN은 0/0과 같은 잘못된 연산의 결과입니다. Infinity/-Infinity는 값이 표현 가능한 범위를 초과할 때(예: 0으로 나누기) 나타납니다. +0과 -0은 부호 있는 0의 서로 다른 두 비트 표현이지만, 숫자로서는 동일합니다.

비정규화(subnormal) 숫자란 무엇인가요?

일반적인 형식으로 표현하기에는 절대값이 너무 작은 숫자를 위한 특수 모드입니다 — 가수의 암묵적인 1이 제거되어 정밀도 일부를 잃는 대가로 0에 점진적으로 가까워질 수 있습니다.

정확한 동등성 대신 소수를 올바르게 비교하는 방법은 무엇인가요?

a === b 대신 두 숫자의 차이가 작은 임계값(엡실론)보다 작은지 확인합니다: Math.abs(a - b) < 1e-9. 반올림 오차 때문에 정확한 동등성은 거의 보장되지 않습니다.

아티클: 시간/숫자

유닉스 시간: 컴퓨터가 1970년부터 시간을 세는 이유

1970년 1월 1일이 대부분의 컴퓨터 시스템에서 시간의 기준점이 된 이유.

Cron 표현식: 작업 일정을 해독하는 방법

*/15 * * * * 같은 표현식을 해독해 작업이 정확히 언제 실행되는지 아는 방법.

진법: 2진법, 8진법, 16진법이 존재하는 이유

CSS에서 색상 #FF5733이 10진수가 아니라 16진수로 표기되는 이유.

비트 연산: AND, OR, XOR이 비트 수준에서 어떻게 동작하는가

비트 AND가 논리 AND와 어떻게 다른지, 그리고 숫자의 개별 비트를 조작해야 하는 이유.

날짜 차이: 날짜 세기가 보이는 것보다 까다로운 이유

윤년 때문에 날짜를 단순하게 빼면 잘못된 결과가 나올 수 있는 이유.

나이 계산: 단순히 연도를 빼는 것이 아닌 이유

태어난 연도를 단순히 빼면 실제보다 한 살 많은 나이가 나올 수 있는 이유.

시간대: UTC가 GMT와 같지 않은 이유

UTC는 1년에 두 번 바뀌지 않지만 런던 시간(GMT/BST)은 바뀌는 이유.

기간 계산기: 시, 분, 초를 올바르게 더하는 방법

분과 초를 더할 때 10진법 덧셈과 마찬가지로 나머지를 다음 자리로 "올림"해야 하는 이유.

ISO 8601 Duration: 표준 형식으로 기간을 쓰는 방법

PT1H30M이 "1시간 30분"을 의미하고 "1분 30시간"이 아닌 이유.

주차 번호: 나라마다 주를 세는 방식이 다른 이유

ISO 8601 표준에 따라 1월 1일이 가끔 전년도 52주차나 53주차에 속하는 이유.

로마 숫자: 0과 자릿값이 없는 체계는 어떻게 작동하는가

IV가 6이 아니라 4를 의미하는 이유, 그리고 로마 숫자에서 뺄셈 규칙이 작동하는 방식.

숫자를 글자로: 숫자를 단어로 바꾸는 이유

은행 문서가 금액을 숫자와 글자로 동시에 쓰는 이유.