컴퓨터 구성의 분류
- 하드웨어
- 컴퓨터의 기계적인 장치를 의미
- CPU, 기억장치, 입출력장치로 구성
- 소프트웨어
- 하드웨어의 동작을 제어하고 지시하는 모든 프로그램
하드웨어
중앙처리장치
- 컴퓨터 시스템 전체를 총괄하는 장치로써 주기억장치에서 데이터를 받아 처리한 후 출력장치와 기억장치로 데이터를 보냄
- 연산장치와 제어장치 등으로 구성됨
산술·논리 연산장치
- Arithmetic Logic Unit
- 산술 연산과 논리 연산을 수행
- 산술 연산은 덧셈, 뺄셈, 곱셈, 나눗셈 등 사칙연산 수행(가산기)
- 논리 연산은 참과 거짓을 판단하는 연산(AND, OR, NOT, XOR 등의 연산)
제어장치
- 적절한 순서로 명령어를 인출하고 그 명령어를 해석한 결과에 따라 컴퓨터 시스템의 필요한 부분으로 제어신호를 전달
레지스터
기억장치
- 내부 기억장치
- CPU 내의 레지스터와 캐시기억장치, 주기억장치
- 외부 기억장치
- 보조기억장치(하드 디스크, SSD, 플로피 디스크, CD-ROM, DVD 등)
주기억장치
- 컴퓨터 시스템에서 수행중인 프로그램과 필요한 데이터를 저장하는 장치
- CPU에 접근 속도가 빠르며 휘발성 메모리임
- DRAM 사용
보조기억장치
- 외부 기억장치라고도 하며 반영구적으로 데이터를 저장하고 보존
- 보조기억장치에 저장된 데이터는 중앙처리장치와 직접 정보를 교환할 수 없기 때문에 주기억장치로 옮겨진 후 처리
- 주기억장치에 비해 가격은 저렴하고 저장 용량 또한 크지만 속도가 느리다는 단점
- 자기테이프, 자기 디스크, 자기 드럼, 플로피 디스크, 하드 디스크, CD-ROM, DVD, 플래시 메모리, 광 디스크, SSD 등
입력장치
- 컴퓨터에서 처리할 데이터와 정보를 외부에서 입력해주는 역할을 수행
- 처리하고자 하는 데이터를 제어장치의 명령에 따라 입력매체에서 읽어서 기억장치로 보냄
- 키보드, 마우스, 스캐너 등
출력장치
- 컴퓨터 내부에서 처리된 결과를 사용자가 보거나 들을 수 있도록 출력매체를 이용해서 내보냄
- 모니터, 프린터, 스피커 등
소프트웨어
- 컴퓨터 프로그램과 그와 관련된 문서들을 총칭하는 용어
- 정보들이 이동하는 방향과 정보처리의 종류를 지정하고 이러한 동작이 일어나는 시간을 지정하는 명령어의 집합
- 시스템 소프트웨어와 응용 소프트웨어로 분류
- 하드웨어가 발달하여 가격이 저렴해지고 교체가 잦아짐에 따라 소프트웨어의 중요성은 더욱 높아지고 있음
- 소프트웨어로 향상되는 생산성, 바뀐 하드웨어에 적용할 수 있는 소프트웨어의 호환성, 유지보수를 하는 것이 효율적인지 등의 요구 조건 중요
시스템 소프트웨어
- 여러 컴퓨터 시스템에서 공통적으로 필요한 프로그램으로, 사용자가 컴퓨터를 좀 더 효율적으로 사용하기 위해 만듦
- 컴퓨터 시스템을 제어하고 운영하는 프로그램
- 운영체제 프로그램, 컴파일러, 입출력 제어 프로그램 등
응용 소프트웨어
- 시스템 소프트웨어를 기반으로 특정한 응용 분야에서 특수 목적을 위해 사용할 수 있는 프로그램
- 사무 자동화 프로그램, 공학용 계산 프로그램, 인터넷 웹 브라우저, 그래픽 프로그램 등
컴퓨터 구조의 발전과정
- 수동식 계산기: 수판(기원전 3000년 경 중국)
- 기계식 계산기
- 파스칼라인(1645)
- 가감승제 계싼기(1671)
- 차분기관과 분석기관(1834)
- 천공카드 도표 작성기(1890)
- 전기기계식 계산기: MARK1(1944)
- 전자식 계산기: 아타나소프-베리 컴퓨터(1942)
전자식 디지털 컴퓨터
ENIAC
- 최초의 전자식 디지털 컴퓨터(1946)
- 컴퓨터 내부의 논리회로 소자로 진공관을 사용
- 프로그램을 작성하려면 컴퓨터 각 부분을 전선으로 연결해야 하고, 프로그램의 수행을 위해서는 6,000여 개의 스위치를 조절해야 함
내장 프로그램 방식 컴퓨터
- 1945년 폰 노이만이 제안
- 컴퓨터에 기억장치를 설치하고, 프로그램과 데이터를 함께 기억장치에 저장했다가, 프로그램에 포함된 명령에 따라 자동으로 작업을 처리하는 방식
- 오늘날 컴퓨터의 기본 사상
- EDVAC: 1952년 미국에서 최초로 개발된 내장 프로그램 방식 컴퓨터
컴퓨터의 세대별 발전
- 논리소자로 구별
- 1세대(1946~1956): 진공관
- 2세대(1957~1964): 트랜지스터
- 3세대(1965~1979): 집적회로
- 4세대(1980~현재): 고밀도 집적회로
컴퓨터의 분류
사용 목적에 따른 분류
- 전용 컴퓨터
- 특정한 목적을 위해 설계된 컴퓨터, 군사용이나 공장의 공정 제어용 등으로 한정된 목적으로 사용
- 범용 컴퓨터
- 여러 분야의 다양한 일을 처리할 수 있도록 설계 제작된 컴퓨터
- 다양한 응용 소프트웨어가 여러 분야의 다양한 일 처리를 가능하게 함
사용 데이터에 따른 분류
- 디지털 컴퓨터
- 모든 정보를 2진수의 데이터로 부호화하여 사용
- 대부분의 컴퓨터가 디지털 컴퓨터
- 아날로그 컴퓨터보다 정밀도가 높음
- 아날로그 컴퓨터
- 아날로그 신호를 데이터로 이용하는 컴퓨터
- 신속한 입력과 즉각적인 반응을 얻을 수 있어 제어용 목적에 적합
- 하이브리드 컴퓨터
- 아날로그와 디지털의 장점을 취하여 제작한 것으로 어떤 종류의 데이터도 처리할 수 있는 컴퓨터
처리 능력에 따른 분류
CPU와 기억장치의 규모에 따른 분류
- 마이크로 컴퓨터
- PC를 의미하며 주로 가정용으로 사용되는 소형 컴퓨터
- 중형 컴퓨터
- 대용량의 주기억장치와 보조기억장치, 그리고 빠른 주변장치들을 가지고 있어 수십 명 또는 수백 명이 쓰기에 적합한 컴퓨터
- 중소기업, 학교, 연구소들에서 주로 사용
- 대형 컴퓨터
- 대용량의 저장장치를 보유하여 다중 입출력 채널을 이용한 고속의 입출력 처리 능력을 보유한 컴퓨터
- 공공 단체, 대기업, 은행, 병원, 대학 등으로 단말기를 연결시켜 온라인 업무나 분산 처리 업무에 이용됨
- 또한 대규모 데이터 베이스 저장 및 관리용으로 사용
- 슈퍼 컴퓨터
- 복잡한 계산을 초고속으로 처리하는 초대형 컴퓨터로 가장 빠르고 비싼 컴퓨터
- 원자력 개발, 항공우주, 기상 예측 등의 분야에서 사용
구조에 따른 분류
- 파이프라인 슈퍼 컴퓨터
- 하나의 CPU 내에 다수의 연산장치를 포함하고 있는 컴퓨터
- 각 연산장치는 파이프 라이닝 구조를 이용하여 고속 벡터 계산이 가능
- 대규모 병렬 컴퓨터
- 하나의 시스템 내에 상호 연결된 수백 혹은 수천 개 이상의 프로세스들을 포함
- 프로세서들이 하나의 큰 작업을 나누어서 병렬로 처리하는 구조
컴퓨터 정보의 표현
- 컴퓨터에서는 데이터 1비트를 기본으로 0, 1 두 개의 숫자를 표시하는 2진법을 사용함
- 비트
- 2진수에서 데이터를 표현하는 단위
- 2진수의 조합은 2n만큼의 조합을 가질 수 있고, n은 비트의 수
- 바이트
- 정보처리를 위해 사용되는 비트의 집합으로 8bit를 1byte로 규정
- 워드
- 컴퓨터가 한 번에 처리할 수 있는 데이터의 양
- 컴퓨터 종류에 따라 2바이트, 4바이트, n바이트 등으로 구성되며, 일반적으로 64비트(8바이트)가 가장 많이 쓰임