컴퓨터는 입력 받은 데이터를 정해진 규칙대로 처리하고 처리된 결과를 저장 및 출력하는 전자 장치이다.
입력장치를 통해 데이터를 입력 받고,
프로그램이라는 규칙으로,
중앙처리장치를 통해 처리하고,
기억장치에 결과를 저장하고,
출력장치를 통해 출력한다.
컴퓨터의 구성 요소
하드웨어 : 물리적인 형태로 존재, 컴퓨터를 구성하는 기계적 장치들의 집합
중앙처리장치 ( CPU ) : 프로그램의 실행과 데이터 처리를 담당하는 컴퓨터의 핵심 장치
제어장치 : CPU 의 모든 동작, 데이터 흐름을 통제하고 관리
연산장치 : 프로그램의 명령어를 수행, 코드를 실행시키는 장치
레지스터 : 작고 빠른 기억장치, 데이터를 임시 보관 및 제공
기억장치 : CPU 의 동작에 필요한 데이터들의 저장장치
보조기억장치 : 필요한 모든 정보를 반영구적으로 저장, 큰 용량의 데이터 저장 가능, 데이터를 읽고 쓰는 속도가 느리다, 연산 속도의 차이 때문에 CPU 와 직접적으로 소통하지 않는다. ex) SSD, HDD
주기억장치 : 필요한 모든 정보를 저장, 큰 용량의 데이터 저장 불가, 데이터를 읽고 쓰는 속도가 빠르다, CPU 와 직접적으로 소통한다 ex) RAM, ROM
캐시 메모리 : 재사용 가능성이 높은 데이터를 주기억장치로부터 미리 불러와서 대기시켜놓는 역할을 한다.
입력장치 : 데이터를 입력 받는 장치 ex) 키보드, 마우스, 마이크 등
출력장치 : 데이터를 출력하는 장치 ex) 모니터, 스피커, 프린터 등
소프트웨어 : 비물리적인 형태의 컴퓨터 구성 요소
시스템 소프트웨어 : 하드웨어 장치를 관리, 응용 소프트웨어의 실행 환경
응용 소프트웨어 : 시스템 소프트웨어를 제외한 모든 소프트웨어, 통상적으로 앱이나 프로그램이라고 불린다.
시스템 버스 : 각 하드웨어 장치 간의 통로, 하드웨어에 포함된다.
테이터 버스 : 하드웨어 간에 데이터를 전달하는 통로
주소 버스 : 데이터의 도착 주소의 정보를 전달하는 통로
제어 버스 : CPU 의 제어장치가 생성한 제어 신호를 전달하는 통로
프로그래밍은 프로그램을 만드는 과정이다.
프로그래밍 언어를 사용하여 코드로 작성하는 과정을 의미한다.
컴퓨터는 기계어를 사용하고, 우리는 컴퓨터가 이해할 수 있는 언어로 변환해서 입력해주어야 한다.
컴퓨터와 사람 사이의 오고 가는 언어가 바로 프로그래밍 언어이다.
컴퓨터에 가까운 언어일수록 저수준 언어라고 하며, 반대로 사람에게 가까운 언어일수록 고수준 언어이다.
예로, Java 와 C 언어가 있다.
- 빌드
- 작성한 소스 코드를 실행할 수 있는 산출물로 변환시키는 과정
- 빌드가 완료되어야 소스 코드가 실행시킬 수 있는 하나의 프로그램이 완성된다.
- 컴파일
- 빌드 과정의 일부
- 프로그래밍 언어로 작성된 소스 코드를 컴퓨터가 이해할 수 있는 기계어 코드로 번역하는 과정
'Develop' 카테고리의 다른 글
HTML (0) | 2022.08.23 |
---|---|
웹 클라이언트와 웹 서버 (0) | 2022.08.22 |
Verification 과 Validation (0) | 2022.08.18 |
전략 패턴이란? (0) | 2022.07.29 |
Reverse&Forward Engineer (0) | 2022.07.28 |