Skip to content
Discussion options

You must be logged in to vote

JavaScript에서는 모든 숫자가 배정밀도 64비트 부동소수점 형식(double) 으로 표현된다
=> 모든수를 실수로 처리
JavaScript에서의 number 타입은 64비트 이진 형식으로 표현된다. 이 64비트는 부호 비트, 지수 부분, 가수 부분으로 나누어져 있다.

  • 부호 비트

첫 번째 비트는 부호를 나타낸다. 0은 양수, 1은 음수를 나타낸다.

  • 지수 부분

부호 비트 뒤의 11비트는 지수 부분이다. 이 부분은 숫자의 크기와 지수를 나타내며, 지수는 2의 보수 형식으로 표현된다.

  • 가수 부분

부호 비트와 지수 부분을 제외한 나머지 52비트는 가수 부분이다. 이 부분은 숫자의 정밀도를 나타낸다.

  • NaN과 Infinity

부동소수점 형식에서는 특별한 값으로 NaN(Not a Number)과 Infinity가 있다. 계산 결과가 유효하지 않을 때 NaN이 발생하고, 어떤 수를 0으로 나눌 때 Infinity가 발생한다.


64비트 부동소수점 형식은 넓은 범위의 숫자를 표현할 수 있지만, 숫자가 커지면 정밀도가 감소할 수 있다. 특히, 정수 부분이 크거나 작은 경우에는 정밀도 손실이 발생할 수 있다. 또한 부동소수점 형식에서는 일부 연산이 정확한 결과를 제공하지 않을 수 있으며, 부동소수점 연산에서 발생하는 오차를 고려해야 한다.

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by innerstella
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
More
Labels
2 participants