[알고리즘] 부동 소수점 방식

SeHoony·2022년 3월 17일
0

컴퓨터시스템

목록 보기
5/5
post-thumbnail

부동 소수점 방식

1-1. 의미

: 실수를 근삿값으로 표현할 때 사용
: 부동은 움직이지 않는다의 부동(不動)이 아니라 소수점이 떠다닌다는 의미의 부동(浮動)이다.

1-2. 방식

: 부동 소수점 방식은 실수를 '부호부(s), 지수부(M), 가수부(E)'으로 구성
: 부호부(1비트), 지수부(8비트), 가수부(23비트) = 총 32비트
: N = (-1)^s X M X 2^E

1-3. 예시

숫자 -314.625를 부동 소수점 방식으로 표현하면,
1) 부호부 : 부호가 음수이기 때문에, 32비트의 가장 앞자리는 1
2) 가수부 :

  • 1> 314.625의 절댓값을 이진법으로 나타낸다.(100111010.101)
  • 2> 맨 앞의 1만 남기고 소수점을 왼쪽으로 당긴다.(1.00111010101)
  • 3> 1.00111010101에서 소수점 뒤의 숫자만 가수부에 넣고 남는 부분은 0으로 채운다
  • 4> 100111010.101 = 1.00111010101 X 2^8
    지수인 8에 2^(지수-1)-1을 더한 값을 이진법으로 계산하고 지수부에 넣는다.
    8 + 127 = 135(10000111)
  • 5> 결과적으로, -314.625를 부동 소수점 방식으로 표현하면 11000011100111010101000000000000이다

[참고] https://codetorial.net/articles/floating_point.html

profile
두 발로 매일 정진하는 두발자, 강세훈입니다. 저는 '두 발'이라는 이 단어를 참 좋아합니다. 이 말이 주는 건강, 정직 그리고 성실의 느낌이 제가 주는 분위기가 되었으면 좋겠습니다.

0개의 댓글