[U] Week 1 Day 1

이동찬·2022년 9월 23일
0
post-thumbnail

1. 강의 복습 내용

(1-1) (Hidden class) Basic computer class for newbies

  1. 컴퓨터 OS (Operating System, 운영체제) : 우리의 프로그램이 동작할 수 있는 구동 환경
  2. 파일 시스템 : OS에서 파일을 저장하는 트리구조 저장 체계
  3. 터미널(CLI; Command Line Interface) ↔ GUI; Graphical User Interface

(1-2) Python Overview

  • 플랫폼 독립적 : OS에 상관없이 사용 가능
  • 인터프리터 언어 : 소스코드를 compile하지 않고 바로 실행할 수 있게 지원하는 프로그램 실행 방법
    → 소스코드를 기계어로 번역하는 과정 없이, 소스코드를 실행 시점에 해석하여 컴퓨터가 처리
  • 객체 지향 : 실행 순서가 아닌, 단위 모듈(객체) 중심으로 프로그램 작성
    → 하나의 객체 : 행동(method) + 속성(attribute)
  • 동적 타이핑 언어 (Dynamic Typing) : 프로그램 실행 시점에 데이터 타입 결정
  • PEP: Python Enhancement Proposal

(2-1) Variable & List

  • 변수는 값을 저장하는 장소로, 메모리 주소를 가지고 있음
    → 값이 변수(메모리 주소)에 할당되는 것
    → 선언되는 순간 메모리 특정영역에 물리적인 공간이 할당됨

  • 컴퓨터의 구조
    → 폰 노이만(John von Neumann) 아키텍쳐
    → 프로그램을 실행할 경우, 정보를 먼저 메모리에 저장시키고 CPU가 순차적으로 그 정보를 해석하고 계산하여 사용자에게 결과값 전달
    - (CPU ⇒ 제어 장치 + 산술 논리 장치)

  • 기본 자료형(primitive data type)
    - 데이터 유형마다 차지하는 메모리 공간의 크기가 다름
    - 1byte x 1024 = 1MB, 1MB x 1024 = 1GB

    1. integer (32bit = 4byte = 231-2^{31} ~ +231+2^{31} 표현 가능)
    2. float (64bit = 8byte)
    3. string
    4. boolean
  • 컴퓨터의 모든 값은 이진수로 변환되어 메모리에 저장
    단순한 실수값도 이진수로 변환하면 무한소수가 됨 (컴퓨터가 실수를 저장하기 어려운 이유)

    • 실수값 이진수 변환
      (ex) 68.625를 이진수 변환하면?
      1. 정수부(68)는 그대로 이진수 변환
      → 100 0100
      2. 2를 곱하는데, (1) 1로 딱 떨어지거나 (2) 첫번째 결과의 소수점과 동일할 때까지
      - 0.625 x 2 = 1.250 ... 1
      - 0.250 x 2 = 0.500 ... 0
      - 0.500 x 2 = 1.000 ... 1
      → 101 (위부터 순서대로 붙이기)
      (결과) 1000100.101

2. 피어 세션

  • 나이스투밋유 + 피어 세션
    • 팀원들과 서로 간단한 자기소개
    • 모더레이터 선정
    • 그라운드룰 정하기
    • (미션) 서로를 더 알아가기 위해, Slack에 TMI 잔뜩 들어간 자기소개 작성하기!

3. 회고

  • 오늘의 모더레이터 : 남규님
  • 운영진분들의 깔끔한 타운홀미팅 (오리엔테이션) 진행과 친절하고 상세한 안내, 정성을 듬뿍 담은 탄탄한 준비로 전반적인 부스트캠프의 윤곽을 그릴 수 있었음
  • 이미 부스트캠프를 경험한 멘토님들의 꿀팁과 조언들을 잊지 않도록 Notion에 기록함
  • 팀원들과의 첫 만남, 그리고 새로운 시작을 알리는 여러 공지 글과 동료 캠퍼분들의 자기소개들을 읽고 적응하느라 정신없이 하루가 지나감
profile
NLP ML Engineer, MLOps

0개의 댓글