IEEE 754(5)
-
부동 소수점 - 6. 정리 및 실전 예제 (부동 소수점 & IEEE 754 표준)
정리 및 실전 예제 (부동 소수점 & IEEE 754 표준)부동 소수점(Floating-Point) 연산은 컴퓨터에서 실수를 표현하고 계산하는 표준적인 방식이지만, 정확한 연산이 필요한 경우에는 주의해야 합니다.지금까지 배운 내용을 정리하고, IEEE 754 표준을 더 자세히 설명한 후, Python을 이용한 실전 실험을 수행해보겠습니다.1. 부동 소수점 & IEEE 754 표준 개요IEEE 754 표준이란?IEEE 754는 부동 소수점을 저장하고 연산하는 방식을 정의하는 표준으로, 거의 모든 현대 컴퓨터와 프로그래밍 언어에서 사용됩니다.IEEE 754는 부동 소수점을 3가지 요소로 표현합니다.비트 수 구성 요소 설명1비트부호(Sign Bit)숫자의 양수(0) 또는 음수(1)8비트 (32비트) / 11비..
2025.02.08 -
부동 소수점 - 4. 부동 소수점 연산의 한계
부동 소수점 연산의 한계부동 소수점 연산은 우리가 예상하는 정확한 값과 다른 결과를 반환할 수 있습니다.예를 들어, 다음과 같은 연산을 수행할 때:print(0.1 + 0.2) # 예상: 0.3, 실제 출력: 0.30000000000000004우리는 0.1 + 0.2 = 0.3이 나와야 한다고 생각하지만, 실제 출력값은 0.30000000000000004입니다.이러한 오차는 부동 소수점 방식이 실수를 근사값으로 저장하기 때문에 발생합니다.1. 왜 부동 소수점 연산이 정확하지 않을까?(1) 일부 10진 소수는 2진수로 정확히 표현할 수 없음컴퓨터는 실수를 **2진법(0과 1)**으로 저장하는데, 일부 10진수는 2진법으로 정확하게 변환할 수 없습니다.예를 들어, 10진수 0.1을 2진수로 변환하면 무한 ..
2025.02.08 -
부동 소수점 - 3. 부동 소수점 표기법 (IEEE 754 표준 개념)
부동 소수점 표기법 (IEEE 754 표준 개념)컴퓨터는 부동 소수점(Floating-Point)을 이용해 실수를 저장하며, 이를 표준화한 것이 IEEE 754입니다.IEEE 754 표준은 부동 소수점 숫자를 부호(Sign), 지수(Exponent), 가수(Mantissa)로 나누어 표현합니다.1. IEEE 754 부동 소수점 구조IEEE 754 표준에서는 32비트(단정밀도, Single Precision)와 64비트(배정밀도, Double Precision) 방식이 있습니다.일반적으로 32비트 부동 소수점 구조는 다음과 같이 구성됩니다.비트 수 구성 요소 설명1비트부호(Sign Bit)숫자의 양수(0) 또는 음수(1)8비트지수(Exponent)소수점을 어디에 위치시킬지 결정23비트가수(Mantissa,..
2025.02.08 -
부동 소수점 - 1. 부동 소수점이란?
부동 소수점이란?컴퓨터는 숫자를 2진수(0과 1)로 저장하고 계산합니다. 하지만 우리가 사용하는 소수(1.5, 3.1415, 0.25 등)를 정확하게 표현하려면 어떻게 해야 할까요?소수점의 위치가 유동적인 개념부동 소수점(Floating-Point)이라는 표현은 소수점의 위치가 고정되지 않고(유동적으로 변화) 조정될 수 있다는 의미입니다.예를 들어, 다음 두 숫자를 생각해 봅시다.123.450.0012345이 두 숫자는 크기가 다르지만, 둘 다 "1.2345 × 10^{-1}" 또는 "1.2345 × 10^{4}"처럼 표현할 수 있습니다.즉, 소수점의 위치를 자유롭게 조정하면 숫자의 크기에 관계없이 같은 방식으로 표현할 수 있습니다.컴퓨터는 **10진법이 아니라 2진법(0과 1만 사용)**을 사용하므로,..
2025.02.08 -
C 언어 데이터 타입
C 언어의 데이터 타입은 크게 기본 데이터 타입(Primitive Types)과 확장/파생 데이터 타입으로 나뉩니다. 이 중 핵심 기본 타입으로 다음 4가지를 꼽을 수 있습니다:핵심 기본 타입 (Core Primitive Types)C 언어에서 가장 기본적이고 중요한 데이터 타입입니다:char: 문자와 작은 정수 표현 (1 byte)컴파일러에 따라 signed 또는 unsigned가 기본값으로 설정됩니다. 이를 명시적으로 선언하는 것이 좋습니다.int: 일반적인 정수 표현 (4 bytes)float: 단정밀도 실수 표현 (4 bytes)double: 배정밀도 실수 표현 (8 bytes)이 4가지만으로 대부분의 프로그램을 작성할 수 있으며, 나머지 타입은 특정 용도나 상황에서 사용됩니다.1. 기본 데이터 ..
2025.01.21