포스트

2024.08.26 프로그래머스 - CS 기초 - 1

CS 기초 - 1

컴퓨터 과학 (기초) 는 왜 공부해야 할까?

컴퓨터 과학이라는 것은 추상화 의 연속 적인 작용이 일어나는 분야 이다.

그래서 탑다운 방식으로 공부를 하게 되면, 코드나 알고리즘 까지는 우리가 공부할 수 있지만,

더 저수준의 지식들에 대해서는 알기 쉽지 않다.

추상화가 많이 된 분야의 지식은 즉각적으로 사용할 수 있는 부분 (쓸모있는) 이기 때문에

처음 공부를 할 때 접하게 되는 부분인 것이다.

  • 대화를 위해 공부해야 한다.
  • 컴퓨터 시스템의 응용에 있어 깊이 있는 이해를 도모할 수 있게 된다.
  • 문제해결 위주의 접근법을 체득할 수 있다.

CS 기초를 공부함에 있어 필요한 것

  • 호기심
  • 끈기
  • 기록하는 습관
  • 과학에 대한 흥미

디지털 정보 표현

디지털 정보는 이진수로 표현된다 (0과 1)

  • 0 : false 를 의미
  • 1 : true를 의미

  • bit
    • 컴퓨터에서 디지털 회로의 조합으로 정보를 표현할 때 이용되는 가장 작은 단위
    • 하나의 bit는 논리적으로 0과1중 하나의 값만 가질 수 있다.

    • 컴퓨터에서 표현하는 모든 정보는 bit를 모아서 이루어진다.
  • byte
    • 8개의 비트를 모아서 만든 단위
    • 1byte = 8bit
  • 16진수 (Hexadecimal)
    • 네게의 bit 를 모아 한 자리로 표현
    • 0~9, A~F 까지 표현 가능
  • 컴퓨터에서 데이터의 크기 단위
    • K (kilo)
      • 10^3 = 1000
      • 2^10 = 1024
    • M (Mega)
      • 10^6 = 1,000,000
      • 2 ^ 20 = 1,048,576
    • T, P, E, Z
    • m, u(micro), n, p ,f

1의 보수

  • 주어진 2진수의 모든 비트에 대하여 , 0은 1로, 1은 0으로 바꾼다.
  • 주어진수 x 에 대한 1 의 보수 = 2^n -x - 1
    • 0101 + 1010 = 1111

2의 보수

  • 주어진 2진수에 1의 보수를 취한 뒤, 거기에 1을 더한다.
  • 주어진 수 x에 대한 2의 보수 = 2^n - x

이진정수의 표현 범위

  • 한 바이트 (8bit) 를 이용해서 표현할수 있는 정수의 범위
    • 가장작은 수 : 1000 0000 = -128
    • 가장 큰 수 : 0111 1111 = 127
  • 네 바이트 (32bit( 를 이용해서 표현할 수 있는 정수의 범위
    • -2^31 ~ +2^31 까지
  • n 비트를 이용해서 표현할 수 있는 정수의 범위
    • -2^(n-1) ~ +2^(n-1)
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.