[HellCoders] Study 1일차

영아·2021년 8월 3일
0

HellCoders Study

목록 보기
1/9
post-thumbnail

🔥 오늘하루는?


코드스테이츠 수료후 1주일간 휴식을 취하고 그전에 스터디 그룹을 만들어서
오늘부터 첫 시작을 하게 되었다!!😝

이제 부트캠프도 끝나서 자발적으로 공부를하고 취업준비를 해야지 목표를 이룰 수 있을 것 같아서 오늘부터 알고리즘, cs, 기술면접 등 필요한 부분을 채우는 공부를 시작했다.

아직 실력이 많이 부족하고 모르는것이 많기때문에 걱정도 많이되고 취업은 할 수 있을지 정말로 막연하다 ㅎ...

그래도 지금까지 해온것처럼 꾸준히 한다면 원하는 목표를 이룰 수 있지 않을까? 생각해본다.

부트캠프 할 때는 블로그도 작성하지 못하고 주어진 과제만으로도 벅찼지만 ㅋ 이번에는 매일매일 블로그도 작성하고 계획적으로 해볼 생각이다.


✍🏻TIL : cs50

오늘의 강의 🧑‍💻

1: 컴퓨터와 컴퓨팅

Topic1: 컴퓨터를 구입할 때 무엇을 고려해야 할까요?

하드웨어 : 컴퓨터를 물리적으로 구성하는 요소이며, 컴퓨터에 연결되어 추가적인 기능을 수행함

컴퓨터의 하드웨어의 데이터 흐름

컴퓨터의 하드웨어는 크게 중앙처리장치, 기억장치, 입출력장치로 구성됩니다.

  • CPU : 중앙처리장치(Central Processing Unit, CPU)는 프로세서라고 불리기도 하는데, 입력장치에서 받은 명령을 실제로 처리, CPU가 1초에 얼마나 많은 연산을 할 수 있는지 속도를 측정하는 단위는 기가헤르츠(GHz)

  • 기억장치 : 주기억장치 & 보조기억장치로 나누어진다.
    주기억장치는 대표적으로 RAM이 있다. RAM은 기억된 정보를 읽어내기도 하고 다른정보를 기억시킬수 있는 메모리로서, 데이터를 일시적으로 저장하는데 사용되는 임의 접근 기억장치입니다.

  • 주기억장치인 RAM이 일시적으로 데이터를 저장하는 것과 달리, 하드드라이브(C:)는 영구적으로 데이터를 저장, 하드드라이브를 보조기억장치라고 한다. 하드드라이브는 보통 기가바이트,테라바이트 단위가 쓰인다. 이 외에 SSD(Solid State Drive)라는 보조기억장치가 있는데, 하드디스크와 달리 움직이는 부품없이 더 빠른 속도로 데이터를 읽고 쓰지만 가격이 더 비쌈

  • 플래시 드라이브는 USB 메모리 스틱 등 많은 이름으로 불린다. 플래시 드라이브도 SSD와 같이 움직이는 부품은 없다.

  • 입력장치는 마우스, 키보드, 스캐너 등이 있고, 출력장치는 모니터, 프린트 등이 있습니다.

  • 주변기기는 대표적으로는 키보드와 외장스피커 등이 있고, 주변기기는 보통 물리적 포트에 꽂혀 컴퓨터에 연결되며, 많이 알려진 포트로는 범용 직렬 버스(USB)포트가 있다.

대부분의 컴퓨터 주변기기들은 USB연결을 지원합니다.


