컴퓨터 개론 introduction to computer science
- 컴퓨터 과학 전반에 대해 소개
-> 자료 구조, 알고리즘, 컴퓨터구조, 운영체제, 네트워크, 프로그래밍 언어 등
자료 처리기data processor로서의 컴퓨터
- 자료 data를 입력받아 처리 process 후 결과result를 출력
- ex. 계산기
=> 자료를 처리하는 기계만으로 이해하기는 불충분
프로그램이 가능한 자료 처리기로서의 컴퓨터
- 입력 -> 자료 처리 + 프로그램 -> 출력
프로그램 program
- 자료를 어떻게 처리할지 정의한 명령 집합
- 프로그래밍 과정의 결과물
-> 기계어 파일, 실행 파일 exe
프로그래밍 과정
- 간단하게 코딩이라 부름
- 문제 해결을 위한 흐름(알고리즘)을 정의함
처리 속도 단위
- ms : 밀리 세컨드 $10^{-3}$초
- $\mu$s : 마이크로 세컨드 $10^{-6}$초
- ns : 나노 세컨드 $10^{-9}$초
- ps : 피코 세컨드 $10^{-12}$초
컴퓨터 발전 과정
- ~ 1930년 : 기계식 계산기
- 1930 ~ 1950 : 전자식 컴퓨터
-> 1942, ABC : 선형 방정식 푸는 컴퓨터
-> 1944, Colossus : 앨런 튜링, 독일 암호 해독
****************** 위는 특수 목적용 ************
-> 1946, ENIAC : 최초 완전 전자식 범용 컴퓨터
(외부에서 프로그램이 저장 => 실행 프로그램이 컴퓨터 외부에 존재, 데이터만 내부 저장)
-> 1950, EDVAC : 내장 프로그램 방식 최초 컴퓨터
(컴퓨터 내부에 프로그램이 저장됨)
* 앨런 튜링 : 현대 컴퓨터 고안(튜링 머신),
튜링 머신
- 태잎과 헤드가 존재
- 태잎에 데이터 읽기 쓰기
- 해드를 이동시켜 읽고쓸 태잎을 변경
세대별 컴퓨터 분류
1세대 1950 ~ 1959
- 진공관
2세대 1959 ~ 1965
- 트랜지스터
- 포트란, 코볼
3세대 1965 ~ 1975
- 집적회로
- SW 등작
4세대 1975 ~ 1985
- 초고밀도집적회로
- 마이크로 컴퓨터 등장 8800
- 네트워크
5세대 1985 ~
- 현재
컴퓨터 분류
1. 컴퓨터 사용 목적에 따른 분류
- 범용 컴퓨터
- 전용 컴퓨터
2. 자료 표현 방식
- 디지털 컴퓨터 : 이산적인 값을 처리
- 아날로그 컴퓨터 : 연속적인 입력양을 그대로 사용
3. 성능에 따른 분류
- 슈퍼 컴퓨터
- 대형 컴퓨터
- 미니 컴퓨터
- 워크 스테이션
- 마이크로 컴퓨터
컴퓨터 과학이란?
- 컴퓨터 제작하는 학문 ..?
- 프로그램 개발하는 학문 ..?
=> 컴퓨터를 이용하여 데이터를 통해 다양한 문제와 방법들을 다루는 학문
프로그램과 알고리즘
- 컴퓨터는 자료를 처리해서 결과(정보)를 얻는 기계
-> 문제를 해결하기 위한 명령어 집합인 프로그램을 사용
-> 알고리즘 : 문제 해결을 위한 흐름 -> 프로그램
관련 학문
- 자료 : 자료구조, 파일처리, 데이터베이스
- 정보 : 컴퓨터 시스템, 디지털 논리구조, 컴퓨터 구조
- 프로그램 : 운영체제, 컴파일러, 프로그래밍언어 ,정보통신, 컴퓨터그래픽스
- 알고리즘 : 이산구조, 계산이론, 인공지능, 알고리즘, 오토마타
=> 전반적인 분야를 파악해야함
컴퓨터 공학 computer engineering과 컴퓨터 과학computer science의 차이
- 컴퓨터 공학 engineering : 가성비 좋은 제품을 만들기 위해 HW와 SW 조합에 초점
- 컴퓨터 과학 science : 문제 해결의 효율성과 실현 가능성에 초점
시스템 system
- 원하는 목적을 달성하기 위해 여러가지 요소들이 모여 연결된 체계
HW 하드웨어 : 눈으로 볼수있는 장치로 물리적 기계 및 전자장치
폰 노이만 구조와 하버드 구조
- 컴퓨터 내부 구조, 처리 과정을 정의한 것
- 컴퓨터 구조는 대표적으로 폰노이만 구조와 하버드 구조가 있음
- 대부분은 폰 노이만 구조를 채택
- 데이터 버스와 명령어 버스가 통합 -> 폰노이만 구조
- 데이터 버스와 명령어 버스가 분리됨 -> 하버드 구조
4개의 서브시스템
기억 장치
- 데이터와 명령어(프로그램)을 저장하는 곳
-> 주기억 장치(RAM, ROM), 보조기억장치(HDD, SSD)
산술논리연산장치 ALU
- 데이터 산술(+-*/), 논리(and, or)연산하는 장치
제어 장치 Control Unit
- 기억장치, ALU, 입출력 장치 등 동작 제어
=> CPU = ALU + CU + Register
입출력 장치 I/O Device
- 입력 : 키보드, 마우스, 마이크
- 출력 : 모니터, 프린터, 스피커
내장 프로그램 stored program
- 실행될 프로그램은 메모리에 저장 stored or 적재 load 되어야 함
- 프로그램과 데이터는 비트 패턴으로 메모리 상에 표현
자료와 정보
- I = P(D)
- I는 정보
- P는 처리
- D는 자료
- 자료D를 처리P하여 정보 I를 취득
자료의 형태
- 문자, 숫자, 이미지, 오디오, 비디오 등
=> 다 비트로 표현
자료 단위
- 비트 binary digit : 0과 1을 표현
- 바이트 byte : 비트 8개
- 킬로 바이트 KB kilo byte : 바이트 $2^10$
- MB 메가바이트, GB기가바이트, TB테라바이트, PB페타바이트
- 워드 word : 컴퓨터 연산의 기본 단위가 되는 정보 양 -> 32비트, 64비트
진법 number system
- 수를 세는 단위
- 2, 8, 10, 16진법
- 2진법은 읽거나 오류 찾기 힘듬
-> 8진법, 16진법 사용
- 010 : 8진법으로 2
* 앞에 0이 붙으면 8진법 수
- 0x0a : 16진법으로 10
* 앞에 0x가 붙으면 16진법수
'컴퓨터과학 > 컴퓨터, OS' 카테고리의 다른 글
HWSW - 2. 컴파일 (0) | 2020.08.06 |
---|---|
HWSW - 1. MCU (0) | 2020.08.05 |
os만들기 - 25. GDT와 IDT 다루기 (0) | 2020.08.04 |
os만들기 - 24. 변수 표시하고, 마우스 띄우기 (0) | 2020.08.03 |
os만들기 - 23. 문자(열) 처리 (0) | 2020.08.03 |