CS50스터디 (14) 썸네일형 리스트형 <컴퓨터 구조> 하드웨어의 한계 1. 메모리 한계 * RAM의 한계 - 컴퓨터는 RAM이라는 저장장치를 갖고 있다. 우리가 작성한 코드도 RAM에 저장되고 실행된다. - RAM은 당연히 유한한 크기만 저장할 수 있다. 필자의 RAM은 현재 12GB이므로 이 이상은 실행되지 못할 것이다. - 많은 이용자들이 이미 겪어 봤겠지만 한 컴퓨터로 동영상을 보면서 게임을 하는 등의 무거운 프로그램 여러개를 돌리면 흔히 말하는 렉이 걸리는 것을 알 수 있다. 이러한 것이 주로 RAM에서 오는 문제이다. * 부동 소수점 부정확성 - 1을 10으로 나누면 0.1이라는 것은 모두가 알 것이다. - 이 때 소수점이 아무리 길더라도 0.1 뒤는 0이 반복됨을 알 수 있다. - 이를 코드로 작성해보자. #include #include int main(void.. <컴퓨팅 사고> 알고리즘 * 알고리즘 - 지난 강의에서 컴퓨터가 이해할 수 있는 2진법으로 숫자뿐만아니라 글자나 색 등을 입력할 수 있음을 배웠다. 우리는 이러한 입력을 통해 원하는 출력(output)을 얻기를 원한다. 이 때 input을 output으로 만드는 일련의 과정을 알고리즘이라 한다. - 즉 알고리즘은 우리의 명령을 수행하는 규칙들을 나열한 것과 같다. 하지만 규칙을 어떻게 나열하느냐에 따라 다양한 알고리즘이 존재할 수 있다. 그리고 같은 결과가 나오더라도 얼마나 짧은 시간이 걸리는지, 얼마나 정확한지 그리고 얼마나 효율적인지도 다를 것이다. * 정확한 알고리즘 - 요즘은 보기 힘들지만 책으로 된 1,000페이지의 전화번호부가 있다고 가정하자. 여기서 윤해리를 찾는 작업을 해보자. - 우리는 첫페이지부터 한 장씩 넘겨.. <컴퓨터 구조> 정보의 표현 1. 문자의 표현 * 문자의 표현 지난 장에서 2진법으로 0,1 외에 더 큰 숫자를 표현하는 것을 보았다. 그렇다면 우리가 쓰고있는 문자는 어떻게 표현하는 것일까. 이 또한 숫자로 표현이 가능하다. 이 때 표준으로 정해진 부호가 바로 ASCII(아스키)코드이다. 미국정보교환표준부호(American Standard Code for Information Interchange)의 약자 답게 모든 영어가 숫자와 대응되어있다. * 아스키코드 각 알파벳에 대응되는 숫자는 아스키코드 표를 찾아보면 쉽게 알 수 있다. 아스키코드는 128개의 부호가 있다. 그 중 십진법으로 65부터 대문자A가 시작된다. 참고로 소문자a는 97이며, 숫자 1은 49이다. 특수 문자도 있으니 자세한 내용은 직접 찾아보는 것도 좋을 것 같다.. <컴퓨터 구조> 컴퓨터 과학과 2진법 1. 컴퓨터 과학 컴퓨터과학(Computer Science)는 CS라 불리며, 이는 단순히 문제 해결에 초점을 맞춘 하나의 학문이다. 여기서 문제 해결은 입력(input)을 전달받아서 출력(output)을 만들어내는 과정이다. 이 때 입력과 출력 사이에 존재하는 과정자체가 컴퓨터과학이다. 입력과 출력을 표현하기 위해서는 모두가 동의하는 표준이 필요한데, 그래서 알아보고자 하는 것이 컴퓨터의 표현 방법이다. 2. 2진법 2진법이라는 개념은 대부분의 사람들이 중학교 과정에서 이미 배웠기 때문에 알고 있다. 흔히 사용하는 10진법과 달리 모든 숫자를 0과 1로만 표현하는 진법이다. 컴퓨터는 이 0과 1로 우리가 아는 모든 숫자를 표현할 수 있을 뿐만아니라 문자부터 사진까지 게다가 영상과 소리도 표현할 수 있다.. 이전 1 2 다음