[CS] 10) 고정 소수점과 부동 소수점

songh·2024년 2월 25일
0

CS지식

목록 보기
11/35
post-thumbnail

컴퓨터에서 실수를 표현하는 방식으로 고정소수점과 부동소수점 두가지가 있다.

1. 고정 소수점

소수점이 찍힐 위치를 미리 정해놓고 소수를 표현하는 방식을 말하며, 부호(1비트)와 정수부(15비트), 소수부(16비트) 3가지 요소가 필요하다. 모든 비트에 저장되는 수들은 이진수로 저장된다. 장점은 실수를 정수부와 소수부로 표현해서 단순하지만 표현의 범위가 너무 적기도 하고 정밀도가 떨어져서 잘 사용하지 않는다.

동작과정

1) 실수의 부호를 확인해서 양수라면 부호비트(1비트)에 0이 저장된다.
2) 실수의 정수부와 소수부로 구분해서 2진수로 변환하고 저장한다.
3) 소수점을 기준으로 정수부는 뒤에서부터, 소수부는 앞에서부터 저장된다.
4) 남은 비트공간은 모두 0으로 저장된다.

2. 부동 소수점

실수를 가수부와 지수부로 표현한다. 가수는 실수의 실제값을 표현하고 지수는 크기를 표현하여 가수의 어디쯤에 소수점이 있는지를 나타낸다. 지수의 값에 따라 소수점이 움직이는 방식을 활용한 실수 표현방법을 말한다. 즉 소수점의 위치가 고정되어있지 않다. 장점으로는 표현할 수 있는 값의 범위가 넓어지지만 오차가 발생할 수 있다.

동작과정

정규화는 부동소수점 방식에서 이진수로 변환된 실수를 1.XXX * 2^(승) 형식으로 변환하는 것을 말한다. 이 정규화 방식은 부동소수점을 사용하는 모든 실수에 적용된다. 즉 정수부에 1만 남을 때까지 실수의 소수점 위치를 우측 또는 좌측으로 이동시키는 방법이다.

0개의 댓글

관련 채용 정보