1. 비트(bit) 및 표현 가능 값
옵션 | 비트 수 | 표현 가능 값의 수 | 설명 |
---|---|---|---|
1 bit | 1 | 2 | 전기 스위치(on/off) |
4 bit (Nibble) | 4 | 16 | 16진수 한 자리(hex digit) |
8 bit (Byte) | 8 | 256 | ASCII 문자(0–255) |
16 bit | 16 | 65,536 | 유니코드 BMP, 정수 범위 –32,768~32,767 |
32 bit | 32 | ≈4.29×10⁹ | 단정도 실수, 색상(RGBA) 등 |
64 bit | 64 | ≈1.84×10¹⁹ | 배정밀도 실수, 메모리 주소 공간(≈16 EB) |
기본 개념
- 비트(bit)
- 정보의 최소 단위. 전기 스위치 하나(on/off)로 0과 1, 두 가지 상태를 표현
- 바이트(byte)
- 1byte = 8bit
- 영문자 하나(ASCII) 저장에 충분한 크기
- 한글 문자(UTF-16 등)는 보통 2바이트 이상 필요
- 진법과 비트
- 2진수: 비트 단위로 표현
- 16진수(hex): 한 자리당 4비트
- 0xF4 = F(1111)·4(0100) → 8비트(1바이트)
- 보통
0x
접두사로 표기
- 표현 가능한 값의 수
- n비트 → 2ⁿ 가지
- 1bit = 2¹ = 2가지
- 4bit = 2⁴ = 16가지
- 8bit = 2⁸ = 256가지
- 16bit = 2¹⁶ = 65,536가지
- 32bit = 2³² ≈ 4.29억 가지
- n비트 → 2ⁿ 가지
- 64비트 환경
- CPU 레지스터·포인터가 64bit
- 이론상 2⁶⁴ 바이트(≈16 엑사바이트)까지 주소 지정 가능
2. 저장 용량 단위
단위 | 약어 | 2진 기반 크기 | 10진 기반 표기 | 용도 예시 |
---|---|---|---|---|
Kilobyte | KiB | 2¹⁰ B = 1,024 B | 1 KB = 10³ B | 텍스트 파일, 작은 이미지 |
Megabyte | MiB | 2²⁰ B = 1,048,576 B | 1 MB = 10⁶ B | MP3(≈3 MB) |
Gigabyte | GiB | 2³⁰ B = 1,073,741,824 B | 1 GB = 10⁹ B | HD 동영상(≈2 GB) |
Terabyte | TiB | 2⁴⁰ B ≈ 1.10×10¹² B | 1 TB = 10¹² B | 외장하드(1–4 TB) |
Petabyte | PiB | 2⁵⁰ B ≈ 1.13×10¹⁵ B | 1 PB = 10¹⁵ B | AI 학습 데이터셋 |
Exabyte | EiB | 2⁶⁰ B ≈ 1.15×10¹⁸ B | 1 EB = 10¹⁸ B | 글로벌 클라우드 인프라 |
Zettabyte | ZiB | 2⁷⁰ B ≈ 1.18×10²¹ B | 1 ZB = 10²¹ B | 전 세계 인터넷 트래픽 연간 총합 |
Yottabyte | YiB | 2⁸⁰ B ≈ 1.21×10²⁴ B | 1 YB = 10²⁴ B | 미래 엑사스케일 컴퓨팅·우주 데이터 |
실제 대규모 데이터 처리 사례
사례 | 연간 데이터 규모 | 목적 및 특징 |
---|---|---|
구글 검색 색인 | 페타바이트(PB) | 웹 크롤링·색인화·실시간 검색 쿼리 대응 |
CERN LHC 충돌 로그 | 수십 PB/년 | 물리 현상 탐지 |
SNS 플랫폼 (페이스북·틱톡) | 엑사바이트(EB) | 콘텐츠 저장·실시간 추천 |
위성·IoT 센서 네트워크 | 제타바이트(ZB) 예상 | 환경 모니터링·스트리밍 분석 |
DNA 시퀀싱 프로젝트 | PB~EB | 유전체 분석·맞춤형 의료 |
Netflix 시청 로그 분석 | PB 이상 | 실시간 추천·QoS 모니터링 |
LLM 학습 데이터셋 | 수백~천 PB | 웹문서·코드·대화록 전처리·분산 학습 |
모델 | 파라미터 수 | 용도 및 특징 |
---|---|---|
BERT Base | 110M | 문장 분류·전처리 |
BERT Large | 340M | 고성능 QA, 문장 이해 |
GPT-2 | 1.5B | 텍스트 생성·언어 모델링 |
GPT-3 | 175B | 대화형 AI·코드 생성·번역 |
GPT-3.5 Turbo | ~6B–175B (버전별 차이) | 실시간 어시스턴트 최적화 |
GPT-4 | ~1T (추정) | 멀티모달·고급 추론 |
PaLM | 540B | 멀티태스크 대규모 언어 이해·생성 |
LLaMA 2 | 7B, 13B, 70B | 경량화 모델 (개발자·리서처용) |
BLOOM | 176B | 오픈소스 다국어 LLM |
3. 16진수(hex) 변환
16진수 | 2진수 | 10진수 |
---|---|---|
0x0 | 0000 | 0 |
0x1 | 0001 | 1 |
… | … | … |
0xA | 1010 | 10 |
0xB | 1011 | 11 |
0xC | 1100 | 12 |
0xD | 1101 | 13 |
0xE | 1110 | 14 |
0xF | 1111 | 15 |
0xF4 | 1111 0100 | 244 |
0xFF | 1111 1111 | 255 |
- 자리수 관계:
- 1 hex digit = 4 bit
- 2 hex digits = 8 bit = 1 Byte
- 16 hex digits = 64 bit = 8 Byte
주요 진법 활용
진법 | 기수 | 1자리 비트 수 | 용도 예시 |
---|---|---|---|
이진수(2진) | 2 | 1 | 하드웨어·기계어 |
8진수(octal) | 8 | 3 | UNIX 파일 권한(chmod 755 등) |
10진수 | 10 | 자연수 표시 | 사람 인터페이스(화면 출력·입력) |
16진수(hex) | 16 | 4 | 메모리 주소·디버깅·색상 코드 |
Base64 | 64 | – | 바이너리 → ASCII 인코딩 |
BCD | 10 | 4비트 = 0–9 | 금융 시스템 10진수 정확도 유지 |
16진수 표기가 사용되는 예로
색상 / 컴퓨터 하드웨어 주소 / 메모리 값 등이 있다.
CSS에서도 16진수로 색상을 표기한다.
#B7 1C 1C
( R G B )
(각각 8bit씩 / 2⁸ = 0~255까지 / 256가지 표현 가능)
R 8bit = (255,0,0)
G 8bit = (0,255,0)
B 8bit = (0,0,255)
4. 양자 컴퓨팅: Qubit
개념 | 설명 |
---|---|
비트(bit) | 고전 컴퓨팅 기본 단위, 0 또는 1 |
큐비트(qubit) | 0과 1의 중첩(superposition) 상태, n qubit로 2ⁿ 상태 동시 표현 가능 |
- 특징
- 얽힘(entanglement), 간섭(interference)을 이용해 특정 연산 가속
- 조합 최적화·양자 시뮬레이션 등에 잠재력
5. 문자 처리: 코드 값과 인코딩
컴퓨터는 모든 데이터를 숫자(이진수)로 다루기 때문에, 글자 하나도 일정한 숫자 값(코드)으로 매핑해야 함.
개념 | 설명 |
---|---|
코드 포인트 | 문자마다 고유한 숫자 값(예: 십진수 65) |
16진수 표현 | 0x41 (65₁₀ → 0100 0001₂) → ‘A’ |
ASCII | 7비트(0–127) 표준. 영문 대문자·소문자·숫자·기호 등 기본 문자 집합 |
Extended ASCII | 8비트(0–255). 유럽어 계열 특수 문자 추가 |
Unicode | 전 세계 모든 문자를 위해 설계된 코드 체계. 코드 포인트 범위 U+0000–U+10FFFF |
UTF-8 | 1–4바이트 가변 길이. ASCII 호환(0–127은 1바이트) |
UTF-16 | 2바이트 기본(0–FFFF), 보충 영역은 4바이트(쌍으로 인코딩) |
문자 렌더링 | 코드 포인트 → 글꼴(Font)의 글리프(Glyph) 매핑 → 화면·인쇄 시 픽셀로 변환 |
문자 인코딩별 바이트 수 예시
문자 | 코드 포인트(U+) | ASCII 바이트 수 | UTF-8 바이트 수 | UTF-16 바이트 수 |
---|---|---|---|---|
‘A’ | U+0041 | 1 | 1 | 2 |
‘€’ (유로 기호) | U+20AC | (없음) | 3 | 2 |
‘가’ (한글) | U+AC00 | (없음) | 3 | 2 |
6. 이미지 처리: 픽셀과 컬러 뎁스
모니터 화면상의 ‘점’ 하나를 픽셀(pixel)이라 하고, 픽셀마다 저장되는 비트 수를 컬러 뎁스(color depth)라고 부름.
컬러 뎁스 | 비트 구성 | 표현 가능한 색 수 | 설명 |
---|---|---|---|
8-bit grayscale | 8 bit | 256 단계 회색조 | 흑백 사진 |
16-bit color | 5R + 6G + 5B | 65,536 색 | 제한된 컬러(5/6/5 포맷) |
24-bit true color | 8R + 8G + 8B | ≈1,677만 색 | 일반적인 RGB 각 채널 256 단계 |
32-bit RGBA | 8R + 8G + 8B + 8A(알파) | ≈1,677만 색 + 투명도 | 투명도(알파 채널) 추가 |
비트맵(Bitmap) vs. 벡터(Vector)
구분 | 비트맵(Bitmap) | 벡터(Vector) |
---|---|---|
표현 방식 | 픽셀 단위 배열 | 수학적 도형(점·선·곡선·다각형) |
확대 시 | 픽셀 깨짐(계단 현상) | 해상도 독립적, 깨짐 없이 선명 |
저장 형식 | BMP, PNG, JPEG, GIF 등 | SVG, PDF, EPS 등 |
용도 | 사진·디테일이 중요한 이미지 | 로고·아이콘·일러스트·다이어그램 |
주요 이미지 파일 포맷 비교
포맷 | 압축 방식 | 컬러 뎁스 지원 | 투명도 지원 | 특징 |
---|---|---|---|---|
BMP | 무압축 | 24-bit | × | 단순, 용량 큼 |
PNG | 무손실 압축 | 최대 48-bit | ○ | 투명도, 그래픽·아이콘 등에 최적화 |
JPEG | 손실 압축 | 24-bit | × | 사진에 최적화, 용량 작음 |
GIF | LZW 무손실 압축 | 8-bit | ○ | 애니메이션 지원, 컬러 수 제한(256색) |
WebP | 손실/무손실 선택 | 24-bit | ○ | 현대적 포맷, JPEG 대비 작은 용량, 투명도 지원 |
이렇게 문자와 이미지는 각각 숫자(이진수)로 바뀌어 저장·전송되며, 다양한 인코딩·포맷으로 사람과 시스템 간 호환을 맞춤.
7. 동영상 처리: 프레임(Frame) 과 코덱(Codec)
영상(비디오)은 여러 정지 이미지(프레임)를 시간 순으로 이어 붙이고, 음성·자막 등을 결합해 하나의 매체로 만드는 과정을 거친 뒤, 각종 압축·인코딩·패키징 단계를 통해 저장·전송·재생되도록 함. 크게 7단계로 요약할 수 있음.
- 캡처(Capture)
카메라나 스크린 녹화 장치로 초당 N프레임(frame)을 촬영하거나 추출 - 전처리(Pre-processing)
노이즈 제거, 색 보정, 해상도 변환, 프레임 보간(frame interpolation) 등 - 코덱 압축·인코딩(Encoding)
H.264, H.265(HEVC), VP9, AV1 등 영상 코덱으로 공간·시간 중복 제거 - 컨테이너 패키징(Packaging)
MP4, MKV, AVI, MOV 등 컨테이너에 영상·음성·자막 스트림을 묶음 - 전송·스트리밍(Delivery)
HTTP 스트리밍(HLS, DASH), RTSP, WebRTC 등으로 네트워크 전송 - 디코딩(Decoding)
수신 측 디바이스에서 코덱 역압축을 통해 원본 프레임 복원 - 렌더링(Rendering)
GPU/CPU에서 화면에 프레임을 출력하고, 오디오 동기화 재생
단계 번호 | 단계명 | 주요 역할 | 대표 기술/형식 |
---|---|---|---|
1 | 캡처 (Capture) | 프레임 단위 영상·음성 데이터 획득 | DSLR·스크린 캡처·캠코더 |
2 | 전처리 (Pre-processing) | 노이즈 제거, 색 보정, 크롭·리사이즈, 프레임 보간 | OpenCV, FFmpeg 필터 |
3 | 인코딩 (Encoding) | 공간·시간 중복 제거, 비트레이트 제어 | H.264/AVC, H.265/HEVC, VP9, AV1 |
4 | 패키징 (Packaging) | 멀티플렉싱(Mux), 컨테이너 생성 | MP4, MKV, AVI, MOV |
5 | 전송·스트리밍 (Delivery) | 네트워크 전송, 적응형 스트리밍 | HLS, MPEG-DASH, RTSP, WebRTC |
6 | 디코딩 (Decoding) | 코덱 역압축으로 프레임 복원 | 소프트웨어 디코더, 하드웨어 가속 |
7 | 렌더링 (Rendering) | 화면 출력, 오디오 동기화 재생 | GPU 렌더러(DirectX, OpenGL, Vulkan) |
구분 | 문자 (Text) | 이미지 (Image) | 동영상 (Video) |
---|---|---|---|
대표 단위 | 코드 포인트(code point): 예) U+0041 (65₁₀) → ‘A’ |
픽셀(pixel): 화면상의 ‘점’ 하나 → 컬러 뎁스(color depth)로 표현 |
프레임(frame) 단위의 정지 이미지 시퀀스 + 오디오 샘플(audio sample) |
내부 표현 | 비트열(bit stream)에 문자별 숫자 값 저장 - ASCII: 7비트 (0–127) - UTF-8: 가변 1–4바이트 - UTF-16: 2/4바이트 |
2차원 격자(grid)에 각 픽셀별 비트열 저장 - 8-bit gray - 24-bit RGB - 32-bit RGBA |
시간축이 포함된 3차원(가로×세로×시간) + 오디오 트랙 - 각 프레임은 이미지처럼 비트맵으로 저장 - 오디오는 PCM 샘플 또는 압축된 스트림 |
인코딩 & 압축 | 텍스트 인코딩 - ASCII, UTF-8, UTF-16 ↳ 거의 무압축 |
이미지 압축 - 무손실: PNG, BMP - 손실: JPEG ↳ 컬러채널별 중복 제거(블록 단위 DCT 등) |
비디오 코덱 (공간·시간 중복 제거) - Intraframe: JPEG 유사 압축 - Interframe: I/P/B-Frame ↳ H.264, H.265, VP9, AV1 등 |
컨테이너/포맷 | 텍스트 파일: .txt, .csv, .json, .xml 등 | .png, .jpg/.jpeg, .bmp, .gif, .webp | 컨테이너: .mp4, .mkv, .avi, .mov 등 ↳ 내부에 영상 스트림 + 오디오 스트림 + 자막/메타데이터 멀티플렉싱 |
처리 파이프라인 | 1. 입력(키보드, 파일) →2. 인코딩 변환 →3. 텍스트 처리(검색·정렬) →4. 렌더링(폰트→글리프) →픽셀 매핑 |
1. 입력(카메라, 스캔) →2. 전처리(리사이즈·색 보정) →3. 압축/인코딩 →4. 저장/전송 →5. 디코딩 →6. 렌더링(픽셀 버퍼에 출력) |
1. 캡처(프레임+오디오) →2. 전처리(색 보정·프레임 보간) →3. 인코딩(코덱) →4. 패키징(컨테이너) →5. 전송/스트리밍 →6. 디코딩 →7. 렌더링(프레임+오디오 동기화 재생) |
주요 처리 이슈 | - 문자셋 호환성(인코딩 불일치) - 줄바꿈, 방향성(LTR/RTL) |
- 해상도와 품질 균형 - 색 공간(sRGB vs. Adobe RGB) |
- 대역폭·버퍼링 문제 - 버전 호환성(코덱 지원 여부) - 실시간 재생 시 지연(latency) |
사용 예시 | 문서, 로그, 코드, 메타데이터 | 사진, 아이콘, UI 그래픽 | 영화, 스트리밍, 화상회의, 게임 리플레이 |
댓글