일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 자바
- 파이썬
- 자바스크립트
- 머신러닝
- rnn
- c언어
- CSS
- 디버깅
- JSP
- 혼공머신
- 데이터베이스
- ChatGPT
- 컴퓨터구조
- 순환신경망
- 컴퓨터비전
- 딥러닝
- 상속
- html/css
- 중학1-1
- JSP/Servlet
- 정보처리기사필기
- 중학수학
- 자바 실습
- 정보처리기사실기
- SQL
- 연습문제
- 데이터분석
- 자바스크립트심화
- 개발일기
- JDBC
- Today
- Total
목록알고리즘 및 자료 관리 (218)
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
개발자가 프로그래밍 언어로 작성한 소스 코드가 컴퓨터 내부에서 명령어가 되고 실행되는 과정을 학습해 볼 것이다. 컴퓨터를 작동시키는 정보가 명령어라면 C, C++, Java, Python과 같은 프로그래밍 언어로 만든 소스 코드는 무엇일까? 결론부터 말하면 모든 소스 코드는 컴퓨터 내부에서 명령어로 변환된다. 이번 절에서는 프로그래밍언어가 어떻게 명령어가 되어 실행되는지 알아보겠다. 고급 언어와 저급 언어우리가 프로그램을 만들 때 사용하는 프로그래밍 언어는 컴퓨터가 이해하는 언어가 아닌 사람이 이해하고 작성하기 쉽게 만들어진 언어이다. 컴퓨터는 이 언어를 이해하지 못한다. 이렇게 '사람을 위한 언어'를 고급 언어라고 한다.반대로 컴퓨터가 직접 이해하고 실행할 수 있는 언어를 저급 언어라고 한..
이어서 유니코드 인코딩 방식에 대해서 학습해보겠다. 유니코드와 UTF-8하지만 모든 한글을 표현할 수 없다는 한계가 있다. 이렇게 해서 등장한 것이 유니코드 문자 집합이다. 유니코드를 인코딩하는 방식도 이처럼 여러 가지가 있다. 유니코드가 얼마나 다양한 문자를 표현할 수 있는지 실습을 통해 확인해보기로 하자. 유니코드 실습 사이트 Unicode Blocks (◕‿◕) SYMBLUnicode web service for character search. Find, copy and paste your favorite characters: 😎 Emoji, ❤ Hearts, 💲 Currencies, → Arrows, ★ Stars and many others 🚩symbl.cc 여러 다양한 언어의..
이번에는 숫자가 아닌 문자에 대해서 공부해볼 것이다. 아스키 초드, 유니코드 등은 컴퓨터가 이해할 수 있는 0과 1로 다양한 문자를 표현하는 방법이다. 이번 절에서는 0과 1로 문자를 표현하는 방법, 즉 컴퓨터가 문자를 이해하고 표현하는 다양한 방법에 대해서 알아보겠다. 문자 집합과 인코딩 컴퓨터는 문자 집합에 속해 있는 문자를 이해할 수 있고, 반대로 문자 집합에 속해 있지 않은 문자는 이해할 수 없다. 문자 집합에 속한 문자라고 해서 컴퓨터가 그대로 이해할 수 있는 건 아니다. 문자를 0과 1로 변환해야 비로소 컴퓨터가 이해할 수 있다. 이러한 변환 과정을 문자 인코딩이라고 한다.0과 1로 이루어진 문자 코드를 사람이 이해할 수 있는 문자로 변환하는 과정은 문자 디코딩이라고 한다. 아..
이번 시간부터는 컴퓨터가 이해하는 정보의 단위를 학습하고, 2진법과 16진법을 통해 다양한 숫자를 표현하는 방법을 학습해 볼 것이다.정말 어떤 수업일지 기대가 된다. 컴퓨터는 0과 1로 모든 정보를 표현하고, 0과 0로 표현된 정보만을 이해할 수 있다. 그런데 어떻게 0보다 큰 숫자를 계산하고 표현할 수 있을까? 이에 대한 답을 찾기 위해 컴퓨터가 표현하는 정보 단위를 학습하고, 0과 1만으로 숫자를 표현하는 방법을 배워볼 것이다. 정보 단위비트는 전구에 빗대어 생각해보면 이해하기 쉽다. 1비트로는 0 또는 1, 두 가지 정보를 표현할 수 있다. 2비트로는 4개의 정보를, 3비트로는 8개의 정보를 표현할 수 있다. 1바이트를 1000개 묶은 단위를 1킬로바이트라고 한다. 이런 식으로 각각..
컴퓨터의 구조에 대해 강사님께서 직접 컴퓨터의 내부 구조를 보여주시며 설명하는 영상이 있어 여기 첨부해 본다. 컴퓨터의 4가지 핵심 부품 직접 보기 컴퓨터 부품 이해하기 맨 아래쪽에 메인 보드가 있고 오른쪽에 긴 판으로 되어 있는 부분이 메모리이다. 이 메모리에는 메모리를 여러 개 달 수 있다. 아래쪽에 보이는 이게 SSD이다. CPU는 가장 빠르게 움직이므로 발열이 되어 대부분 팬을 달아 열을 식힌다. 팬 밑에 대부분 CPU가 위치한다. USB 등으로 외부 장치를 연결하면 이 선을 따라서 내부 메인 보드로 연결되어 이 안에서 정보를 주고받는다. 컴퓨터를 통한 모든 부품 장치는 버스(버스는 너무 작아서 보여줄 수 없음)라는 통로를 통해 메인보드로 연결되어 CPU와 메모리와 상호..
이어서 컴퓨터 구조의 큰 그림에 대해서 학습해 본다. 보조기억장치 메모레는 실행되는 프로그램의 명령어와 데이터를 저장한다고 했지만 이러한 2가지 단점이 있다. 이러한 장치를 휘발성이다고 한다. 하드디스크, SSD, USB 메모리, DVD, CD-ROM과 같은 저장 장치가 보조기억장치의 일종이다. 컴퓨터의 전원을 꺼도 컴퓨터에 파일이 남아 있었던 이유는 우리가 파일을 보조기억장치에 저장했기 때문이다. 메모리가 현재 '실행되는' 프로그램을 저장한다면, 보조기억장치는 '보관할' 프로그램을 저장한다고 생각해도 좋다. 입출력장치 보조기억장치로 알고 있었던 하드디스크, USB 메모리, CD-ROM도 '컴퓨터 외부에 연결되어 컴퓨터 내부와 정보를 교환할 수 있는 장치'로 볼 수 있지 않을까? ..
다시 집중해서 컴퓨터 구조 공부를 시작해 볼 것이다. 벌써 2교시가 다 지났으니 남은 2시간 동안 최대한 집중해서 학습해야겠다.이번 절에서는 마치 지도를 그리듯 앞으로 학습해 나갈 컴퓨터 구조의 큰 그림을 그려보게 된다. 우리가 알아야 할 컴퓨터 구조 지식은 크게 2가지이다. 하나는 컴퓨터가 이해하는 정보이고, 다른 하나는 컴퓨터의 네 가지 핵심 부품이다. 컴퓨터가 이해하는 정보 먼저 컴퓨터가 무엇을 이해할 수 있는지부터 알아야 한다. 컴퓨터는 0과 1로 표현된 정보만을 이해한다. 그리고 이렇게 0과 1로 표현되는 정보에는 크게 두 종류가 있는데, 바로 데이터와 명령어이다. 컴퓨터가 이해하는 숫자, 문자, 이미지, 동영상과 같은 정적인 정보를 가리켜 데이터라고 한다. 명령어는 컴퓨터의..
컴퓨터 구조와 운영 체제에 관한 동영상 강의를 들으며 전체적인 개관을 학습하려고 한다. 강의를 듣다 보니 책에 있는 내용을 이야기하는 것 같아 이 강의와 본 강의를 합쳐서 공부하기로 했다. 대부분 개발자 지망생들은 프로그래밍 공부를 시작할 때 프로그래밍 언어부터 접한다. 나도 그랬던 것 같다. 개발 공부를 시작한 지 1년이 조금 넘은 지금에서야 컴퓨터 구조와 운영체제에 대해 공부할 필요성을 느꼈다. 프로그래밍 문법만큼 컴퓨터의 근간을 아는 것이 중요하다. 컴퓨터의 근간을 알게 되면 이 두 가지를 습득하게 된다. 문제 해결 프로그래밍 언어의 문법만 알고 있는 개발자들은 어찌 해야 할지 알지 못한다. 프로그래밍 강의나 책에 나오는 코드를 똑같이 따라 작성했는데도 코드가 제대로 작동하지 ..
먼저 공부하기에 앞서 이 책에 대한 오리엔테이션 학습을 진행해 보기로 했다. 이후에 컴퓨터 구조에 대한 1시간짜리 강의를 하나 더 듣고 본격적인 컴퓨터 사이언스 공부를 시작해 보기로 했다. 이 책은 누구를 위한 책인가? 개발자(지망생)에게 꼭 필요한 내용들을 선별한 책이다. 이 책의 관점에 대하여이 책은 전공서적이 제시하는 가장 일반적인 관점에서 서술한다. 입문자 입장에서 전공 서적을 기준으로, 일반적이고 대중적인 관점에서 서술한 책이다. 그리고 개발자에게 정말 필요한지를 기준으로 집필했다고 한다. 강의와 책을 완강한 후에 학습을 마치고어떤 공부가 될지 정말 기대가 된다. 전부터 컴퓨터 구조와 운영체제를 꼭 공부해보고 싶었는데 무척 어려울 것 같아 도전해보지 못했다. 어제 설교에서 이런 말씀을 하셨던 게..
마지막 단원을 학습해 보겠다. 이론 2 - 데이터 형태와 처리 입력과 출력 중간 단계에서 소프트웨어 명령에 따라 데이터를 처리한다. 소프트웨어의 처음과 중간, 끝에서 모두 데이터를 다룬다. 우리는 input과 output 데이터를 표현할 방법을 찾아야 한다. 데이터에는 어떤 종류가 있는지, 각각의 데이터 타입을 컴퓨터는 어떻게 인식하는지 알아보겠다. 컴퓨터가 효율적이고 에러 없이 정보를 받아들이기 위해서는 데이터 타입을 나누어 주는 것이 중요하다. 쉽게 떠올릴 수 있는 데이터는 숫자와 문자가 있고, 이미지도 데이터의 한 종류이다. 이미지가 여러 장 모인 것이 비디오이다. 영상 출력을 위해서는 스피커를 사운드 출력도 가능해야 한다. 사용자가 입력하고 볼 수 있는 데이터의 종류는 많다. 이러한 ..