분류 전체보기(636)
-
메모리 종류 - 1. 메모리란 무엇인가? (1-2. 메모리의 기본 개념)
📌 1-2. 메모리의 기본 개념컴퓨터에서 데이터를 저장하는 방식은 크게 휘발성(Volatile) 메모리와 비휘발성(Non-volatile) 메모리로 나뉩니다. 또한, 속도와 용량에 따른 메모리 계층 구조가 존재하며, 일반적으로 빠른 메모리는 용량이 적고 비싸며, 느린 메모리는 용량이 크고 저렴합니다.📂 1. 데이터 저장 방식에 따른 휘발성 vs 비휘발성컴퓨터에서 데이터를 저장하는 방식은 크게 전원이 꺼졌을 때 데이터가 유지되는지 여부에 따라 다음과 같이 구분됩니다.✅ 휘발성 메모리 (Volatile Memory) – 전원이 꺼지면 데이터가 사라짐휘발성 메모리는 데이터를 일시적으로 저장하는 역할을 합니다.RAM (Random Access Memory): 실행 중인 프로그램과 데이터를 저장캐시 메모리 (..
2025.02.23 -
메모리 종류 - 1. 메모리란 무엇인가? (1-1. 컴퓨터에서 메모리의 역할)
📌 1-1. 컴퓨터에서 메모리의 역할🖥️ 1. 컴퓨터에서 메모리가 하는 역할은 무엇일까?컴퓨터는 우리가 입력한 데이터를 처리하고 저장하는 장치입니다.하지만 CPU(중앙처리장치)만으로는 모든 작업을 수행할 수 없습니다.왜냐하면 CPU는 데이터를 기억하지 못하기 때문입니다.이때, 메모리가 중요한 역할을 합니다!메모리는 프로그램과 데이터를 저장하고, CPU가 필요한 정보를 빠르게 제공하는 역할을 합니다.✅ 컴퓨터의 기본적인 동작 과정프로그램 실행 버튼을 누르면 저장장치(HDD/SSD)에 있는 파일을 메모리(RAM)로 불러옵니다.CPU는 RAM에서 필요한 데이터를 가져와 연산을 수행합니다.연산 결과를 다시 메모리에 저장하고, 필요하면 저장장치(HDD/SSD)에도 기록합니다.컴퓨터를 끄면 RAM의 데이터는 사..
2025.02.23 -
C++ 초급 - 요약 정리
1. C++ 소개 및 개발 환경 설정1.1 C++ 개요 및 특징 C++의 탄생과 역사 C++의 개발 배경 (Bjarne Stroustrup, 1983년 발표) C와의 차이점 (객체지향 프로그래밍 지원) 실무에서의 활용 (게임 개발, 임베디드 시스템, 금융 시스템 등) C++의 주요 특징 객체지향 프로그래밍 (OOP: 캡슐화, 상속, 다형성) 메모리 관리 (동적 메모리 할당, 스마트 포인터) 표준 라이브러리 (STL: vector, map, set 등) 성능과 최적화 (컴파일 언어, 최적화 가능성) C와의 호환성 (C 언어 코드 실행 가능) 최신 기능 (템플릿, 람다, 모듈 등) 1.2 C++ 표준 버전 개요 C++ 표준 버전별..
2025.02.22 -
C++ 초급 - 추가 내용 (심화 학습) (4 - 비동기 프로그래밍 (std::thread, std::async))
📌 4. 비동기 프로그래밍 (std::thread, std::async)비동기 프로그래밍은 멀티스레딩(multi-threading)과 비동기 작업을 통해 CPU를 효율적으로 사용하는 방법이다.C++에서는 std::thread, std::async, std::mutex, std::future 등의 기능을 활용하여 멀티스레딩과 비동기 실행을 구현할 수 있다.📌 4.1 C++에서의 멀티스레딩 개념과 필요성🔹 (1) 멀티스레딩이란?멀티스레딩(Multi-threading)은 여러 개의 스레드를 사용하여 동시에 여러 작업을 수행하는 기법이다.이를 활용하면 CPU의 코어를 최대로 활용할 수 있어, 성능을 향상시킬 수 있다.💡 멀티스레딩이 필요한 이유멀티코어 CPU 활용 극대화 → 여러 코어에서 동시에 실행 가..
2025.02.22 -
C++ 초급 - 추가 내용 (심화 학습) (3 - 람다 함수 (lambda expressions))
📌 3. 람다 함수 (lambda expressions)람다 함수(lambda expressions)는 간결한 익명 함수(이름 없는 함수)를 정의하는 기능으로, 콜백 함수, 일회성 함수, 함수 객체의 대체 등 다양한 용도로 활용된다.📌 3.1 람다 함수 기본 문법 ([](){})🔹 (1) 람다 함수의 기본 구조C++의 람다 함수는 다음과 같은 형식으로 작성된다.[캡처 리스트] (매개변수) -> 반환 타입 { 함수 본문 };💡 예제: 기본적인 람다 함수#include int main() { auto greet = []() { std::cout 🔹 출력 결과Hello, Lambda!💡 설명[] → 캡처 리스트 (변수를 람다 함수 내부에서 사용하도록 설정)() → 매개변수 목록{} → 함수 본..
2025.02.22 -
C++ 초급 - 추가 내용 (심화 학습) (2 - 파일 입출력 (fstream))
📌 2. 파일 입출력 (fstream)C++에서는 파일을 읽고 쓰기 위해 fstream 라이브러리를 사용한다.이를 활용하면 텍스트 파일과 바이너리 파일을 다룰 수 있으며, 데이터 저장 및 로깅이 가능하다.📌 2.1 파일 스트림 (std::ifstream, std::ofstream, std::fstream) 기본 사용법C++의 파일 입출력은 세 가지 주요 클래스를 사용한다.파일 스트림클래스 설명std::ifstream파일을 읽기 모드로 염 (ifstream = input file stream)std::ofstream파일을 쓰기 모드로 염 (ofstream = output file stream)std::fstream읽기/쓰기 모두 가능 (fstream = file stream)💡 예제: 파일 스트림 기..
2025.02.22