달력

22025  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28


 

single은 32비트 format이기 때문에 

가장 앞자리 sign bit 인 S(1 bit) 를 제외한 나머지 31비트가 

exponent(지수부분) 8 bit, fraction(소수점 아래 부분) 23 bit로 표현하는 것이고,

double

exponent 11 bit, fraction 52 bit로 표현하는 것이다.

 

exponent는 unsigned 이며 읽어올 때 -127을 한 수를 읽어오기 때문에 실제 값에서 127을 더해서 저장되게 된다.

fraction은 말 그대로 소수점 아래 부분을 의미하며, 1.xxx 의 1을 제외한 xxx 부분만 저장된다.

저장 공간을 조금이라도 더 쓰기위한 발악이라고 보면 될 거 같다


만약 1.0101011 * 2^5 이라는 숫자가 있으면

exponent 부분에는 132, fraction 부분에는 000...00101011 (0의 갯수는 비트수에 따라 다를것임) 이 들어갈 것이다.

Posted by 시리얼르
|