목록분류 전체보기 (30)
데브로맨스
개념 병렬 처리란 여러 개의 작업을 동시에 실행하여서 효율을 높이는 것을 의미한다. 병렬 컴퓨터가 수행하는 전형적인 문제는, 완전히 순차적인 문제와 완전히 병렬 처리가 가능한 문제 사이의 어딘가에 있다. 일부 문제는 병렬로 해결할 수 있지만 다른 문제는 순차 방식으로 해결해야 한다. 순차 처리 문제가 일련의 개별 명령어로 나누어진다. 명령어들은 순차적으로 단일 프로세서에서 실행된다. 어떤 한순간에는 한 명령어만 실행할 수 있다. 병렬 처리 문제는 동시에 해결할 수 있는 개별적인 부분 문제로 나누어진다. 각 부분 문제는 일련의 명령어들로 세분화된다. 각 부분 문제의 명령어는 서로 다른 프로세서에서 동시에 실행된다. 전반적인 제어 / 조정 메커니즘이 사용된다. 병렬 처리를 사용하는 이유, 문제 해결에 드는 ..
컴퓨터에는 폴더들이 계층적으로 만들어져 있고 여기에 파일들이 들어 있다. 사람들이 사물을 정리하는 것과 마찬가지로 프로그램에서도 자료들을 정리하는 여러 가지 구조들이 있다. 이를 '자료구조'라고 한다. 일상 생활에서의 예 해당하는 자료 구조 물건을 쌓아놓는 것 스택 영화관 매표소의 줄 큐 할일 리스트 리스트 영어사전 사전, 탐색 구조 지도 그래프 조직도 트리
개념 설명 알고리즘은 인간보다는 컴퓨터를 이용하여 수행시키는 편이 훨씬 효율적이다. 컴퓨터를 이용하여 알고리즘을 수행하려면, 컴퓨터 안의 변수와 배열을 사용하여야 한다. 알고리즘을 이루고 있는 3가지의 기본 제어 구조가 있다. 순차 구조 선택 구조 반복 구조
문제를 풀기 위한 단계적인 절차 주어진 상태에서 문제를 해결하는 방법을 사람이나 컴퓨터가 이해할 수 있는 명령어로 정밀하게 기술한 것 문제 해결 과정에서 규칙성을 찾아 논리적인 순서로 설명하거나 표현하는 문제 해결 절차나 방법 컴퓨팅 사고의 궁극적인 목적은, 어떤 문제를 해결하는 알고리즘을 작성하여 컴퓨터로 자동화하는 것 특정한 일을 수행하는 명령어의 집합 모든 명령어들의 집합이 알고리즘이 되는 것은 아니다. 알고리즘이 되기 위한 조건을 만족하는 집합만이 알고리즘으로 정의된다. 조건 설명 입력 외부에서 제공되는 자료가 0개 이상 존재해야 한다. 출력 적어도 1개 이상의 결과가 출력되어야 한다. 명확성 (명백성) 수행 과정에서 각 명령어의 의미는 명확한 명령어로 구성되어야 한다. 수행 가능성 각 명령어는 ..
구성 요소 설명 1. 자료 수집 (Data Collection) - 문제의 이해와 토대로 자료를 모으는 단계 - 필요한 기초 데이터를 수집 - 데이터는 컴퓨터에 저장할 수 있는 형태 2. 자료 분석 (Data Analysis) - 주어진 자료를 분류하고 분석하는 단계 - 일반화 규칙을 찾고, 자료 동향을 파악 3. 자료 표현 (Data Representation) - 그래프, 차트, 단어, 이미지 등으로 표현하는 단계 - 추출된 정보를 효율적으로 정보를 도식화 및 시각화 4. 문제 분해 (Problem Decomposition) - 해결 가능한 수준의 작은 문제로 나누는 단계 5. 추상화 (Abstraction) - 문제의 복잡도를 줄이기 위해 기본 주요 개념의 정의를 설정 - 필요한 핵심 요소를 파악하..
"Binary Digit"의 약자 컴퓨터에서 정보를 저장하는 가장 기본적인 최소 단위이다. 컴퓨터는 이 간단한 비트들을 많이 모아서 복잡한 데이터를 나타낸다. n비트를 사용하면 0부터 (2의n승 - 1)까지의 정수를 나타낼 수 있다.
컴퓨터는 언제부터 0과 1을 사용했을까? 처음에는 10진수를 사용하였다. 10진수를 이용해서도 컴퓨터를 만들 수 있지만 왜 현대적인 컴퓨터는 2진수를 사용할까? 현대적인 컴퓨터가 2진수를 사용하는 이유 이유는 'HW'때문이다. 전자 공학의 관점에서는 10개의 전압 레벨보다 2개의 전압 레벨을 구별하는 회로를 설계하는 것이 훨씬 쉽다. 컴퓨터 내부에 10진수로 데이터를 저장하려면, 하나의 스위치가 10개의 상태를 가지고 있어야 하고 이들 상태를 신뢰성 있게 유지하는 게 상당히 어렵다. 예를 들어, 0V ~ 5V 전압 구간을 10개로 나누어서 표현할 수도 있지만, 이들 스위치는 잡음에 아주 민감할 것이다. 2진수 시스템은 모든 종류의 정보가 컴퓨터에 저장되는 방식에 핵심적인 역할을 한다. 모든 정보는 2진수..
디지털 통신을 위해서는 0과 1로 구분되는 신호를 사람이 이해할 수 있는 형태로 바꿔야만 한다. 점멸 횟수 의미 1 안녕? 2 잘 지내니? ... N 라면 위와 같은 표를 만들어 통신을 하게 되면, 복잡한 내용을 주고받기가 힘들다. 표가 무한히 길어질 수 있다. 이를 효과적으로 해결할 수 있는 방법이 바로, 수가 문자에 대응되게 하고, 이를 이진수로 표시하는 방법을 사용하기로 했다. 그리고 그 문자를 이어서 단어를 만들고, 단어를 조합해서 문장을 만드는 방법을 만들었다. 바로 이것이 '코드'이다. 코드라는 것은 단순히 수와 문자를 연결한다고 해서 만들어지는 것이 아니다. 코드는 통신을 위한 수단으로써 그 의미를 갖기 때문에 통신하는 당사자 간의 약속과 규칙이 있어야만 한다. 수와 문자를 1:1로 연결한 ..
전자회로에서 신호를 인식하는 방법으로 디지털의 개념을 적용하면 그것은 디지털 회로가 된다. 전자회로에 인가되는 가장 낮은 레벨과 가장 높은 레벨에 0과 1의 의미를 부여한다. 전자회로에 인가되는 전압의 중간 레벨에 의미를 두지 않는다. 0과 1은 각기 다른 전압 레벨로 구분만할 수 있으면 된다. 즉, 예를 들어 0V일 때(0)와 5V일 때(1)가 각기 다른 상태라는 것만 구분되면 된다. Active High : 높은 전압을 1로 인식하고, 낮은 전압을 0으로 인식하는 디지털 회로 Active Low : 높은 전압을 0으로 인식하고, 낮은 전압을 1로 인식하는 디지털 회로 디지털 회로에서는 인가되는 기준 전압에 따라 같은 전압 레벨이라도 부여되는 논리 레벨이 다르다 디지털 회로는 전압 레벨에 절대적인 법칙..
디지털은 어떤 존재를 확실히 구분되는 2개의 상태로 인식한다. (추상적인 개념) 디지털을 표현하는 가장 적합한 수체계가 이진법이다. (형상적인 개념) 디지털은 형상적인 개념이라기보다 추상적인 개념이다. 디지털을 이해하는 데 가장 중요한 열쇠는, 디지털은 구분할 수 있는 두 상태만 존재한다. 디지털은 두 상태의 중간 상태에는 의미를 부여하지 않는다. 디지털은 중간 상태를 인정하지 않기에, 2개의 상태를 인식하는데 있어 기준이 필요하다.