SH's Devlog — SH's Devlog

전체 글

공부한 내용을 정리하는 개발 기록 블로그
CS(Computer Science)/Computer Architecture

[컴퓨터 구조] 3. 명령어

이번 포스트에서는 컴퓨터 구조의 명령어에 대해 정리하겠습니다.내용은 "혼자 공부하는 컴퓨터 구조+운영체제" 책을 참고하였습니다!소스 코드와 명령어[ 고급 언어와 저급 언어 ]고급 언어 -> 사람이 이해하고 작성하기 쉽게 만들어진 언어. 대부분의 프로그래밍 언어가 고급 언어에 속한다.저급 언어 -> 컴퓨터가 직접 이해하고 실행할 수 있는 언어.그래서 고급 언어로 작성된 소스 코드가 실행되려면 반드시 저급 언어, 즉 명령어로 반환되어야 한다. 저급 언어에는 두 가지 종류가 있다. 바로 기계어와 어셈블리어이다. 기계어 -> 0과 1의 명령어 비트로 이루어진 언어이다. 다시 말해 기계어는 0과 1로 이루어진 명령어의 모음이다. 아래 그림은 컴퓨터는 0과 1로 이루어진 이 기계어를 이해하고 실행한다. 다만, 기..

CS(Computer Science)/Computer Architecture

[컴퓨터 구조] 2. 데이터

0과 1로 숫자를 표현하는 방법[ 정보 단위 ]컴퓨터는 0과 1로 모든 정보를 표현하고 0과 1로 표현된 정보만을 이해할 수 있다.  비트(b) -> 0과 1을 나타내는 가장 작은 정보 단위. n비트는 2^n가지의 정보를 표현할 수 있다.바이트(B) -> 8개의 1비트를 묶은 단위. 2^8(256)개의 정보를 표현할 수 있다.킬로바이트(KB) -> 1000개의 1바이트를 묶은 단위.메가바이트(MB) -> 1000개의 킬로바이트를 묶은 단위.기가바이트(GB) -> 1000개의 메가바이트를 묶은 단위.테라바이트(TB) -> 1000개의 기가바이트를 묶은 단위. 비트(b)  [ 이진법 ]수학에서 0과 1만으로 모든 숫자를 표현하는 방법. 아래 그림과 같이 숫자가 1을 넘어가는 시점에 자리 올림을 하여 0과 1..

CS(Computer Science)/Computer Architecture

[컴퓨터 구조] 1. 컴퓨터 구조 Overview

컴퓨터 구조의 큰 그림 컴퓨터 구조는 컴퓨터가 이해하는 정보와 컴퓨터의 네 가지 핵심 부품으로 이루어져있다.[ 컴퓨터가 이해하는 정보 ]컴퓨터는 0과 1로 표현된 정보만을 이해하며, 0과 1로 표현되는 정보에는 크게 데이터와 명령어가 있다. 데이터 -> 컴퓨터가 이해하는 숫자, 문자, 이미지, 동영상과 같은 정적인 정보. 컴퓨터와 주고받는 정보나 컴퓨터에 저장된 정보를 말함. 명령어 -> 데이터를 움직이고 컴퓨터를 작동시키는 정보. 컴퓨터를 실질적으로 작동시키는 더 중요한 정보이며, 데이터는 명령어 없이는 아무것도 할 수 없는 정보 덩어리이다. 즉, 컴퓨터를 한마디로 표현하자면 "명령어를 처리하는 기계"이다. ex) 1과 2를 더하라. -> 1과 2는 데이터, '더하라 1과 2를'는 명령어.ex) '안녕..

Flutter/Basic

[Flutter] Mixin으로 StatefulWidget의 중복 코드 제거하기(feat. 무한 스크롤)

이번 포스트에서는 Mixin으로 StatefulWidget의 초기화 중복 코드를 제거하는 방법을 정리하겠습니다. StatefulWidget의 Controller 중복 코드 발생 StatefulWidget에서 스크롤 또는 애니메이션 작업 등의 애플리케이션의 UI 상태와 연결하고 관리해야 하는 작업을 수행해야 할 때 Controller를 이용합니다. Controller의 종류로는 ScrollController, AnimationController, TextEditingController 등이 존재합니다. 예를 들면, ScrollController는 스크롤 상태를 추적하고 제어하는 데 사용됩니다. 이를 통해 스크롤 위치를 제어하고 스크롤 이벤트를 받을 수 있으므로 무한 스크롤, 페이징 또는 스크롤 위치에 따른..

Flutter/State Management

[Flutter] 상태 관리 패키지 Riverpod 알아보기

이 글은 Riverpod 2.0 기준으로 작성되었습니다. 이번 포스트에서는 공식 문서를 보면서 Riverpod에 대해 알아보고, 왜 Riverpod을 사용해야 하는지에 대해 알아보겠습니다. 사용 방법은 간략하게만 다루었으며 Provider의 종류에 대한 정리는 패키지가 워낙 자주 바뀌기도 하고 공식 홈페이지에 워낙 잘 정리되어 있어서 참고하시면 좋을 것 같습니다. Flutter의 상태 관리 Flutter는 선언형 UI이며 각각의 상태를 포함하고 있는 위젯 트리를 기반으로 구성되기 때문에 상태 관리가 매우 중요합니다. 단일 위젯에서만 사용하는 상태일 경우는 상태 관리가 특별하게 관리되지 않아도 되지만, 앱의 여러 위젯에서 상태를 사용하는 경우에는 상태 관리가 특히 더 중요합니다. 이러한 여러 위젯에서 사용..

반응형
seunghwaan
SH's Devlog