공부쟁이

[필기] 자료의 표현과 진법 본문

IT/정보처리기능사(필기,실기)

[필기] 자료의 표현과 진법

gongbuLove 2025. 2. 26. 12:02
728x90
반응형
SMALL

1. 자료의 표현과 진법
  컴퓨터는 0과 1(2진법)만 이해함. 모든 데이터(숫자, 문자, 이미지, 소리 등)는 이진수(Binary)로 변환되어 저장

  (1) 숫자의 표현 
    - 정수(Integer) : 10진수를 2진수로 변환하여 저장
    예: 10(10) → 1010(2)

    - 부동소수점(Float): IEEE 754 표준을 사용하여 이진수로 변환
    예: 3.14(10) → 2진 부동소수점 형식으로 변환

  (2) 문자(Character)의 표현
  컴퓨터는 문자를 직접 저장하지 못하므로 문자를 숫자로 변환하여 저장
    - ASCII 코드: 문자 하나를 7비트 또는 8비트(1바이트)로 표현
    예: 'A' → 65(10) → 01000001(2)

    - 유니코드(UTF-8): 다국어 지원을 위해 8비트~32비트 사용
    예: '가' → 11000000 10101101 (UTF-8)

  (3) 색상의 표현
  웹에서 색상 코드를 보면 16진법 사용
  예: #FF5733 (RGB 값)
  FF(16) = 255(10), 57(16) = 87(10), 33(16) = 51(10)
  (255, 87, 51) → 빨간색 계열

2. 연산과 진법
컴퓨터 내부에서 연산할 때, 이진법을 기반으로 논리 연산과 수학 연산을 수행

  (1) 논리 연산 (AND, OR, XOR, NOT)
  - 비트 연산(bitwise operation): CPU가 빠르게 연산을 수행하기 위해 사용
  예: AND 연산

1010 (10)
1100 (12)
------
1000 (8)  ← AND 연산 결과

  (2) 덧셈과 뺄셈 (이진수 연산)
  - 이진수 덧셈 (Carry 발생)

  •   1011 (11)
    + 1101 (13)
    ------------
     11000 (24)
    

  - 이진수 뺄셈 (2의 보수 이용)

  (3) 시프트 연산 (Shift Operations)
  비트를 이동하면 곱셈/나눗셈 효과!

  - 왼쪽 시프트( << ): 곱하기 2

0001 0100 (20)
<< 1
0010 1000 (40)  ← 2배 증가

  - 오른쪽 시프트( >> ): 나누기 2

0010 1000 (40)
>> 1
0001 0100 (20)  ← 2배 감소

 

3. 8진법과 16진법이 쓰이는 이유
2진법은 0과 1만 사용하므로 너무 길어짐. 이를 줄이기 위해 8진법과 16진법을 활용

  (1) 8진법의 사용
  - 파일 권한 설정 (Linux)
    -> chmod 755 → 8진법 사용
    -> 7(111), 5(101), 5(101) → 2진수로 쉽게 변환

  (2) 16진법의 사용
  - 메모리 주소 (Hexadecimal Memory Address)
    -> 컴퓨터 메모리의 주소는 길고 복잡한 2진수를 줄이기 위해 16진법 사용
    -> 예: 0x1F4A (16진수) → 0001 1111 0100 1010 (2진수)

  - 색상 표현 (웹, 그래픽 디자인)
    -> RGB(빨강, 초록, 파랑) 값을 16진수로 표현
    -> 예: #FF0000 (빨간색), #00FF00 (초록색)

4. 정리: 자료 표현과 연산에서 진법이 중요한 이유

진법 사용 예시

2진법 (Binary, 0과 1) CPU 연산, 논리 연산, 비트 연산
8진법 (Octal, 0~7) 파일 권한 (Linux), 2진수를 줄이기
16진법 (Hex, 09, AF) 메모리 주소, 색상 코드, 디버깅

- 컴퓨터는 2진법을 사용하여 데이터를 저장하고 연산
- 8진법과 16진법은 2진수를 줄여서 표현할 때 유용
- 비트 연산, 시프트 연산 등을 통해 컴퓨터가 데이터를 처리

728x90
반응형
LIST