1 컴퓨터 구조 IT CookBook, 컴퓨터 구조와 원리 2.0
학습목표 컴퓨터의 하드웨어 구성 장치와 소프트웨어의 개념을 이해한다. 컴퓨터의 세대별 발전을 알아본다. 컴퓨터의 하드웨어 구성 장치와 소프트웨어의 개념을 이해한다. 컴퓨터의 세대별 발전을 알아본다. 컴퓨터의 처리 성능과 규모에 따른 분류를 공부한다. 정보를 표현하는 진법을 공부한다.
목 차 컴퓨터 시스템의 구성요소 컴퓨터 구조의 발전과정 컴퓨터의 분류 컴퓨터의 정보의 표현과 저장
01 컴퓨터 시스템의 구성 요소 컴퓨터 구성의 분류 하드웨어(Hardware)와 소프트웨어(Software)로 구분 하드웨어는 컴퓨터의 기계적인 장치를 의미한다. 소프트웨어는 하드웨어의 동작을 제어하고 지시하는 모든 종류의 프로그램을 의미한다.
01 컴퓨터 시스템의 구성 요소 하드웨어 중앙처리장치(CPU, Central Processing Unit) 컴퓨터의 하드웨어는 기능에 따라 중앙처리장치, 기억장치, 입력장치, 출력장치로 분류 중앙처리장치(CPU, Central Processing Unit) 컴퓨터의 두뇌에 해당하는 장치다. 컴퓨터 시스템 전체를 제어하는 장치로서 입력장치에서 데이터를 입력 받아 처리한 후 출력장치와 기억장치로 데이터를 보낸다.
01 컴퓨터 시스템의 구성 요소 중앙처리장치 산술•논리 연산장치(ALU, Arithmetic Logic Unit) CPU의 핵심 요소로써 산술 연산(Arithmetic Operation)과 논리 연산(Logic Operation)을 수행하는 장치다. 산술 연산은 주로 덧셈, 뺄셈, 곱셈, 나눗셈 등의 사칙연산을 수행한다. 논리 연산은 참과 거짓을 판결하는 연산으로 대표적으로 AND, OR, NOT, X-OR등의 연산을 수행한다. 제어장치(Control Device) CPU 내부에서 일어나는 모든 작업을 통제하고 관리한다. 적절한 순서로 명령어를 인출하고 그 명령어를 해석한 결과에 따라 컴퓨터 시스템의 필요한 부분으로 제어신호를 전달한다.
01 컴퓨터 시스템의 구성 요소 기억장치(Memory Device) 기억장치는 내부 기억장치와 외부 기억장치로 나눌 수 있다. CPU 내의 레지스터와 캐시기억장치, 주기억장치는 내부 기억장치에 속한다. 보조기억장치(하드 디스크, 플로피 디스크, CD-ROM, DVD)는 외부 기억장치에 해당함
01 컴퓨터 시스템의 구성 요소 기억장치(Memory Device) 주기억장치(Main Memory) 컴퓨터 시스템에서 수행되고 있는 프로그램과 수행에 필요한 데이터를 기억하고 있는 장치다. CPU에 접근 속도가 빠르며 많은 양의 데이터를 기억할 수 있다. RAM(Random Access Memory)이 사용하고 있다. [CPU] [RAM]
01 컴퓨터 시스템의 구성 요소 보조기억장치(Secondary Memory) 외부 기억장치라고도 하며 반영구적으로 데이터를 저장하고 보존할 수 있다. 보조기억장치에 저장된 데이터는 중앙처리장치와 직접 정보를 교환할 수 없기 때문에 주기억장치로 옮겨진 후 처리된다. 주기억장치에 비해 가격은 저렴하고 저장 용량 또한 크지만 속도가 느리다는 단점이 있다. 자기 테이프, 자기 디스크, 자기 드럼, 플로피 디스크, 하드 디스크, CD-ROM, DVD, 플래시 메모리, 광 디스크 등이 있다.
01 컴퓨터 시스템의 구성 요소 입력장치(Input Device) 컴퓨터에서 처리할 데이터와 정보를 외부에서 입력해주는 역할을 수행 처리하고자 하는 데이터를 제어장치의 명령에 따라 입력매체에서 읽어서 기억장치로 보낸다.
01 컴퓨터 시스템의 구성 요소 출력장치(Output Device) 컴퓨터 내부에서 처리된 결과를 사용자가 보거나 들을 수 있도록 출력매체를 이용해서 내보냄
01 컴퓨터 시스템의 구성 요소 소프트웨어(Software) 컴퓨터 프로그램과 그와 관련된 문서들을 총칭하는 용어 정보들이 이동하는 방향과 정보처리의 종류를 지정하고 이러한 동작이 일어나는 시간을 지정하는 명령어의 집합 시스템 소프트웨어와 응용 소프트웨어로 분류 하드웨어가 발달하여 가격이 저렴해지고 교체가 잦아짐에 따라 소프트웨어의 중요성은 더욱 높아지고 있음 소프트웨어로 향상되는 생산성, 바뀐 하드웨어에 적용할 수 있는 소프트웨어의 호환성, 유지보수를 하는 것이 효율적인지 등의 요구 조건 중요하다.
01 컴퓨터 시스템의 구성 요소 소프트웨어의 분류 시스템 소프트웨어(System Software) 여러 컴퓨터 시스템에서 공통적으로 필요한 프로그램으로, 사용자가 컴퓨터를 좀 더 효율적으로 사용하기 위해 만들었다. 컴퓨터 시스템을 제어하고 운영하는 프로그램이다. 운영체제 프로그램 (DOS, UNIX, Windows9x, Window 2000, Windows XP, Window 7), 컴파일러(C •FORTRAN 컴파일러 등), 입출력 제어 프로그램 등이 있다. 응용 소프트웨어(Application Software) 시스템 소프트웨어를 기반으로 특정한 응용 분야에서 특수 목적을 위해 사용할 수 있는 프로그램 사무 자동화 프로그램, 공학용 계산 프로그램, 인터넷 웹 브라우저, 그래픽 프로그램 등이 이에 속한다.
02 컴퓨터 구조의 발전 과정 컴퓨터의 발전 과정 수동식 계산기 : 수판 기계식 계산기 전기기계식 계산기 전자식 계산기 파스칼라인 – 가감승제 계산기 – 차분기관과 분석기관 – 천공카드 도표 작성기 전기기계식 계산기 MARK1 : 종이 테이프에 천공된 프로그램 명령어들에 의하여 작동 제어되도록 설계되었다. 전자식 계산기 아타나소프-베리 컴퓨터(ABC computer) 순차적 방식과 2진 법체계를 사용하는 진공관방식이다.
02 컴퓨터 구조의 발전과정 전자식 디지털 컴퓨터 ENIAC 내장 프로그램 방식 컴퓨터 최초의 전자식 디지털 컴퓨터(1946)다. 전자적인 가산기를 연산용 기억장치로 사용한다. 컴퓨터 내부의 회로 소자로 진공관을 사용하였다. 프로그램을 작성하려면 컴퓨터 각 부분을 전선으로 연결해야 하고, 프로그램의 수행을 위해서는 6,000여 개의 스위치를 조절해야 한다. 내장 프로그램 방식 컴퓨터 1945년 폰 노이만(Von Neumann)이 제안하였다. 컴퓨터에 기억장치를 설치하고, 프로그램과 데이터를 함께 기억장치에 저장했다가, 프로그램에 포함된 명령에 따라 자동으로 작업을 처리하는 방식이다. 오늘날 컴퓨터의 기본 사상이다. EDVAC(Electronic Discrete Variables Automatic Computer) : 1952년 미국에서 최초로 개발된 프로그램 내장 방식의 컴퓨터다.
02 컴퓨터 구조의 발전과정 전자식 디지털 컴퓨터 UNIVAC I(Universal Automatic Computer) 이전의 특수 목적용이 아닌 최초의 순수 데이터 처리용이면 상업용 컴퓨터다. IBM 701 1952년에 CRT(cathode-ray-tube)를 주기억장치로 하고, 보조기억장치로서 자기 드럼과 자기 테이프를 채택하였다. 본격적인 상업용 컴퓨터 시대을 열었다.
02 컴퓨터 구조의 발전과정 컴퓨터의 세대별 발전
03 컴퓨터의 분류 사용 목적에 따른 분류 사용 데이터에 따른 분류 전용 컴퓨터(Special Purpose Computer) 특정한 목적 위해 설계된 컴퓨터로, 군사용이나 공장의 공정 제어용 등으로 한정된 목적으로 사용한다. 범용 컴퓨터(General Purpose Computer) 여러 분야의 다양한 일을 처리할 수 있도록 설계 제작된 컴퓨터다. 다양한 응용 소프트웨어가 여러 분야의 다양한 일 처리를 가능하게 한다. 사용 데이터에 따른 분류 디지털 컴퓨터 모든 정보를 2진수의 데이터로 부호화하여 사용한다.
03 컴퓨터의 분류 사용 데이터에 따른 분류 디지털 컴퓨터 아날로그 컴퓨터 하이브리드 컴퓨터 모든 정보를 2진수의 데이터로 부호화하여 사용한다. 대부분의 컴퓨터가 디지털 컴퓨터, 아날로그 컴퓨터보다 정밀도가 높은 편이다. 아날로그 컴퓨터 아날로그 신호를 데이터로 이용하는 컴퓨터다. 신속한 입력과 즉각적인 반응을 얻을 수 있어 제어용 목적에 적합하다. 하이브리드 컴퓨터 아날로그와 디지털의 장점을 취하여 제작한 것으로 어떤 종류의 데이터도 처리할 수 있는 컴퓨터다.
03 컴퓨터의 분류 처리 능력에 따른 분류 중앙처리장치와 기억장치의 규모에 따른 분류 마이크로 컴퓨터(Microcomputer) PC를 의미하며 가정용이나 작은 사업의 용도로 사용되는 소형의 컴퓨터다. 중형 컴퓨터(Minicomputer) 대용량의 주기억장치와 보조기억장치 그리고 빠른 주변장치들을 가지고 있어 수십 명 또는 수백 병이 쓰기에 적합한 컴퓨터다. 중소기업, 학교, 연구소들에서 주로 사용된다. 대형 컴퓨터(Mainframe Computer) 대용량의 저장장치를 보유하여 다중 입출력 채널을 이용한 고속의 입출력 처리 능력을 보유한 컴퓨터다. 공공 단체, 대기업, 은행, 병원, 대학 등으로 단말기를 연결시켜 온라인 업무나 분산 처리 업무에 이용된다. 또한 대규모 데이터 베이스 저장 및 관리 용으로 사용한다.
03 컴퓨터의 분류 처리 능력에 따른 분류 중앙처리장치와 기억장치의 규모에 따른 분류 수퍼 컴퓨터(Super Computer) 복잡한 계산을 초고속으로 처리하는 초대형 컴퓨터로 가장 빠르고 비싼 컴퓨터다. 원자력 개발, 항공우주, 기상 예측 등의 분야에서 사용한다.
03 컴퓨터의 분류 구조에 따른 분류 파이프라인 슈퍼 컴퓨터(Pipeline Supercomputer) 하나의 CPU 내에 다수의 연산장치를 포함하고 있는 컴퓨터다. 각 연산장치는 파이프 라이닝 구조를 이용하여 고속 벡터 계산이 가능하다. 대규모 병렬 컴퓨터(Massively Parallel Computer) 하나의 시스템 내에 상호 연결된 수백 혹은 수천 개 이상의 프로세스들을 포함한다. 프로세서들이 하나의 큰 작업을 나누어서 병렬로 처리하는 구조다.
04 컴퓨터 정보의 표현과 저장 컴퓨터에서 정보의 표현 컴퓨터에서는 데이터 1비트를 기본으로 0, 1 두 개의 숫자를 표시하는 2진법을 사용함 비트(Bit) 2진수에서 데이터를 표현하는 단위다. 2진수의 조합은 2n 만큼의 조합을 가질 수 있고, n은 비트의 수다. 바이트(byte) 정보처리를 위해 사용되는 비트의 집합으로 8bit를 1byte로 규정한다. 워드(word) 컴퓨터가 한 번에 처리할 수 있는 데이터의 양이다. 컴퓨터 종류에 따라 2바이트, 4바이트, n바이트 등으로 구성되며, 일반적으로 32비트(4바이트)가 가장 많이 쓰이고 있다.
04 컴퓨터 정보의 표현과 저장 컴퓨터에서 정보의 표현 디지털 정보의 표현 단위
04 컴퓨터 정보의 표현과 저장 수의 진법 10진법(Decimal Notation) 2진법(Binary notation) 인간이 사용하는 수의 체계로 0, 1, 2, 3, 4, 5, 6, 7, 8, 9의 열 가지의 기호를 이용하여 수를 표현한다. 각 자리에서 9 다음에 자리 올림이 발생한다. 이때 자리 올림으로 생성된 각 자리의 단위는 10의 지수 승(10N)이 된다. 2진법(Binary notation) 컴퓨터에서 사용하는 수 체계로 0과 1만을 가지고 수를 표현한다. 각 자리에서 1 다음에 자리 올림이 발생한다. 이때 자리올림으로 생성되는 각 자리의 단위는 2의 지수 승(2N)이 된다. 다른 진법과 구별을 하기 위해서 첨자로 2를 표시한다. 2진수 101은 (101)2로 표현 2의 지수 승 분해한다. (1101)2 = 1×23 + 1×22 + 0×21 + 1×20
04 컴퓨터 정보의 표현과 저장 수의 진법 10진수와 2진수의 비교
04 컴퓨터 정보의 표현과 저장 수의 진법 8진법(Octal notation) 숫자들이 0, 1, 2, 3, 4, 5, 6, 7 등 8가지의 문자를 이용하여 구성한다. 각 자리에서 7 다음에 자리 올림이 발생한다. 이때 자리올림으로 생성되는 각 자리의 단위는 8의 지수 승(8N)이 된다. 8진수의 표현은 8의 아래 첨자를 이용해서 표현한다. 예 : (27)8 8의 지수 승으로 분해하면 다음과 같다. (27)8 = 2×81 + 7×80
04 컴퓨터 정보의 표현과 저장 수의 진법 16진법(Hexadecimal Notation) 0, 1, 2, 3, 4, 5, 6, 7, 8, 9와 A, B, C, D, E, F 기호를 사용한다. 10진법의 10~15까지의 수가 16진법에서는 A, B, C, D, E, F로 표현 각 자리에서 15 다음에 자리 올림이 발생한다. 이때 자리올림으로 생성되는 각 자리의 단위는 16의 지수 승(16N)이 된다. 16진수의 표현은 16의 아래 첨자를 이용해서 표현한다. : (12FF)16 16의 지수 승으로 분해 (12FF)16 = 1×163 + 2×162 + F×161 + F×160
04 컴퓨터 정보의 표현과 저장 수의 진법 2진수, 10진수, 16진수와의 관계
04 컴퓨터 정보의 표현과 저장 진법 변환 10진법과 2진법 간의 변환 각 진법에서 진수를 진법의 지수 승으로 표현하게 되면 M × B E 가수(significand) M 10진법에서는 0 ~ 9까지의 값, 2진법에서는 0과 1의 값 8진법에서는 0 ~ 7까지의 값, 6진법에서는 0 ~ F까지의 값 기수(base) B 10진법에서는 10이 되며, 2진법에서는 2가 된다. 또한 8진법에서는 8이고 16진법에서는 16이 된다. 지수(exponent) E : 정수의 값
04 컴퓨터 정보의 표현과 저장 진법 변환 10진법과 2진법 간의 변환(1) 2진법에서 10진법으로 변환한다. 예) 이진수를 2의 지수 승으로 분해하고 그 합을 구하면 10진수가 얻어진다. 예) (11001011001)2 = 1×210 + 1×29 + 0×28 + 0×27 + 1×26 + 0×25 + 1×24 + 1×23 + 0×22 + 0×21 + 1×20 = 1024 + 512 + 64 + 16 + 8 + 1 = (1625)10
04 컴퓨터 정보의 표현과 저장 10진법에서 2진법으로 변환 10n + 10n-1 + ··· + 100로 표현되는 수 체계가 2m + 2m-1 + ··· + 21 + 20로 표현되 는 수 체계로 변환 예) (1463)10 = 1×103 + 4×102 + 6×101 + 3×100 = Am×2m + Am-1×2m-1 + ··· + A1×21 + A0×20
04 컴퓨터 정보의 표현과 저장 10진법에서 2진법으로 변환 (1463)10=1×210 + 0×29 + 1×28 + 1×27 + 0×26 + 1×25 + 1×24 + 0×23 + 1×22 + 1×21 + 1×20 결과적으로 화살표 방향으로 읽으면 2진수 (10110110111)2을 구할 수 있다. (1463)10 = (10110110111)2
Thank You IT CookBook, 컴퓨터 구조와 원리 2.0