실수 - 유리수와 무리수로 이루어진 수 체계

 

정수의 이진법 표기의 한계->기본적인 방법으로는 소수점 이하 숫자 표현이 어려움

ex)10진수의 0.1을 2진수로 반환하면 무한루프에 빠져 패턴이 반복되다 할당된 메모리를 넘으면 비트가 끊김

=끊긴 비트로 인한 오차로 문제 발생가능성있음.

=>부동 소수점 수(IEEE 754)의 표준화 / 고정 소수점 수도 사용(자주는 아님, 사용가능성은 있음)

 

고정 소수점은 정확하게 몇자리인지 알수있음 = 은행에서 사용

부동 소수점은 정밀하지 못함 = 은행에서 사용이 부적합 그러나, 대부분의 상황에서 문제X

ex)게임에서 파티클을 표현하는데 조금의 오차는 문제X

 

정규화

ex)110.1101011 = (+1) * 1.1101101011*2(2)

ex)-0.00101 = (-1) * 1.01 * 2(-3)

 

부동소수점에서는 음수 표현을 부호 절대값 방식을 사용하여 표현

32비트 부동 소수점의 구조(1비트-부호)/(8비트-지수)/(23비트-가수)

부동소수점 처리방식에 대한 정리

 

N개의 비트로는 2의 N승만큼의 데이터 표현이 가능

1->2 , 2->4 , 3->8 , 4->16

16진수를 사용하는 이유는 2진수로 표현했을 때 너무 길어서 가독성이 떨어졌기 때문

8진수를 사용하지 않는 이유는 접근성이 많이 떨어지기 때문이다.

32진수와 64진수를 자주 쓰지 않지만 요즘 URL, 이미지 파일에 사용하기 시작(앞으로의 사용 가능성 있음)

 

부호없는 정수(unsigned)

8비트로 해결 65536까지 표현

 

부호있는 정수(signed)

맨 앞의 비트 패턴은 음수,양수를 표현 8비트로 해결 ( 1비트 / 7비트 )

 

보수

N진법에서의 보수는 N의 보수와 N-1의 보수가 있다

ex)9의 보수 [10진수 기준]

3의 9의 보수는 6이다. (9가되기 위해 필요한 숫자 = 6)

7의 9의보수는 2

483의 9의 보수는 (999가 되기 위해 필요한 숫자 = 516)

즉, 9의 보수는 10의 n승 -1 이 되기위해 필요한 수

binary=2진수

컴퓨터가 2진수를 표현하는 방식 0(2)->0b=0B

Hex=16진수

컴퓨터가 16진수를 표현하는 방식 D(16)->0x=0X

 

컴퓨터에서 많이쓰는 방식 2진법>>16진법...

2진수 : 0,1로 이루어짐

16진수: 0~9 , A~F까지 존재(A부터 10)

 

2진수<->16진수

2진수  1100 1000 0110 1001

16진수 12(C)     8      6      9 = C869

 

컴퓨터의 데이터 

1.비트 (최소단위) = 트랜지스터의 상태를 기록하는 단위(꺼졌는지 켜졌는지)

2.바이트 = 8비트

 

컴퓨터가 2진수를 사용하는 이유 = 트랜지스터로 구성되어있기 때문

트렌지스터는 전류가 흐르거나 흐르지않거나로 구분(흐름 1 안흐름 0)=>2진수가 용이

 

비트의 순서는 정해져있지 않기 때문에 보통 오른쪽이 가장 작은 비트라고 가정

(큰 비트)01011(작은비트)

 

오디오 품질은 비트 수에 따라 품질이 결정된다.

비트레이트 = 1초마다 들어오는 비트 양

 

컴퓨터의 데이터 최소단위는 비트지만, 데이터를 저장하는 최소단위는 바이트다.

 

단위

킬로<메가<기가<테라<페타

킬로=1,000 단위 증가시 ,000추가

 

컴퓨터의 1K=1024(2의 10승) 데이터가 깔끔하게 떨어지기위해.

컴퓨터에서는 2의 10승 < 2의 20승 < 2의 30승 < 2의 N0승으로 증가....

+ Recent posts