[컴퓨터 공학 개론] #6 - 자료구조
·
💻 Computer Science/컴퓨터 공학 개론
컴퓨터에서 "자료(Data)" 란 프로그램으로 처리하고자 하는 데이터를 뜻합니다. 대부분의 프로그램은 자료를 처리하여 유용한 정보로 출력하는데, 이때 데이터가 어떤 구조로 표현되느냐에 따라 프로그램의 성능이 결정됩니다. 이것이 "자료구조"가 필요한 이유입니다. 01. 자료구조 개요 1) 자료구조 개념 "자료구조"란 데이터의 구조적 특징이 잘 살도록 체계적으로 데이터를 저장하고 사용하는 방법을 의미합니다. 프로그램이 쉽게 이용하도록 구성된 데이터 간의 논리적인 관계입니다. 프로그램이 다루는 데이터의 대부분은 어떠한 구조적인 관계를 맺고 있습니다. 즉, 데이터마다 특정한 방법으로 저장되거나 사용된다는 것입니다. 2) 자료구조 분류 자료구조는 "단순 구조", "선형 구조", "비선형 구조"로 분류됩니다. (1..
[컴퓨터 공학 개론] #5 - 프로그래밍 언어
·
💻 Computer Science/컴퓨터 공학 개론
01. 프로그래밍 언어 개요 컴퓨터를 이용해 문제를 해결할 때는 컴퓨터에 명령을 내려야 하는데, 이 명령어들의 집합이 프로그램이며, 프로그램을 작성하는 과정을 프로그래밍이라고 합니다. 이러한 과정은 컴퓨터가 이해할 수 있는 언어로 실행 프로그램을 만드는 것입니다. 이때 컴퓨터가 이해할 수 있는 언어를 "프로그래밍 언어"라고 합니다. 1) 저급 언어와 고급 언어 (1) 저급 언어 저급 언어, Low Level Language는 하드웨어 지향의 컴퓨터 내부 표현에 가까운 언어로, "기계어"와 "어셈블리어"로 구분됩니다. 기계어는 2진수 형태의 0과 1로 작성하며 컴퓨터가 직접 이해할 수 있는 언어입니다. 어셈블리어는 기계어 명령을 간단한 기호로 표현한 언어이며 기계어보다 사용하기 약간 편합니다. 그러나 두 ..
[컴퓨터 공학 개론] #4 - 소프트웨어와 운영체제
·
💻 Computer Science/컴퓨터 공학 개론
01. 소프트웨어 이해 소프트웨어는 하드웨어와 함께 컴퓨터를 구성하는 주요 요소 중 하나입니다. 컴퓨터 내 일 처리 순서와 방법을 지시하는 명령어의 집합인 프로그램과 프로그램 수행에 필요한 절차, 규칙, 관련 문서 등을 총칭하는 용어입니다. 소프트웨어는 크게 "시스템 소프트웨어"와 "응용 소프트웨어"로 나뉘며, 그 외에 "펌웨어"와 "미들웨어"가 있습니다. 펌웨어: 하드웨어를 제어하는 역할을 하는 작은 규모의 소프트웨어 미들웨어: 시스템 소프트웨어와 응용 소프트웨어 사이, 다른 종류의 응용 프로그램 사이에서 중개 역할을 하는 프로그램 1) 시스템 소프트웨어 시스템 소프트웨어는 컴퓨터를 관리하기 위한 소프트웨어입니다. 컴퓨터 사용에 꼭 필요한 프로그램들을 의미합니다. 일반적으로 운영체제와 시스템을 관리하는..
[컴퓨터 공학 개론] #3 - 컴퓨터 구조
·
💻 Computer Science/컴퓨터 공학 개론
컴퓨터 시스템은 하드웨어와 소프트웨어로 구성되어 있습니다. "컴퓨터 구조"는 하드웨어를 구성하는 각 장치의 특성과 동작 원리를 다루는 학문입니다. 하드웨어와 관련된 여러 장치와 개념을 알아보겠습니다. 01. 하드웨어 구성 하드웨어는 "중앙처리장치", "기억장치", "입출력장치"로 구성되어 있으며, 각 장치는 "시스템 버스(System Bus)"로 연결되어 있습니다. 컴퓨터는 데이터를 입력받아 저장한 상태에서 이를 처리한 후 출력하는 일을 합니다. 1) 시스템 버스 시스템 버스는 컴퓨터에 있는 중앙처리장치, 주기억장치, 입력장치, 출력장치 간 데이터를 서로 주고 받기 위해 사용되는 경로입니다. 시스템 버스는 데이터가 이동하는 길인 만큼 선의 폭이 넓을수록 한 번에 전송할 수 있는 데이터 양도 많아집니다. ..
[컴퓨터 공학 개론] #2 - 데이터 표현과 논리회로 (2)
·
💻 Computer Science/컴퓨터 공학 개론
01. 논리회로의 개념 논리회로는 디지털 회로를 구성하는 가장 기본적인 요소로 논리합(OR), 논리곱(AND), 부정(NOT), 부정논리곱(NAND), 부정논리곱(NOR) 등의 논리연산(Bool Algebra)을 수행하는 회로이다. 논리회로의 동작이나 기능을 기술하는 방식은 논리식, 논리도, 진리표 3가지가 있는데, 표현 방식을 알면 동작 원리를 쉽게 파악할 수 있다. 논리식: 논리연산자(AND, OR, NOT)으로 구성된 식이다. 논리도: 논리식을 그림으로 표현해 시각적으로 구성된 식이다. 진리표: 논리회로에 입력 가능한 모든 경우의 수에 대응하는 츨력값을 정의한 표이다. 게이트의 입력과 출력의 상관관계를 나타낸다. 1) 논리 연산자 논리회로에서 '논리'란 참 또는 거짓을 다룬다는 의미이다. 컴퓨터는 ..
[컴퓨터 공학 개론] #2 - 데이터 표현과 논리회로 (1)
·
💻 Computer Science/컴퓨터 공학 개론
01. 진법 체계 진법은 사용할 수 있는 숫자의 개수와 각 숫자의 위치 값을 정의한 수의 체계이다. 이때, 사용할 수 있는 숫자의 개수는 "0부터 해당 진법의 수보다 1 적은 수'이다. 우리가 주로 사용하는 진법은 10진법이지만 2진법, 8진법, 16진법, 60진법 등 많은 진법이 사용되고 있다. 그 중 컴퓨터는 2진법을 사용한다. 컴퓨터가 표현하는 체계를 이해하기 위해 다양한 진법들에 대해서 알아보자. 1) 10진법(Decimal Notation) 10진법: 0부터 9까지 10개의 숫자를 한 묶음으로 해서 1자리씩 위로 올리는 방법 $$ \begin{align} 432_{10} &= 4 \times 10^2 + 3 \times 10^1 + 2 \times 10^0 \\&= 4 \times 100 + 3..
[컴퓨터 공학 개론] #1 - ICT 기술과 컴퓨터
·
💻 Computer Science/컴퓨터 공학 개론
컴퓨터 공학 개론은 컴퓨터공학 전공생들이 가장 처음 배우게 되는 과목입니다. 말 그대로 개론으로서 컴퓨터과학의 전반적인 부분과 여러가지 일반 상식들이 많이 포함되어 전공생이 아니라 교양을 목적으로 보시기도 좋은 내용들입니다. 4차 산업 혁명이 진행되는 이 시대기에 꼭 개발자를 꿈꾸거나 컴퓨터과학에 관심이 있는 분이 아니더라도 보시면 좋을 내용들이라고 생각합니다 01. ICT 기술과 4차 산업혁명 ICT 기술은 정보기술을 의미하는 'IT'와 통신기술을 의미하는 'CT'의 합성어로, 정보 기기의 하드웨어 및 기기 운영, 정보 관리에 필요한 소프트웨어 기술을 말하며, 이 기술을 이용해서 정보를 수집하고 생산하고 가공하고 보존하고 전달하고 활용하는 모든 방법을 의미한다. 이러한 ICT 기술은 경제, 사회 전반에..
loading