본문 바로가기

카테고리 없음

1강 컴퓨터와 자료

1. 컴퓨터

1) 컴퓨터란 무엇인가

▶ 데이터 처리기 data processer

  • 현대 컴퓨터의 기능적 측면("입력-처리-출력")만 정의
  • 너무 포괄적
  • 어떤 형태의 작업을 처리할 수 있는지 불분명

 

 프로그램이 가능한 데이터 처리기 programmable data processer

 

 프로그램

  • 컴퓨터가 데이터를 어떻게 처리할지를 알려주는 일련의 명령어 집합
  • 처리 가능한 작업의 유형과 연산의 집합을 결정

컴퓨터 → 특수 목적의 작업을 처리하는 기계가 아니라, "다양한 형태의 작업을 수행할 수 있는 범용의 기계"

 

  • 프로그래밍 과정의 결과물

① 주어진 문제의 해결 방법과 절차를 찾는다.

② 그것을 적절한 프로그래밍 언어를 사용해서 컴퓨터가 이해할 수 있는 형태로 표현한다.

→ "알고리즘"

 

2) 컴퓨터의 장점

  • 신속한 처리

ms(10의 -3승 초)

us(10의 -6승 초)

ns(10의 -9승 초)

ps(10의 -12승 초)

 

  • 처리 결과의 정확성

유효한 입력과 프로그램이 주어지면 항상 정확한 결과 생성

 

  • 자동

프로그램 지시에 따라 자동으로 처리 → 사람의 개입이 불필요

 

  • 대용량

대용량의 데이터 저장 및 처리

 

2. 컴퓨터과학

1) 컴퓨터과학이란 무엇인가?

  • 데이터의 표현, 저장, 조작, 검색과 밀접히 관련된 분야

컴퓨터 → 프로그램을 통해서 데이터를 입력하여 처리, 저장, 검색, 출력하는 전자적 장치

→ 데이터의 획득acquisition, 표현representation, 처리processing, 저장storage, 통신communication, 접근access을 위한 방법들의 실행 가능성, 구조화, 표현, 기계화에 관련된 내용을 다루는 분야

 

  • 컴퓨터, 데이터, 프로그램, 알고리즘에 대한 분야
  • 알고리즘과 관련된 이슈를 다루는 학문

알고리즘: 주어진 문제를 해결하기 위한 처리 과정을 절차적으로 나열한 명령어들의 집합

알고리즘의 존재 여부 → "컴퓨터의 한계"

 

2) 컴퓨터과학의 특성

  • 비교적 짧은 역사, 빠른 변화 및 엄청난 영향력
  • 다른 분야와의 밀접한 연관 → 폭 넓은 연구/응용 범위

컴퓨터공학: 가격 대비 성능 특성이 좋은 컴퓨팅 엔진을 만들기 위해 하드웨어와 소프트웨어 요소의 조립에 중점

컴퓨터과학: 현재의 기술에 덜 의존적인 방식으로 주어진 문제에 대한 해결책의 효율성과 실현 가능성에 보다 중점 → "컴퓨터를 활용한 문제 해결에 대한 학문"

 

3) 좋은 컴퓨터과학 연구자가 되려면

컴퓨터과학은 퍼즐을 푸는 것과 타아서

  • 멋진 해결 방법을 찾으려는 열정
  • 해결 방법을 평가하기 위해 수학적 분석과 논리 정연함을 사용할 수 있는 능력
  • 추상화를 통해 복잡한 문제의 모델링 과정에서 발휘할 수 있는 창의성
  • 상세한 내용에 숨겨진 가정에 대해 주의를 기울일 수 있는 능력
  • 동일한 문제라도 다른 환경에서의 차이점을 인지할 수 있는 능력
  • 잘 알려진 효율적 해결 방법을 새로운 환경의 문제에 적용할 수 있는 능력

 

3. 컴퓨터 시스템

1) 컴퓨터 시스템의 구성요소

  • 하드웨어
  • 소프트웨어
  • 데이터
  • 사용자

2) 하드웨어

  • 기계를 구성하고 있는 모든 물리적인 기계장치/전자장치
  • 핵심장치: 폰 노이만 모델에서 제시한 4개의 서브시스템이 해당
  • 폰 노이만 모델

컴퓨터의 내부 구조와 처리 과정을 정의한 모델

모든 컴퓨터는 폰 노이만 모델에 기반을 둠

 

  • 중앙처리장치(CPU: Central Processing Unit)

제어장치(CU: Control Unit) + 산술논리연산장치(ALU: Arithmetic and Logic Unit)

 

  • 기억장치 → 주기억장치, 보조기억장치

처리할 입력 데이터, 처리를 담당하는 프로그램, 중간 결과, 출력할 데이터

 

  • 산술논리연산장치

산술 연산과 논리 연산의 수행을 통해 직접적인 데이터 처리가 이루어지는 장치

 

  • 제어장치

컴퓨터의 기억장치, ALU, 입출력장치의 동작을 제어하는 장치

 

  • 입력장치
  • 출력장치

 

폰 노이만 모델의 주요 개념

 

  • 내장 프로그램 stored program

실행될 프로그램은 메모리에 저장되어야 한다.

초기 컴퓨터에서는 데이터만 메모리에 저장되고, 프로그램은 컴퓨터 외부에 표현

"프로그램과 데이터가 동일한 형식(비트 패턴)으로 메모리에 표현된다"는 의미를 내포

 

  • 프로그램은 유한개의 명령어의 나열이다.

미리 정의된 기본 명령어의 유한개의 조합으로 구성된다.

메모리에서 한 번에 하나씩 명령어를 가져와서 해석하고, 실행한다.

명령어의 재사용 → 프로그래밍 작업이 간단해짐

 

3) 소프트웨어

  • 모든 종류의 프로그램을 총체적으로 표현하는 언어

컴퓨터가 데이터를 어떻게 처리할 것인가를 규정하는 명령어들의 나열

컴퓨터가 이해할 수 있도록 표현된 알고리즘

 

소프트웨어 분류

  • 시스템 소프트웨어

컴퓨터 작업 자체의 관리와 특정 기능의 수행을 통해 컴퓨터의 전체적인 운영을 담당

→ 운영체제, 컴파일러

 

  • 응용 소프트웨어

사용자가 요구하는 작업을 직접적으로 수행하는 프로그램

 

4) 데이터

모든 데이터는 유형과 관계 없이 비트 패턴으로 표현

비트 패턴 → 이진 상태를 나타내는 비트인 0과 1이 나열된 형태

폰 노이만 모델에서는 데이터의 표현 및 저장 형태에 대해서 정이하지 않음

데이터의 입출력을 위해서는 적절한 형태로의 변환이 필요

 

5) 사용자

컴퓨터의 설계부터 효율적인 이용에 이르기까지 전반적인 데이터 처리 과정에서 유능하고 지식이 풍부한 사람의 적극적인 개입이 필