HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
👻
개발 기록
/
📑
강의 정리
/
📑
컴퓨터의 유리수 표현법
📑

컴퓨터의 유리수 표현법

Created
Mar 16, 2023 03:13 AM
Type
공학수학
Mento
포프
Created By

실수

  • 유리수와 무리수로 이루어진 수 체계
  • 유리수
    • 두 정수의 비로 나타낼 수 있는 수, 바꿔 말해 분수로 나타낼 수 있는 소수
    • 정수는 유리수에 포함
    • notion image
  • 무리수
    • 두 정수의 비로 나타낼 수 없는 수, 바꿔 말해 분수로 나타낼 수 없는 소수
    • notion image
 

10진법 실수

+와 -의 경계가 점(.)임
+와 -의 경계가 점(.)임
 

2진법 실수

notion image
 
💡
실수든 정수든 기본적인 개념은 n의 승수로 하나씩 줄여가면서 표현하는 것임.
 

잠깐 복습! 10진수 → 2진수

notion image
 

실수의 10진수 → 2진수

0.625 - 0.5 = 0.125, 0.125 - 0.125 = 0
0.625 - 0.5 = 0.125, 0.125 - 0.125 = 0
notion image
notion image
 

정수의 이진법 표기의 한계

notion image
  • 2진수로 표현 못하는 실수가 존재 함.
  • 내려가다가 어느 순간 비트 수의 한계가 있죠? 끊어야 됨.
  • 그럼 이 수를 정확히 표현 하지 못하고 나머지는 누락됨.
  • 누락된 만큼 오차 발생.
  • 역사적으로 다양한 방법이 존재했지만 이젠 표준화가 됨. 그 중 고정 소수점 수와 부동 소수점 수를 알아볼 것임.
 

고정 소수점 수

  • 정수 표현법을 실수에 적용하는 가장 간단한 방법.
  • 고정 소수점의 의미는 N자리 숫자가 있을 때 언제나 정해진 자리에 소수점이 찍힌다는 의미.
  • 8비트 예
    • 총 7비트로 실수 표현 가능. 남은 1비트는 부호를 표현.
    • notion image
    • 상위 4비트는 정수 부분, 하위 3비트는 소수 부분을 표현하면 기호로는 Q4.3이라고 함.
    • notion image
  • 장점
    • 표현할 수 있는 범위의 값은 확실히 표현 가능.
  • 단점
    • 표현 가능한 수의 범위가 작아짐.
    • 최근 언어에서 자체적으로 지원하지도 않고 CPU에 달린 실수 계산 전다마 장치는 고정 소수점 수를 지원 안 함.
    • 연산 뒤 정밀도 손실 및 오버플로 발생 가능.
      • notion image
 

부동 소수점 수

  • 부동 : floating
  • 소수점이 둥둥 떠다닌다는 말. 즉 개념상으로 1234.56이란 수가 있다면 오른쪽으로 옮기고 왼쪽으로 옮겨서 1234560000 또는 0.0000123456이 만들어진다는 소리.
  • 실제 유효한 숫자는 같지만 소수점을 움직이는 것만으로도 표현 가능한 범위가 엄청 늘어남.
  • 단 정밀도, 오차가 발생한다는 단점.
  • 우선 장점부터 보면
    • 표현 가능한 범위가 넓음.
    • 근대 CPU, 최근 GPU, 웬만한 프로그래밍 언어에서 다 지원.
  • 단점
    • 돈 관련 프로그램에 쓰기 부적합.
    • 조금씩 사라짐
      조금씩 사라짐
    • 그러나 대부분의 경우에는 적합. 예를 들어 게임에서 총끝에서 나는 연기효과를 보여주는 1mm 틀리다고 문제가 되지 않음.
  • 그럼 컴퓨터에 어떻게 구현되어 있는지 보자.
음수, 양수 표현할 때 2의 보수 안 씀. 0부터 255까지 저장한 다음 127만큼 왼쪽으로 절반 밀어서 씀.
음수, 양수 표현할 때 2의 보수 안 씀. 0부터 255까지 저장한 다음 127만큼 왼쪽으로 절반 밀어서 씀.
notion image
notion image
가산기를 거치는 게 아닌 별도의 부동 소수점 처리 장치가 있어 보수로 바꾸지 않음.
가산기를 거치는 게 아닌 별도의 부동 소수점 처리 장치가 있어 보수로 바꾸지 않음.
2진수의 소수점 표기를 10진수로 계산하는 방법
2진수의 소수점 표기를 10진수로 계산하는 방법
지수비트 구하는 방법
지수비트 구하는 방법
지수값 -127(지수비트 0x00)은 다른 공식 씀.
지수값 -127(지수비트 0x00)은 다른 공식 씀.

정리

지수비트와 가수비트에 따른 값과 계산식
지수비트와 가수비트에 따른 값과 계산식

반올림 오차

  • 0.1, 3.14처럼 숫자가 정확하게 안나오는 경우가 있음.
  • 수학적으로 실수는 무한대지만 개수가 정해진 비트로 표현하다보니 근사치로 나오는 경우가 생김.
  • 이러한 오류를 반올림 오차라 함.