문제 해결
- 개발 공부를 하다보면 분명 강의의 코드를 따라 쳐도 실행이 안되는 경우가 있다.
프로그래밍 언어 뿐 아니라 컴퓨터 구조를 알면 다양한 시점에서 문제 해결을 할 수 있다.
- 컴퓨터란? 미지의 대상이 아닌 분석의 대상
- 출력에 집중하지 않고 성능, 용량, 비용을 고려하는 개발자가 되자.!
컴퓨터란?
- 명령어를 처리하는 기계 (명령어: 데이터를 수정하는 컴퓨터가 이해하는 언어)
컴퓨터의 4가지 핵심 부품
메모리: 명령어와 데이터를 저장하는 부품
- 프로그램이 실행되려면 반드시 메모리에 저장되어 있어야 한다.
- 메모리는 현재 실행되는 프로그램의 명령어와 데이터를 저장한다.
- 메모리에 저장된 값의 위치를 주소로 알 수 있다.
CPU: 컴퓨터의 두뇌
- 메모리에 저장된 명령어를 읽어들이고, 읽어드린 명령어를 해석하고, 실행하는 부품
CPU 구성요소
- ALU(산술 논리 연산장치): 계산기 역할
- 레지스터: CPU 내부의 작은 저장 장치, 여러 개가 존재하고 각각 이름을 갖는다.
- 제어장치: 제어신호라는 전기 신호를 내보내고, 명령어를 해석하는 장치
보조 기억 장치: 전원이 꺼져도 저장되는 메모리, 잃지 않아야하는 데이터 저장
메인보드와 시스템 버스
- 메인보드 내부에 '버스'라는 통로로 연결된 부품들 서로 정보를 주고 받는다.
- 여러 버스 중 컴퓨터의 4가지 핵심 부품을 연결하는 가장 중요한 버스는 '시스템 버스'이다.
- 주소 버스: 주소를 주고받는 통로
- 데이터 버스: 명령어와 데이터를 주고받는 통로
- 제어 버스: 제어 신호를 주고받는 통로
어떤 값을 저장할 때 CPU 과정
1. 데이터 버스를 통해 메모리에 저장할 값을
2. 주소 버스를 통해 저장할 주소를
3. 제어 버스를 통해 '메모리 쓰기' 제어신호를 내보낸다.
주기억장치와 보조기억장치의 차이