[혼공컴운] 1주

SSSOLLL·2025년 7월 2일
0

혼공컴운 14기

목록 보기
1/7

🔥 혼자 공부하는 컴퓨터 + 운영체제 6주 학습 계획 🔥

💡 1주차 (Chapter 01~03) 정리

Chapter 1. 컴퓨터 구조 시작하기

  • 1-1) 컴퓨터 구조를 알아야 하는 이유
    문제 발생시 스스로 빠른 진단과 해결이 가능한 개발자가 될 수 있다!
    프로그램 개발시 성능, 용량, 비용을 고려하는 개발자가 될 수 있다!

  • 1.2) 컴퓨터 구조의 큰 그림
    컴퓨터 구조의 두 갈래
    - 컴퓨터가 이해하는 정보 : 데이터, 명령어
    - 컴퓨터의 네가지 핵심 부품 : CPU, 메모리, 보조기억장치, 입출력장치 ( +시스템 버스를 통해 이 부품들이 정보를 주고받음)

Chapter 2.데이터

  • 2-1) 0과 1로 숫자를 표현하는 방법
    컴퓨터가 이해하는 가장 작은 정보 단위 : 비트 ( n비트는 2ⁿ가지 정보 표현 가능)
    8bit= 1byte -> 1000byte = 1kB -> 1000kB = 1MB -> 1000MB = 1GB ...
    이진수의 음수 표현 : 여러 방법(ex.2의 보수)들이 존재함
    2의 보수 : 모든 0과 1을 뒤집고 거기에 1을 더하기
    이진수로 변환하기 쉬운 십육진수도 많이 사용됨

  • 2-2) 0과 1로 문자를 표현하는 방법
    문자 집합의 문자를 인코딩하여 0과 1로 표현 가능
    인코딩 방식은 다양함. 기본적인 아스키코드, 한글을 완성형으로 인코딩할 수 있는 EUC-KR, 여러 나라의 문자를 광범위하게 표현할 수 있는 유니코드 등...

Chapter 3. 명령어

  • 3-1) 소스 코드와 명령어
    프로그래밍 언어로 만든 모든 소스코드는 컴퓨터 내부에서 명령어로 변환되어 실행됨
    고급 언어: 프로그램을 만들 때 사용하는 대부분의 프로그래밍 언어
    저급 언어: 기계어, 어셈블리어에 해당하는 언어로 컴퓨터가 직접 이해하고 실행할 수 있는 언어
    고급 언어가 저급언어로 변환되는 방식에는 컴파일 방식, 인터프리트 방식이 존재
    컴파일 언어: 컴파일러에 의해 소스 코드 전체가 저급언어로 변환되어 목적 코드가 생성됨 (ex.C)
    인터프리터 언어: 인터프리터에 의해 소스 코드가 한 줄 씩 실행됨 (ex.Python)
  • 3-2) 명령어의 구조
    명령어 : 연산코드(명령어가 수행할 연산) + 오퍼랜드(연산에 사용할 데이터 또는 그것이 저장된 위치)
    연산 코드 : 데이터 전송, 산술/논리 연산, 제어 흐름 변경, 입출력 제어의 네가지 유형으로 분류 가능
    오퍼랜드의 주소 지정 방식: 즉시 주소 / 직접 주소 / 간접 주소 / 레지스터 주소 / 레지스터 간접 주소

✅ 기본 숙제

  • p.51 확인 문제 3번

  • p.65 확인문제 3번

✅ 추가 숙제

  • p.100 스택과 큐의 개념 정리

스택과 큐 모두 컴퓨터 공학에서 중요한 개념으로 저장공간의 역할을 하는 자료구조의 일종이다.
둘 다 데이터를 저장하고 꺼내는 구조지만, 데이터를 꺼내는 순서에서 큰 차이가 있다

📌 스택과 큐 비교

항목스택 (Stack)큐 (Queue)
구조한쪽 끝양쪽 (넣는 쪽, 꺼내는 쪽)
순서후입선출 (LIFO)선입선출 (FIFO)
주요 연산push, pop, peekenqueue, dequeue, peek
사용 예시함수 호출, 되돌리기프린터 대기열, 프로세스 관리

0개의 댓글