OS - How Computer Systems Work
1. 컴퓨터 시스템의 동작 컴퓨터 시스템은 사용자의 입력을 받아 데이터를 처리하고, 그 결과를 출력하는 과정을 반복합니다. 이 과정은 하드웨어와 소프트웨어가 협력하여 이루어지며, 모든 작업은 명령어를 통해 제어됩니다. 1.1 컴퓨터 시스템의 작업 처리 순서 컴퓨터가 데이터를 처리하는 일반적인 과정은 다음과 같습니다: 입력(Input) ...
1. 컴퓨터 시스템의 동작 컴퓨터 시스템은 사용자의 입력을 받아 데이터를 처리하고, 그 결과를 출력하는 과정을 반복합니다. 이 과정은 하드웨어와 소프트웨어가 협력하여 이루어지며, 모든 작업은 명령어를 통해 제어됩니다. 1.1 컴퓨터 시스템의 작업 처리 순서 컴퓨터가 데이터를 처리하는 일반적인 과정은 다음과 같습니다: 입력(Input) ...
1. 컴퓨터 하드웨어의 구성 컴퓨터 시스템은 데이터를 처리하는 물리적인 장치(하드웨어, Hardware)와 컴퓨터에게 작업을 수행하도록 명령하는 프로그램(소프트웨어, Software)로 구성됩니다. 1.1 컴퓨터 시스템의 개요 컴퓨터 시스템은 다음과 같은 두 가지 주요 요소로 나뉩니다. 하드웨어(Hardware) 데...
주제: 알고리즘 분석과 재귀 알고리즘 이해하기 이번 포스팅에서는 알고리즘을 분석하는 방법, 특히 시간 복잡도와 재귀(Recursion)에 대해 알아보겠습니다. 1. 알고리즘 분석이란? 알고리즘 분석이란 주어진 문제에 대해 알고리즘을 설계한 후, 해당 알고리즘이 얼마나 효율적인지 평가하는 과정입니다. 같은 문제를 해결하는 알고리즘이라 하더라도 ...
Java 프로그램 과제: 재귀적 이진 검색 (Binary Search) 문제 설명 오름차순으로 정렬된 정수 배열에서 사용자가 입력한 값을 이진검색으로 찾아 해당 값의 위치(인덱스)를 출력합니다. 이진검색은 재귀 알고리즘으로 작성해야 합니다. 요구사항 이진검색(Binary Search)을 재귀로 구현할 것 매개변수: 정수 배...
Java 프로그램 과제: 범위 내 정수 개수 출력 문제 설명 사용자가 원하는 개수의 정수값을 입력받아, 사용자가 원하는 범위 내의 정수값이 각각 몇 개인지 출력하는 Java 프로그램을 작성하세요. 입력 정수 개수 (n) 범위 (lb, ub): 하한(lb)와 상한(ub) n개의 정수 참고: n, lb, ub가 타당하지 않은 값으...
애자일 학습과 Pygame을 이용한 윷놀이 개발 후기 - 팀장으로서의 경험 1. 애자일 방법론과 폭포수 모델의 차이 애자일(Agile) 방법론은 소프트웨어 개발에서 변화에 빠르게 적응하고, 반복적으로 개선하며, 고객과 협력하는 것을 중요하게 생각하는 방식입니다. 애자일은 계획보다는 실행을 통해 배우는 것을 강조하며, 상황에 맞춰 바로 변경할 수 있...
Pygame을 이용해 윷놀이 게임 만들기 Step 0. 사전 준비사항(개발환경) macOS: Apple Silicon M2 Max, Sonoma 14.5.1 Git 설치: Homebrew 사용 권장 VS Code 설치: Python 코드 작성용 편집기 GitHub 계정: 코드 공유 및 백업을 위해 GitHub 계정이 필요합니다. ...
Utterance를 이용해 GitHub 블로그에 댓글 기능 추가하기 Step 0. 사전 준비사항(개발환경) VS Code 설치: 편집기 Github 가입: GitHub 계정 생성 필요 Utterance 앱 설치 Utterance는 GitHub Issues를 활용하여 댓글을 추가할 수 있는 오픈소스 프로젝트입니다. 이를 사용하면 Git...
Apple Silicon 환경에서 GitHub Pages를 이용해 Jekyll 기반의 블로그를 만드는 방법입니다. Step 0. 사전 준비사항(개발환경) macOS (Apple Silicon M2 Max) Sonoma 14.5.1 Git 설치 (Homebrew 사용 권장) VS Code 설치 Github 가입 기본 셸은 zsh ...