728x90
복습하기 위해 학부 수업 내용을 필기한 내용입니다.
이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다.
그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다.
▶Floating-Point Representation
- 분수량은 일반적으로 부동소수점을 사용하여 컴퓨터에서 표현된다.
- 숫자는 mantissa 또는 significant라고 불리는 분수 부분과 지수 또는 특성이라고 불리는 정수 부분으로 표현된다.
- m * b^e에서처럼, m = 맨티사, b = 사용 중인 숫자 시스템의 base, e = 지수.
- 예를 들어, 156.78이라는 숫자는 부동소수점 베이스-10 시스템에서 0.15678 * 10^3으로 나타낼 수 있다.
- 무리수는 정확하게 나타낼 수 없다.
- 집합의 값 중 하나와 정확히 일치하지 않는 유리수 또한 정확하게 표현될 수 없다.
- 이 두 가지 경우를 근사화하여 도입된 오류를 양자화 오류라고 합니다.
- 실제 근사치는 다음 두 가지 방법 중 하나로 달성된다.
- Chopping
- Rounding
728x90
- Rounding 하면 Chopping보다 낮은 절대 오차가 발생한다.
- 또한 일부 오류는 긍정적이고 일부 오류는 부정적이기 때문에 편향성이 도입되지 않는다.
- 일부 컴퓨터에서는 반올림을 사용한다.
- 그러나 이는 계산 오버헤드를 증가시키며, 결과적으로 많은 기계들이 간단한 Chopping을 사용한다.
- significant한 숫자의 수가 충분히 커서 결과적으로 발생하는 round-off error는 일반적으로 무시할 수 있다는 가정 하에서 정당화된다.
- 실수의 덧셈
- 지수부는 큰 것으로 맞추기 때문에, 작은 부분은 잘려나간다.
- 실수의 뺄셈
- 유효숫자가 정해져 있기에, 오차가 생긴다.
- 0.7642 * 10^3 - 0.7641 * 10^3 = 0.0001 * 10^3 = 0.1000 * 10^0
- 0.1000에서 유효숫자는 4자리이지만, 3자리는 알 수 없게 된다.
- 너무 가까운 수의 뺄셈
- 많은 연산의 반복
- 실수를 많이 더하다 보면 오차가 생겨서 제 값을 알 수 없게 된다.
- 큰 실수와 아주 작은 실수의 덧셈
- 0.0010 + 4000 = 0.4000 * 10^4 + 0.0000001 * 10^4 = 0.4000001 * 10^4 = 0.4000 * 10^4
- 유효숫자가 4자리라서, 뒤에 001은 사라지게 되었다. (오차 발생)
728x90
'컴퓨터공학 > 수치해석' 카테고리의 다른 글
[수치해석] Ch5_2. Roots of Equations - False Position Method (0) | 2022.10.20 |
---|---|
[수치해석] Ch5_1. Roots of Equations - Bisection Method (0) | 2022.10.20 |
[수치해석] Ch4_2. Truncation Errors and the Tayor Series (0) | 2022.10.14 |
[수치해석] Ch4_1. Truncation Errors and the Tayor Series (0) | 2022.10.04 |
[수치해석] Ch3_1. Approximations and Round-Off Errors (0) | 2022.10.04 |