본문 바로가기

전체 글185

캐시 메모리 속도가 빠른 장치와 느린 장치의 속도차이(병목현상)를 해결하는 메모리이다. CPU가 빠른 속도로 데이터를 주고 받을 수 있도록 캐시메모리는 CPU와 인접하게 위치한다. 참조지역성의 원리에 따라 주기억장치나 보조기억장치에서 자주 사용하는 해당 데이터 뿐만 아니라 옆 주소의 데이터를 미리 가져와 임시보관한다. 속도를 향상시키지만, 용량이 적고 비싸다. 참조 지역성의 원리 자주 사용되는 데이터에 대한 판단 기준이다. 시간 지역성 for나 while 같은 반복문에 사용하는 조건 변수처럼 한번 참조된 데이터는 잠시후 또 참조될 가능성이 높음 공간 지역성 A[0], A[1]과 같은 연속 접근 시, 참조된 데이터 근처에 있는 데이터가 잠시후 또 사용될 가능성이 높음 CPU안의 캐시메모리 CPU에는 캐시 메모리가 2~.. 2023. 12. 7.
비트마스킹 비트마스킹은 컴퓨터 과학에서 비트 연산자를 사용하여 특정 위치의 비트를 설정하거나 조작하는 기술이다 데이터를 압축하는데에 유용하며 효율적으로 데이터를 다룰 수 있다. 비트마스크의 주요 연산 비트 설정 OR(|) 연산자를 사용하여 특정 위치의 비트를 1로 설정한다. let num = 5; // 5의 이진 표현은 '101' let mask = 1 2023. 12. 6.
[프로그래머스] 숫자 변환하기 https://school.programmers.co.kr/learn/courses/30/lessons/154538# 문제요점 세 연산의 모든 조합 숫자가 y초과하면 더이상 연산할 필요없다 첫번째 풀이 bfs (성공) 최소 연산 횟수 => bfs 를 생각했다. y가 x로 변환하는 방법 x미만의 결과가 나오는 연산은 고려할 필요없다 최소연산 횟수 만에 찾기위해 num /3, num/2, num-n 순으로 찾았다. function solution(x, y, n) { const queue = [{num: y, count: 0}]; while(queue.length) { const {num, count} = queue.shift(); // shift는 O(n); // x가 되는 연산을 찾음 if (num ===.. 2023. 12. 6.
중앙처리장치(CPU) 작동 원리 CPU는 컴퓨터에서 가장 핵심적인 역할을 수행하는 부분. '인간의 두뇌'에 해당 크게 연산장치, 제어장치, 레지스터 3가지로 구성됨 연산 장치 연산에 필요한 데이터를 레지스터에서 가져오고, 연산 결과를 다시 레지스터로 보냄 산술연산과 논리연산 수행 (따라서 산술논리연산장치라고도 불림) 제어 장치 명령어를 순서대로 실행할 수 있도록 제어하는 장치 주기억장치에서 프로그램 명령어를 꺼내 해독하고, 그 결과에 따라 명령어 실행에 필요한 제어 신호를 기억장치, 연산장치, 입출력장치로 보냄 또한 이들 장치가 보낸 신호를 받아, 다음에 수행할 동작을 결정함 레지스터 고속 기억장치임 명령어 주소, 코드, 연산에 필요한 데이터, 연산 결과 등을 임시로 저장 용도에 따라 범용 레지스터와 특수목적 레지스터로 구분됨 중앙처리.. 2023. 12. 6.
컴퓨터의 구성 컴퓨터가 가지는 구성에 대해 알아보자 컴퓨터 시스템은 크게 하드웨어와 소프트웨어로 나누어진다. 하드웨어 : 컴퓨터를 구성하는 기계적 장치 소프트웨어 : 하드웨어의 동작을 지시하고 제어하는 명령어 집합 하드웨어 중앙처리장치(CPU) 기억장치 : RAM, HDD 입출력 장치 : 마우스, 프린터 소프트웨어 시스템 소프트웨어 : 운영체제, 컴파일러 응용 소프트웨어 : 워드프로세서, 스프레드시트 먼저 하드웨어부터 살펴보자 하드웨어는 중앙처리장치(CPU), 기억장치, 입출력장치로 구성되어 있다. 이들은 시스템 버스로 연결되어 있으며, 시스템 버스는 데이터와 명령 제어 신호를 각 장치로 실어나르는 역할을 한다. 중앙처리장치(CPU) 인간으로 따지면 두뇌에 해당하는 부분 주기억장치에서 프로그램 명령어와 데이터를 읽어와.. 2023. 12. 6.
[React] TTF, OTF 폰트 적용하기 처음 프로젝트를 하면서 기본폰트를 사용하였는데 OS 환경이나 브라우저에 따라 폰트가 다르게 적용되는 것을 알게되었다. 그래서 화면의 통일성을 위해 폰트를 적용하기로 했다. 폰트 다운받기 예전에 개인적으로 맘에 들어서 저장한 카카오폰트를 사용하였는데 그 외에 다양한 온라인 폰트가 있으니 맘에 드는 걸 otf, ttf 형식으로 다운받으면 된다. 프로젝트에 적용하기 React 애플리케이션에서 폰트를 설정하고 사용하는 다양한 방법 중 나는 @font-face를 사용하여 폰트파일을 로드하고 적용했다. 1. 폰트파일을 프로젝트에 추가하기 먼저 TTF 또는 OTF 형식의 폰트 파일을 src/public/font 폴더 안에 추가한다. src/ └── public/ └── fonts/ ├── KakaoBold.ttf ├.. 2023. 12. 5.