Topic2: 컴퓨터는 수 많은 정보를 어떻게 기억할까요?

  • 기억장치 : 컴퓨터가 계산을 수행하기 위해서는 비트와 바이트형태로 기억장치에 저장할 수 있어야 한다. 컴퓨터가 나중에 데이터를 검색할 수 있도록 보관한다. 하지만 기억장치마다 서로 다른속도를 내고 저장할 수 있는 양에 차이가 있고, 서로 장단점을 가지고 있음.

  • CPU캐시, 하드디스크, RAM : CPU는 용량이 매우 큰 파일이나 데이터를 처리해야 하지만, 한번에 32 또는 64bit의 블록단위로 굉장히 적은 양의 데이터를 조작하고 계산한다. 그러나 중앙처리장치는 이러한 비트들을 빠른속도로 처리 할 수 있다. 반대로 하드디스크는 CPU보다 훨씬 방대한 양을 저장 할 수있다. 하드디스크는 엄창나게 방대한 양의 데이터를 기억장치에 저장할 수 있지만, 데이터를 읽고쓰는 시간은 많이 소모된다. 이 중간에 있는 임의 접근 기억장치, RAM은 하드디스크보다 훨씬 빠르게 데이터를 읽고 쓸 수 있어서 실행인 프로그램 또는 이미 열려있는 파일들이 더 빨리 접근될 수 있게 메모리를 저장하는 사용된다.

  • L1, L2, L3 캐시 : L1 캐시가 가장 작고 빠르고, 중앙처리장치가 빠르게 받아 처리 할 수 있는 몇 킬로바이트의 데이터만 저장
    L2 캐시는 L1보다는 조금 더 크지만, 조금더 느림, L3캐시는 보통 몇메가바이트를 저장 할 수 있어서 셋중 가장크지만 가장느다. 그러나 RAM보다는 빠르다.


Topic3: 컴퓨터는 자료를 어떻게 처리할까요?

  • 비트 : 이진숫자라는 뜻을 가진 'binary digti'의 줄임말, 0과 1, 두 가지 값만 가질 수 있는 측정 단위입니다.

  • 비트열 : 하나의 비트는 0과 1, 이 두 가지의 값만 저장할 수 있습니다. 비트 한 개는 많은 양의 데이터를 나타내기에 부족하다. 그래서 여러 숫자 조합을 컴퓨터에 나타내기 위해 비트열을 사용한다.
    바이트(byte)는 여덟 개의 비트가 모여 만들어진 것이다. 하나의 바이트에 여덟 개의 비트가 있고, 비트 하나는 0과 1로 표현될 수 있기때문에 2^8 = 256개의 서로 다른 바이트가 존재함.


Topic4: 컴퓨터가 숫자를 어떻게 셀까요?

  • 2진수 : 비트란 이진법의 최소단위로, 숫자 0,1로 신호를 나타내는 최소의 단위를 비트라 합니다. 비트를 가지고 수학적 연산을 위해, 컴퓨터는 0과 1만 사용하는 2진수라는 체계를 사용한다.

  • 수체계 : 우리가 사용하는 수체계는 10진수이다. 10진수 0부터 9까지 10개의 숫자를 이용하여 표현 할 수 있다. 10진수에서 각자리는 10의 거듭제곱을 나타낸다.


Topic5: 컴퓨터는 문자를 어떻게 표현할까요?

  • ASCII 코드 : ASCII(아스키)는 문자를 컴퓨터가 이해할 수 있는 이진 데이터(0 또는 1)로, 혹은 그 반대로 변환하는 표준 방법이다.

  • ASCII의 한계 : 기본 ASCII 코드 표는 7비트만 이용해서 모든 문자들을 나타냅니다. 이것은 ASCII 코드로 2^7개, 즉 128개의 문자를 나타낼 수 있다는 것을 의미, 확장 ASCII는 8번째 비트를 추가하여 총 256개의 문자를 나타낼 수 있다.
    하지만 8비트 ASCII 코드로도 나타낼 수 없는 문자들이 있다. 우리가 사용할 수 있는 문자 갯수는 256개보다 많기 때문에, 수학기호나 영어 이외의 다른언어들은 표준 ASII로는 표현 하기가 힘들다. 이러한 문자들이 포함될 수 있는 유니코드(Unicode)가 생기게 됨. 유니코드는 100만개 이상의 문자를 나타낼 수 있는 문자 인코딩의 표준이고, 유니코드의 첫 128개의 문자는 아스키도으 128개문자와 동일해서 호환이 가능하다.


1일차 끗!! 😝

profile
코딩 배우는 아이

0개의 댓글