[JavaScript] Number Object - IEEE 754, SAFE_INTERGER

Narcoker·2023년 6월 12일
0

JavaScript

목록 보기
28/55

IEEE 754

자바스크립트는 IEEE 754에 정의된 64비트 부동 소수점으로 수를 처리한다.
즉, 64비트로 최소값과 최대값을 처리한다.

정수와 실수를 구분하지 않는다.

  • 1을 1.0로 처리
  • 1과 1.2 를 더할 수 있음

64비트 구성

sign

  • 63번지 : 1비트
  • 부호 표기 비트
  • 값이 0이면 양수, 1이면 음수

exponent

  • 52~62 번지 : 11비트
  • 지수 비트

fraction

  • 0~51 번지 : 52 + 1(sign) = 53 비트
  • 가수 비트

Quiet NaN

Quiet NaN잘못된 입력으로 인해 예외를 발생시키지 않고
NaN을 반환하여 연산을 지속시키는 역할을 한다.

Quiet NaN의 경우 가수부의 모든 bit를 1로 채운다.

Signaling NaN

Signaling NaNquiet NaN과는 반대로,
잘못된 연산 시에 예외를 발생시키는 경우를 나타낸다.

Signaling NaN가수부의 대부분의 bit를 0으로 채우고 최소 1개의 bit를 1로 채운다.

Number.MAX_SAFE_INTERGER

지수(e)를 사용하지 않고 나타낼 수 있는 최대값

2^53 - 1 : 900199254740991
= Math.pow(2, 53) - 1

Number.MAX_SAFE_INTERGER

지수(e)를 사용하지 않고 나타낼 수 있는 최소값

-(2^53 - 1) : -900199254740991
= -(Math.pow(2, 53) - 1)

profile
열정, 끈기, 집념의 Frontend Developer

0개의 댓글