Unity 내일배움캠프 TIL 1024 | int와 float

cheeseonrose·2023년 10월 24일
0

Unity 내일배움캠프

목록 보기
62/89
post-thumbnail

💡 자료형 - int와 float

🍦 Int

  • int는 정수를 표현하는 자료형으로, 4바이트의 크기를 갖는다.
  • 표현 범위 : -2,147,483,648~+2,147,483,647 (약 21억)
  • uint
    • int 자료형에서 맨 앞의 부호 비트까지 사용하여 수를 표현하는 자료형
    • 표현 범위 : 0~4,294,967,295 (약 42억)

🍧 float

  • float는 실수를 표현하는 자료형으로, 4바이트의 크기를 갖는다.
  • C#에서는 숫자 뒤에 f를 붙여서 표기한다.
    예 : 2f
  • 표현 범위 : ±1.5 x 10^(−45) ~ ±3.4 x 10^38
  • 부호 비트 + 지수 비트 + 유효 자리 비트로 구성되어 수를 표현하는 부동소수점 방식을 사용한다.
    • 부동소수점 : 실수를 가수부와 지수부로 나누어 표현하는 방식
    • 고정소수점 방식은 표현할 수 있는 값의 범위가 매우 적다는 단점이 있기 때문에 부동소수점 방식을 사용한다.

🍨 int vs float

  • float는 부동소수점 방식을 사용하여 수를 표현하기 때문에, 같은 4바이트 크기를 갖는 int보다 훨씬 더 큰 수를 표현할 수 있다.
  • 그렇다면 더 큰 수를 표현할 수 있는 float가 무조건적으로 좋은 것일까?
    • 큰 범위의 숫자를 표현할 수 있지만, 부동소수점 방식에 의한 오차가 존재한다.
      -> 컴퓨터의 메모리는 한정적이기 때문에 실수의 소숫점을 표현할 수 있는 수의 제한이 존재
      -> 무한 소수같은 수를 모두 표현할 수 없음
    • double의 경우에도 더 많은 비트를 할당함으로써 오차가 발생할 확률이 줄어들 뿐, 100% 정확한 값은 아니다!

출처 - C# 기본 자료형 종류와 범위, 크기
출처 - 실수의 비트 표현 방법
출처 - 컴퓨터에서 실수의 표현
출처 - 실수 표현(부동소수점) 원리 한눈에 이해하기
출처 - 같은 4byte int와 float의 차이



기술 면접 대비 int와 float에 대하여 다시 정리해보았다!

끗~!

0개의 댓글