728x90

1. 데이터와 정보

 

✅ 데이터와 정보의 관계

I = P(D)

 

 

 

🔸데이터 표현 형태

  • 데이터의 유형(문자, 정수/실수, 이미지, 오디오, 비디오...)과 무관하게 일관된 표현 방식 = "비트 패턴"
    메모리에 저장된 데이터 유형에 맞는 해석과 처리가 필요 → 입출력 장치나 프로그램의 책임

 

 

 

✅ 데이터 표현 단위

비트(binary digit) 0 또는 1 예/아니오(수치❌ 기호⭕)
1바이트(byte) 8bit 알파벳 또는 숫자 한 개
1킬로바이트(KB) 1024 byte 몇 개의 문단
1메가바이트(MB) 1024 KB 1분 길이의 MP3 노래
1기가바이트(GB) 1024 MB 30분 길이의 HD 영화
1테라바이트(TB) 1024 GB 약 200편의 FHD 영화
1페타바이트(PB) 1024 TB  
1엑사바이트(EB) 1024 PT  
1제타바이트(ZB) 1024 EB  
1요타바이트(YB) 1024 ZB  
워드(word) 컴퓨터 연산의 기본단위가 되는 정보의 양 → 32비트, 64비트

 

 

 

 


2. 진법

 

 

✅ 진법(number system)

출처: 방송통신대학교

  • 수를 세는 방법 또는 단위
  • r진수: 0, 1, ..., (r-1)까지의 숫자만을 사용해서 표현한 수
  • 각 위치에 따른 서로 다른 가중치(자릿값)가 존재
십진수 '123' = 일백이십삼 = 1*10^2+2*10^1+3*10^0
이진수 '10111.011'

 

 

 

🔸2진수 → 10진수

10진수 = (각 비트값 * 해당 비트 위치의 가중치)

출처: 방송통신대학교

 

 

 

🔸8진수, 16진수 → 10진수

10진수 = (각 비트값 * 해당 비트 위치의 가중치)  

출처: 방송통신대학교

 

 

 

🔸10진수 → r진수(r=2, 8, 16)

정수 부분소수 부분을 구분하여 각각 처리한 후, 각 결과를 단순히 연결해서 나열

 

 

 

🔸10진수_정수 부분 → r진수(r=2, 8, 16)

알고리즘 예시

 

 

 

🔸10진수_소수 부분 → r진수(r=2, 8, 16)

알고리즘
예시

 

 

- 소수 부분이 반복되는 경우, 반복 값 전까지만 변환
💡십진수 0.6 ≒ 이진수 0.1001 => 비슷한 값이긴 하지만 같은 값은 아님

 

 

 

🔸2진수 ↔ 8진수/16진수

 

 

 

 


3. 정수 표현

 

✅ 정수 표현 방법

출처: 방송통신대학교

  • 부호 없는 정수: 부호(+,-) 비트가 없음
  • 부호 있는 정수: 최상위 비트 => 부호 비트(0: 양수, 1: 음수)
  • 음의 정수는 서로 다른 형태를 가짐 (양의 정수는 모두 동일)
    1. 부호화-크기: 절대값으로 표현
    2. 1의 보수: 양수에 대한 보수로서 표현
    3. 2의 보수: (1의보수+1)로 음수 표현

 

 

 

✅ 부호 없는 정수

 

 

 

부호 있는 정수

⭐컴퓨터에서 일반적으로 사용하는 방법: 2의 보수⭐

 

 

 

 

✅ 8비트 정수 표현 방법 비교

 

 

 

✅ 2의 보수 방식의 응용

24-17

연습 문제

 

 

 

 


4. 실수 표현

 



✅ 실수 표현

  • 과학적 표기법을 활용한 부동소수점 방식으로 표현
  • 지수 → 초과표기법
  • 가수 → 정규화

 

 

 

✅ 초과표기법

  • 부동소수점 방식의 지수 부분만을 표현하기 위한 방법
  • 매직 넘버

 

 

 

✅ 정규화

  • 가수를 표현할 때 표준화된 형식이 필요
    • → 소수점의 위치를 통일
    • 소수점을 기준으로 소수점 왼쪽에 1이 오직 하나만 있도록 소수점의 위치를 조정

 

 

 

⭐ 실수 표현 예

💡 정규화 후, 소수점 왼쪽에 있는 1을 저장하지 않는 이유
정규화를 통해 소수점 왼쪽에는 무조건 1만 있다는 걸 알기 때문에이를 저장하지 않고 대신에 다른 데이터를 저장 
※ 23비트에 저장된 값을 사용하기 위해 해석할 때는 앞에 1. 붙여줘야 함!

 

 

 

🔸IEEE 부동소수점 방식의 표준 형식

 

 

 

 


5. 문자 표현

 

✅ 문자 표현

  • 키보드를 통해 입력되는 문자도 2진수로 표현되어 처리
  • 각 문자마다 유일한 값으로써 코드를 할당할 수 있는 약속된 문자 체계가 필요
  • 문자 체계의 종류: ASCII, 유니코드, ...

 

 

 

✅ ASCII

  • American Standard Code for Information Interchange
  • 미국표준협회(ANSI)
  • 7비트 코드 → 128(2^7)의 서로 다른 문자 표현 가능
  • 실제 사용할 때는 8비트로 맞춰주기 위해 왼쪽에 1비트를 추가시켜 1byte를 만듬
    • 확장된 아스키(Extended ASCII): 1비트+7비트
    • 1비트
      1. 그냥 0으로 채워 넣음
      2. 패러티(parity)비트: 데이터를 전송할 때 전송상에서 발생하는 오류를 검출하기 위한 용도로 사용
        • 짝수 패러티: 11001100
        • 홀수 패러티: 01001100

 

 

 

 

✅ 유니코드

  • 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록 설계된 산업 표준
  • 1990년 애플 컴퓨터, IBM, MS 등 컨소시엄으로 설립한 유니코드(Unicode)가 첫 버전발표
  • 1995년 국제 표준으로 제정 → 공식명칭: ISO/IC 10646-1
  • 사용 중인 플랫폼, 프로그램, 언어에 무관
  • 16비트 코드 체계 → 65636개(2^16)의 서로 다른 문자 표현

 

 

 

🔸EBCDIC

  • Extended Binary Coded Decimal Interchange Code
  • IBM 개발, 8비트 코드 → 실제 사용되는 문자 코드는 127개
  • IBM 메인 프레임에서만 사용

 

 

 

🔸BCD

  • Binary Coded Decimal
  •  4비트로 구성된 열 개의 코드로 10진수를 표현 →  '8421 코드'

 

 

728x90

+ Recent posts