계산기 엡실론(Machine epsilon)은 부동소수점 연산에서 반올림을 함으로써 발생하는 오차의 상한이다. 이 값은 컴퓨터 과학에서 컴퓨터 연산을 통한 수치 해석을 특징짓는다. 기호는 그리스 문자 엡실론 또는 볼드체 로마자 u를 사용한다.
표준적인 하드웨어 부동소수점 연산의 값
IEEE 754 - 2008 |
통상명 |
C++ 데이터 타입 |
밑 |
정밀도 |
계산기 엡실론[a] |
계산기 엡실론[b]
|
binary16 |
반정밀도 |
short |
2 |
11 (one bit is implicit) |
2−11 = 4.88e-04 |
2−10 = 9.77e-04
|
binary32 |
단정밀도 |
float |
2 |
24 (one bit is implicit) |
2−24 = 5.96e-08 |
2−23 = 1.19e-07
|
binary64 |
배정밀도 |
double |
2 |
53 (one bit is implicit) |
2−53 = 1.11e-16 |
2−52 = 2.22e-16
|
binary80 |
확장배정밀도 |
_float80[1] |
2 |
64 |
2−64 = 5.42e-20 |
2−63 = 1.08e-19
|
binary128 |
사배정밀도 |
_float128[1] |
2 |
113 (one bit is implicit) |
2−113 = 9.63e-35 |
2−112 = 1.93e-34
|
decimal32 |
십진 단정밀도 |
_Decimal32[2] |
10 |
7 |
5 × 10−7 |
10−6
|
decimal64 |
십진 배정밀도 |
_Decimal64[2] |
10 |
16 |
5 × 10−16 |
10−15
|
decimal128 |
십진 사배정밀도 |
_Decimal128[2] |
10 |
34 |
5 × 10−34 |
10−33
|
a according to Prof. Demmel, LAPACK, Scilab
b according to Prof. Higham; ISO C standard; C, C++ and 파이썬 language constants; Mathematica, MATLAB and Octave; various textbooks - see below for the latter definition
각주