아래 내용은 David J. Malan (데이비드 J. 말란) 교수님의
을 참고하였습니다
학습 목표
컴퓨터 과학이 무엇인지 정의하고, 컴퓨터가 정보를 표현하는 방법에 대해 설명할 수 있습니다.
핵심 단어
정보를 처리하는 과정
컴퓨터 과학은 문제 해결에 대한 학문입니다.
문제해결은 입력을 전달받아 출력을 만들어내는 과정입니다.
모든 정보는 컴퓨터 내에서 0 과 1 로 이루어집니다. → 글자, 영상, 사진을 0,1 만으로 처리하고 표현할 수 있습니다.
스위치 on off 개념을 사용합니다.
하나의 스위치는 1bit 이며 0, 1 을 표현할 수 있으며 8bit = 1byte 입니다.
트랜지스터 - 물리적으로 정보를 표현, 값을 저장하며 아주 작은 스위치이며 컴퓨터는 이를 수천, 수억개를 가지고 있습니다. - 물리적인 저장공간.
RAM - random access memory
비트
비트는 binary digit의 줄임말로 1비트는 0,1 이 두가지의 값만 저장할 수 있습니다. 컴퓨터 내부에서 물리적으로 표현될 때는, 켜고 끌 수 있는 스위치라 생각할 수 있습니다. 바이트(byte)는 8개의 비트가 모여 만들어 진것이며 256개의 서로 다른 바이트가 존재할 수 있습니다.(2^8=256이므로)
학습 목표
컴퓨터가 문자, 사진, 영상, 음악 등 다양한 정보를 처리하는 방식을 설명할 수 있습니다.
핵심 단어
ASCII code - 문자를 숫자로 표현하게 해주는 일종의 약속
이모티콘도 결국 숫자의 조합
😂 → 128514 (10진법) 의 정보를 전달하면 이런 이모티콘을 표현합니다
(숫자로 이모티콘을 표현한다는 사실이 매우 흥미로웠습니다)
이모지를 표현할 때 점으로 표현을 하게 되는데 이러한 점들은 3가지 색(red, green, blue) 의 조합으로 표현을 하며 소리를 표현할때에도 결국 0, 1로 표현을 하는 것 입니다. 이는 픽셀 단위로 각각의 픽셀은 세 가지 색을 서로 다른 비율로 조합하여 특정한 색을갖게되는 것입니다.
학습 목표
핵심 단어
알고리즘이란 일정 규칙들의 순차적인 나열을 뜻하며 이는 입력값을 출력값의 형태로 바꾸기 위해 어떻게 하면 효율적인 명령들이 수행되는지에 대한 것입니다.
말란교수님은 아주 두꺼운 전화번호부 책을 예시로 들었습니다.
만약 전화번호부가 100페이지에서 200페이지가 되었다고 가정해본다면 한장씩 넘기는 알고리즘은 100페이지를 넘겨야 하지만, 절반씩 줄어드는 두 번째 알고리즘은 단 1번만의 절차만 더 수행하면 됩니다. 왜냐하면 단 1번의 절차만드로 100페이지를 버릴 수 있기 때문입니다.
첫 번째 알고리즘은 한 장을 넘기는 규칙적인 순서적 나열이었고,
두 번째 알고리즘은 반을 줄이고, 다음 반을 줄이는 규칙의 순서적 나열이었습니다.
즉 효율적인 알고리즘은 검색 범위를 줄이는 것이 하나의 방법입니다