컴퓨터구조 10-2

BakJeonghyun·2022년 11월 2일
0

전공컴퓨터구조

목록 보기
12/13

연습문제

1.

0.5를 IEEE-754의 단일 정밀도 방식으로 표현할 경우 가수 부분 23비트는?

IEEE-754 표준
부동 소수점 형식은 오랫동안 컴퓨터 설계자들에게 풀어야 할 과제였다. 그러다 미국의 전기전자공학괴가 부동 소수점 형식에 대한 표준안인 IEEE-754를 개발하게 되었고, 이를 대부분의 컴퓨터에서 사용하고 있다. IEEE-754 표준안은 부동 소수점 연산의 소프트웨어, 하드웨어 구현 모두에 대해 유효할 뿐ㅁㄴ 아니라 발생할 수 있는 라운딩, 오버플로우, 언더플로우 및 여러 가지 예외 사항도 다루고 있다. IEEE-754 표준안은 실수를 위해 단일 정밀도(C언어에서 float)와 2배 정밀도(C언어에서 double)라는 두 가지 형식을 제공하며, 이는 그림과 같이 구성되어 있다.

  • 단일 정밀도(C언어에서 float)
    부호, 지수, 가수
    1bit, 8bits, 23bits = 32bits

  • 2배 정밀도(C언어에서 double)
    부호, 지수, 가수
    1bit, 11bits, 52bits = 64bits

IEEE-754 표준안은 정규화 표현을 사용하며, 앞 절에서 소개한 대로 2진 소수점 왼쪽 1비트를 잠복 비트로 사용한다. 따라서 단일 정밀도 방식의 경우 실숫값 V는 다음과 같다.

2 정규화와 잠복 비트

부동 소수점은 하나의 실수가 무한한 방법으로 표현된다는 문제점이 있다. 즉, 하나의 실수에 대한 고유한 표현이 없다. 예를 들어, 실수 0.0613은 다음과 같이 수많은 방법으로 나타낼 수 있다.

0.00613 x 101
0.0613 x 100
0.613 x 10-1
6.13 x 10-2
61.3 x 10-3

이와 같은 부동 소수점 표현을 비정규화 수denormalized number라고 한다. 어떤 수에 대해 고유한 표현 방식이 없다면 컴퓨터가 수를 처리하는 데 큰 혼란이 생긴다. 따라서 실수에 대한 유일한 부동 소수점 표현을 위해 특정한 제약을 둘 필요가 있다. 이는 다양한 방법으로 할 수 있지만 일반적으로 소수점 왼쪽에 있는 수를 0이 아닌 한 자리 수로 제한한다.

profile
I just got started a blog.

0개의 댓글