[CS] Chapter 1. 컴퓨터 구조
📚 출처: 강민철 지음, 혼자 공부하는 컴퓨터구조 + 운영체제
🖥️ 컴퓨터가 이해하는 정보
컴퓨터는 0과 1로 표현된 정보만 이해할 수 있습니다.
📊 데이터 vs 명령어
구분 | 데이터 | 명령어 |
---|---|---|
정의 | 숫자, 문자, 이미지, 동영상 등을 0과 1로 표현 | 데이터를 움직이고 컴퓨터를 작동시키는 정보 |
역할 | 명령어를 위해 존재하는 재료 | 컴퓨터를 제어하는 지시사항 |
공통점 | 모두 0과 1로 표현됨 | 모두 0과 1로 표현됨 |
🔧 컴퓨터의 네 가지 핵심 부품
💡 핵심 개념: 모든 부품은 메인보드를 통해 연결되어 시스템 버스로 정보를 주고받습니다.
💾 1. 메모리
핵심 역할: 현재 실행되는 프로그램의 명령어와 데이터를 저장
✅ 메모리의 특징
- 프로그램이 실행되려면 반드시 메모리에 저장되어 있어야 함
- 주소(Address) 개념을 통해 데이터에 접근
- 모든 명령어와 데이터는 0과 1로 표현되어 저장
🎯 주소 시스템
- 각 명령어와 데이터에는 고유한 주소가 할당됨
- 주소를 통해 메모리에 저장된 값에 빠르고 효율적으로 접근
⚙️ 2. CPU (중앙처리장치)
CPU의 3가지 핵심 구성요소
구성요소 | 역할 | 기능 |
---|---|---|
🧮 ALU (산술논리연산장치) |
컴퓨터의 계산기 | 컴퓨터 내부에서 수행되는 대부분의 계산 담당 |
📦 레지스터 | CPU 내부의 임시 저장 장치 | 프로그램 실행에 필요한 값들을 임시 저장 • 여러 개의 레지스터 존재 • 각각 다른 이름과 역할 |
🎛️ 제어장치 | 전기 신호 송신 및 명령어 해석 | 예: ‘메모리를 읽어라’ 제어신호 전송 |
💿 3. 보조기억장치
핵심 특징: 메모리보다 크고, 전원이 꺼져도 데이터가 보존됨
📝 대표적인 보조기억장치
- 💾 USB 메모리
- 🗄️ 하드디스크 (HDD)
- ⚡ SSD (Solid State Drive)
🖱️ 4. 입출력장치
핵심 역할: 외부와 컴퓨터 내부 간 정보 교환
🔄 입출력장치 예시
입력장치: 키보드, 마우스, 마이크
출력장치: 모니터, 스피커, 프린터
🔗 연결 구조
🖥️ 메인보드
중앙 허브 역할: 모든 핵심 부품을 연결하는 기반
메모리 ←→ 메인보드 ←→ CPU
↑ ↓
보조기억장치 ←→ 메인보드 ←→ 입출력장치
🛤️ 시스템 버스
정보 전달 통로: 메인보드 내부에서 정보를 주고받는 핵심 경로
시스템 버스의 3가지 구성
버스 종류 | 역할 | 전달 내용 |
---|---|---|
🏠 주소 버스 | 위치 지정 | 메모리 주소 정보 |
📦 데이터 버스 | 내용 전달 | 실제 데이터 |
⚡ 제어 버스 | 명령 전달 | 제어 신호 (읽기/쓰기 등) |
🔄 CPU와 메모리 간의 데이터 흐름
📋 6단계 실행 과정
🎯 단계별 상세 설명
단계 | 주체 | 동작 | 세부 내용 |
---|---|---|---|
1️⃣ | CPU | 준비 | 메모리 속 명령어를 읽기 위해 준비 |
2️⃣ | CPU → 주소버스 | 주소 전송 | “어디”를 읽을지 지정하는 주소 전송 |
3️⃣ | CPU → 제어버스 | 제어신호 | ‘메모리 읽기(Read)’ 신호를 동시에 전송 |
4️⃣ | 메모리 | 데이터 준비 | 주소버스의 주소를 보고 해당 데이터 준비 |
5️⃣ | 메모리 → 데이터버스 | 데이터 전송 | 준비된 데이터를 CPU로 전달 |
6️⃣ | CPU | 저장 | 받은 데이터를 명령어 레지스터(IR) 등에 저장 |
⚠️ 중요: 주소가 유효한 상태일 때 제어신호가 작동해야 정확한 데이터 전송이 가능
🚀 학습 소감
우선 이렇게 큰 구조로 알아보았는데 흐름을 통해서 이해하려고 하니까 확실히 이해가 잘 되는 것 같다. 처음 공부하는 부분이라서 인터넷 검색과 GPT, Gemini의 도움을 받았지만, 아직까지는 너무 어려운 CS… 😅
B!U!T 전체적인 큰 그림을 그려보니 내가매일 하던 파이썬 코딩도 대략 어떻게 돌아가는지 생각을 해보는 계기가 되었음~
Leave a comment