ch1. 컴퓨터 구조 시작하기

2024. 6. 29.·🤓 기술 학습 & 공부 기록/컴퓨터 일반

1. 컴퓨터 구조를 알아야 하는 이유

📍1) 문제 해결 향상

내가 짠 코드의 문제가 아니라 컴퓨터의 문제라면?

 

📍2) 성능, 용량, 비용 최적화

개발한 프로그램을 위한 최적의 컴퓨터 환경은?

 

2. 컴퓨터 구조의 큰 그림

📍컴퓨터 구조의 2가지 핵심 개념

1) 컴퓨터가 이해하는 정보

- 데이터

- 명령어

2) 컴퓨터의 4가지 핵심 부품

- 중앙처리장치(CPU)

- 주기억장치(메모리)

- 보조기억장치

- 입출력장치

 

📍1) 컴퓨터가 이해하는 정보

컴퓨터는 명령을 처리하는 기계

- 컴퓨터는 데이터로 이루어진 명령어를 처리

- 컴퓨터는 0, 1로 표현된 정보만 이해

 

📍2) 컴퓨터의 4가지 핵심 부품

컴퓨터 핵심 부품 그림

메모리

- 현재 실행되는 프로그램의 명령어와 데이터를 저장

- 메모리 주소: 저장된 명령어와 데이터의 위치를 식별하고, 쉽게 접근하기 위해 사용

- 예) DRAM

 

CPU

- 컴퓨터의 두뇌: 메모리에 저장된 명령어 읽고 해석, 실행

- 3가지 핵심 구성요소: ALU, 레지스터, 제어장치

 

ALU(Arithmetic Logic Unit): 산술논리연산장치

- 컴퓨터 내부의 대부분의 계산을 수행

 

레지스터(Register)

- CPU의 임시 저장 장치 (여러개 존재)

 

제어장치(Control Unit)

- 제어 신호(전기 신호)를 내보내 다른 부품들을 관리하고 작동시킴

- 명령어를 해석

 

CPU 명령어 실행 과정

- 메모리에 저장된 값을 읽기 위해 메모리에 메모리 읽기 신호 보냄

- 메모리 주소 1번지에 저장된 명령어를 CPU에 보내고 이 명령어는 CPU의 레지스터에 저장됨

- 제어장치는 레지스터에 저장된 명령어 해석하고 추가로 3번지, 4번지 데이터 필요하다고 판단

- 제어장치가 메모리에 읽기 신호 보내고, 이 명령어는 CPU의 다른 레지스터에 저장됨

- ALU에서 읽어들인 데이터로 연산수행하고 결과는 레지스터에 저장됨

- 명령어 끝나면 종료

 

보조기억장치

- 메모리의 단점1: 전원이 꺼지면 저장된 내용 날아감

- 단점2: 가격이 비싸서 저장 용량이 적음

- 보조기억장치는 전원이 꺼져도 저장된 내용이 날아가지 않음

- 예) 하드 디스크

 

입출력장치

- 컴퓨터 외부에 연결되어 컴퓨터 내부와 정보 교환

- 예) 마이크, 스피커, 키보드, 마우스, 모니터

 

메인보드(마더보드)

- 4가지 핵심 부품이 메인보드에 연결됨

- 다양한 슬롯과 연결 단자 존재

- 메인보드 내부에 시스템 버스: 4가지 핵심 부품이 서로 정보를 주고받는 통로

 

시스템 버스

- 주소 버스: 주소를 주고받는 통로

- 데이터 버스: 데이터와 명령어 주고받는 통로

- 제어 버스: 제어 신호를 주고받는 통로

- 예) 메모리 읽기 신호 발생 시 메모리 주소는 주소 버스로, 제어 신호는 제어 버스로 지나감

- 예) 메모리 쓰기 신호 발생 시 데이터는 데이터 버스로 지나감

'🤓 기술 학습 & 공부 기록/컴퓨터 일반' 카테고리의 다른 글
  • ch3. 명령어
  • ch2. 데이터
  • <읽기 쉬운 코드> 책 리뷰
  • <함께 자라기> 책 리뷰
지식물원
지식물원
지식이 자라는 식물원!
  • 지식물원
    지식물원
    지식물원
  • 전체
    오늘
    어제
    • 분류 전체보기 (516)
      • 🎨 프론트엔드 공부 (253)
        • JS & TS (92)
        • HTML & CSS (22)
        • React & Next (49)
        • Vue & Nuxt (22)
        • 기타 (68)
      • 🤓 기술 학습 & 공부 기록 (116)
        • Node.js (0)
        • Python (37)
        • 백엔드 (0)
        • 딥러닝 (1)
        • 컴퓨터 일반 (72)
        • 개발 인프라 (6)
      • 👨‍💻 프로젝트 경험 (6)
        • Work (0)
        • Toy (6)
      • ⚙️ 개발 팁 & 노하우 (21)
        • 프론트엔드 (6)
        • 기타 (15)
      • ☕️ 커리어 & 인터뷰 준비 (88)
        • 코딩 테스트 (88)
      • 📰 기술 트렌드 & 생각 정리 (4)
      • 📚 기타 (25)
        • 마케팅 (15)
        • 비개발서적 (10)
  • 블로그 메뉴

    • 태그
  • 링크

  • 공지사항

    • 모바일 접속 시 코드 하이라이팅 깨질 때
  • 인기 글

  • hELLO· Designed By정상우.v4.10.3
지식물원
ch1. 컴퓨터 구조 시작하기
상단으로

티스토리툴바