본문 바로가기
Technical/Organize

[Technical Organize] 기술면접_요약정리

by song.ift 2022. 12. 28.

래리페이지

구글의 공동 창업자, 현 최고 경영자

세계 최고의 검색엔진 구글을 개발

이제 겨우 44살이라는 젊은 나이임에도

이미 세상에 막대한 영향을 끼쳤고

앞으로도 더 많은 부분에 혁신을 일으킬 수 있는 잠재력을 가지고 있다.

젊은 시절 구글을 설립할때의 불가능할 것 같던 목표였던

세상의 모든 웹사이트를 백업한다는 목표를 결국 이뤄냈다.

이와 같은 실천력과 집념을 본받고 싶다.

 

 

자료구조ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

연결리스트

배열보다 데이터에 참조하는 속도가 느림, 데이터 추가, 삭제 간편, 메모리 낭비가 없음

 

이중연결리스트

이전 노드와 다음 노드의 주소를 모두 저장

 

원형연결리스트

마지막 노드의 링크가 첫번째 노드의 주소를 가르킴

 

스택 (stack)

삽입(push)과 삭제(pop)가 리스트의 한쪽 끝(top)에서만 수행되는 선형 자료구조 (후입선출)

중간 데이터에 접근, 삽입, 삭제를 허용하지 않음

DFS 깊이우선탐색, 되돌리기, 괄호검사, 함수 호출시 복귀주소 기억 등에 사용

배열로 구현할 시 크기 제한이 있어 overflow 발생 가능

 

큐 (queue)

선입 선출의 선형 자료구조

전단(front)에서 삭제(get), 후단(rear)에서 삽입(put)이 일어남

선형 큐는 메모리 낭비 문제가 있음, 삭제시 데이터 이동을 해야 문제 해결

원형 큐를 사용 하면 선형 큐의 문제 해결. 공백과 포화상태를 구분하기 위해 한칸을 비워둠

BFS 너비우선탐색에 사용

 

덱(dequeue)

큐의 전,후단 모두에서 삽입 삭제가 가능한 형태, 보통 큐를 상속해서 구현

 

우선순위 큐 – 힙(heap)

완전 이진트리의 구조, 노드의 키 값이 모든 자손 노드의 키 값보다 큼(MAX) 또는 작음(MIN)

삽입 연산 : 트리의 마지막에 키 값을 삽입 후, 부모 노드와 비교해가며 위로 up

삭제 연산 : 루트 노드를 삭제하고, 가장 밑에 있는 노드를 루트로 위치시켜, 자식 노드와 비교해 가며 아래로 down

 

 

트리(tree)

계층적 관계에 있는 원소들을 나타내기에 편리한 자료구조

부모-자식 관계의 노드들로 구성

루트 : 부모가 없는 노드

단말 노드(리프노드) : 자식이 없는 노드

비단말 노드(내부노드) : 자식을 가지는 노드

서브트리 : 하나의 노드와 그 자손들

레벨 : 트리의 각 층의 번호

높이 : 트리의 최대 레벨

차수 : 노드의 자식 노드 수 (이진트리는 차수가 최대 2)

 

이진트리(binary tree)

각 노드에 최대 2개의 자식 노드 존재

각 자식 노드에는 순서가 있음(왼쪽, 오른쪽)

노드의 개수가 n 이면 간선의 개수 n-1

높이가 h면, 최소 h개부터 최대 2h-1개의 노드를 가짐

노드의 개수가 n 이면, 높이는 최소 log(n+1)부터 최대 n

 

순회 : 전위(VLR), 중위 (LVR), 후위(LRV)

포화 이진트리 : 각 레벨에 노드가 꽉 차 있는 이진 트리, 노드의 개수 2^h – 1

완전 이진트리 : h-1 레벨 까지는 꽉 차있고, 마지막에는 왼쪽부터 채워진 트리

 

이진 탐색 트리 (BST : Binary Search Tree)

키 값의 크기 : 왼쪽 < 루트 < 오른쪽

탐색 연산 : 루트부터 찾으려는 키 값과 크기 비교를 해 서브트리로 이동하며 탐색

삽입 연산 : 탐색연산을 먼저 수행하고, 탐색이 실패한 위치에 해당 키 값 삽입

삭제 연산 : 탐색연산을 먼저 수행하고, 차수에 따라 적절히 삭제한다.

차수가 0일 경우, 해당 노드 삭제

차수가 1일 경우, 노드를 삭제하고 서브트리를 삭제한 자리에 붙인다.

차수가 2일 경우, 삭제할 노드를 대체할 가장 비슷한 노드를 찾는다. 왼쪽 서브트리의 가장 큰 값이나, 오른쪽 서브트리의 가장 작은 값을 삭제할 노드의 위치로 이동시킨다.

탐색 성능 : 트리의 높이. (균형적일 경우 log n, 치우칠 경우 n)

 

AVL 트리

모든 노드의 서브트리 높이 차이(균형인수)가 1 이하인 트리

균형인수 = 왼쪽 서브트리 높이 – 오른쪽 서브트리 높이

탐색 효율을 높이기 위해 회전을 통한 균형 회복

 

 

 

그래프

연결되어 있는 객체 간의 관계를 표현하는 자료구조

정점 + 간선

인접행렬이나 인접리스트로 표현

신장트리 : 그래프 내의 모든 정점을 포함하는 트리, 모든 정점들이 연결, 사이클이 있어서는 안됨, n개의 정점 n-1개의 간선

최소비용신장트리 : 사용된 간선들의 가중치 합이 최소인 신장트리

 

 

알고리즘ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

선택정렬

가장 작은 데이터를 찾아 가장 앞의 데이터와 교환해 나가는 방식 O(n^2)

코드 구현이 쉬우나 상당히 느린 정렬 알고리즘

 

버블정렬

서로 이웃한 데이터들을 비교하며 가장 큰 데이터를 가장 뒤로 보내는 정렬 방식

잦은 스와핑 필요, 이미 정렬된 레코드의 경우 O(N)의 수행 시간, 최악의 경우 O(n^2)

 

삽입정렬

아직 정렬되지 않은 임의의 데이터를 이미 정렬된 부분의 적절한 위치에 삽입해 가며 정렬

최고 O(n) 최악의 경우 O(n^2)

 

퀵정렬

기준 키를 기준으로 작은 값은 앞으로, 큰 값은 뒤로 가도록 분리해가며 정렬하는 방법

비교를 통한 정렬 중엔 가장 빠름

맨 앞의 키를 기준키로 하고, 왼쪽 끝 키 값과 오른쪽 끝 키 값을 비교해 교환한다. 위치가 교차되는 시점에서, 기준키와 작은 키를 교환하고 기준키를 중심으로 양분한다. 양분한 데이터들로 위와 같은 과정을 계속 반복한다.

최고 O(n log n), 균형이 좋을 땐 O(n log n), 최악 (N^2)

 

합병정렬

작은 구간들을 정렬된 상태로 합병해 나가면서, 구간의 크기를 키워가며 정렬

합병할 두 구간은 일종의 스택, 맨 앞에 있는 최소값들을 비교해가며 작은 값을 pop해가며 합병

재귀적으로 나누는 부분과 합치는 부분으로 나뉘어져 있음

항상 O(n log n) 보장, 두 개의 배열을 사용해야 하므로 메모리 공간 더 많이 사용, 퀵 정렬보다 빠른 면이 있다.

 

힙정렬

모든 원소를 힙에 집어넣었다가 빼는 방식으로 정렬, 항상 O(n log n)

 

셸정렬

삽입 정렬의 단점인 원소를 뒤로 옮기는 과정을 줄이기 위해, 특정한 거리씩 떨어진 원소들끼리 삽입 정렬을 하고, 그 거리를 차츰 줄여 나가는 삽입 정렬

 

기수정렬

정수의 자리수 숫자를 기준으로 큐에 넣어서 순서대로 꺼내는 방식으로 정렬의 기준이 되는 자리수를 바꿔가며 정렬, 낮은 자리수부터 실행

 

해싱

키 값을 이용해 테이블 상의 자료의 주소를 찾거나 저장하는 방법

충돌을 해결하기 위해, 체이닝, 선형탐사, 제곱탐사, 이중해싱, 재해싱 기법을 사용

체이닝 : 해시테이블에 연결리스트를 삽입하여 충돌이 일어난 자료 저장

선형 탐사 : 충돌 발생시, 정해진 칸 수 다음에 저장

제곱 탐사: 선형 탐사에서 정해진 칸 수를 제곱으로 늘림

이중 해싱 : 2개의 해시함수를 사용, 첫번째 해시 함수는 최초의 주소, 두번째 해시함수는 탐사의 이동폭 계산

재해싱 : 해시테이블을 늘리고 늘어난 해시 테이블의 크기에 맞춰 자료를 재 배열

좋은 해시 함수 : 레코드를 골고루 분포 시켜 충돌을 최소화

 

분할정복

큰 문제를 작은 문제로 분할해서 해결하는 방식(작은 문제와 큰 문제가 동일해야함)

주로 재귀를 사용해서 해결 (팩토리얼, 피보나치 등등)

 

DFS (깊이우선탐색 Depth-First Search) (백트래킹)

트리나 그래프를 탐색하는 방법, 인접한 노드들을 재귀적으로 탐색해가고 끝까지 탐색하면 다시 위로 돌아와 다음을 탐색, 한 방향으로 깊이 탐색해 나가는 형태

스택을 사용하여 구현

 

BFS(너비우선탐색 Breadth First search)

주변에 있는 노드들부터 차례차례 탐색하고 다음 단계로 확장해 나가는 형태

큐를 사용하여 구현

 

DP(Dynamic Programming)

복잡한 문제를 간단한 문제로 나눠 푸는 방법, 문제를 여러 하위 문제로 나눠푼 다음, 그 결과를 결합해 문제를 해결

분할정복 + memorization

한번 계산한 연산의 값을 저장해놓고 다시 계산하지 않고 이를 재사용

 

Brute-Force

모든 경우를 마구잡이로 전부 해보는 알고리즘

 

탐욕알고리즘

현 단계에서 갈 수 있는 다음 단계들 중에서 최적을 수행하는 방법

전체 문제 관점에서는 최적이 아닐 수도 있음

 

크루스칼 알고리즘

모든 간선들을 오름차순으로 정렬

적은 비용의 간선부터 하나씩 그린다.

이때 사이클이 생기지 않도록 한다.

 

프림알고리즘

시작점에 연결된 간선들 중 가장 작은 가중치를 선택(모든 간선 고려X)

 

다익스트라

주어진 정점에서 다른 모든 정점으로 가는 최소 비용을 찾는 알고리즘

시작점으로부터 인접한 정점을 통해 다른 정점으로 가는 비용을 계산하고 작은 비용이 나올때마다 갱신

 

카프-라빈 알고리즘

원하는 값이나 패턴을 탐색하기 위해 해시 값을 이용해 한칸씩 이동하며 탐색하는 알고리즘

해시 값이 일치하면 단순 비교를 통해 맞는지 검증

 

 

운영체제ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

스와핑

여러 개의 프로그램을 하나의 메모리에서 실행될 수 있도록 하기 위해 사용하는 기법,

실행 도중 스왑 아웃되어 보조기억장치로 옮겨졌다가 실행시 스왑 인이 되는 것을 반복

 

버퍼링

주기억 장치의 일부를 선입선출의 버퍼로 이용해 하나의 프로그램에서 CPU 연산과 입출력 연산을 중첩시켜 처리할 수 있게 하는 방식, CPU의 효율을 높임

 

스풀링

버퍼링은 주기억 장치를 사용해 공간이 작음, 스풀링은 보조기억장치를 이용하는 방식

버퍼링과 스풀링 모두 CPU와 입출력 장치간의 속도차를 보완

 

 

프로세스

실행중인 프로그램, 실행되기 위해 주기억장치에 들어간 프로그램

프로그램은 수동적, 프로세스는 능동적

 

PCB(프로세스 제어 블록)

프로세스에 대한 정보를 저장하는 테이블

프로세스의 상태, 프로그램 카운터 값(다음 명령 주소), 스케줄링 정보, 주기억장치 정보

 

프로세스의 상태

New : 프로세스가 주기억장치의 작업 큐에 생성

Ready : 프로세스가 실행되기 위해 준비 큐에 탑재, cpu의 할당을 기다림

Running : 프로세스가 실행 중인 상태, cpu에 할당된 상태

Wait : 어떤 사건(입출력명령)이 일어나기를 기다리는 대기, 장치큐에 탑재된 상태

Terminated : 프로세스가 종료된 상태, 할당된 cpu 반납

 

인터럽트

하드웨어에서 cpu로 즉각 처리를 필요로 하는 작업에 대한 신호를 보내는 것

 

문맥전환(context switch)

이전 작업의 프로세스 상태를 저장하고 새로 처리하고자하는 프로세스의 상태를 불러오는것

 

다중 처리기 시스템(멀티 프로세서 시스템)

여러 개의 cpu를 사용하는 시스템, 병렬 시스템

처리량 증가, 규모의 경제(전력을 나눠씀, 자원 공유), 신뢰성 증가(하나가 고장나도됨)

비대칭 ASMP : 마스터가 존재, 마스터에 의해 제어,관리

대칭 SMP: 모든 처리기가 평등, 처리기 친화성, 부하 균등화를 통한 효율적 처리

 

장기 스케줄러(long term scheduler, 작업 스케줄러)

디스크 내의 작업을 어떤 순서로 메모리로 가져올지를 결정

 

 

단기 스케줄러(short term scheduler 프로세스 스케줄러, cpu 스케줄러)

메모리에 있는 프로세스 중 하나를 선택해 프로세서를 할당

 

중기 스케줄러(medium term scheduler)

메모리에서 cpu를 쓰기 위해 경쟁하고 있는 프로세스를 제거하고

다시 메모리로 불러와 실행을 재개하는 것(스와핑) 멀티프로세싱의 정도를 조절

 

스케줄링시 고려할 사항

Cpu utilization : cpu 이용율, 노는 시간이 없어야함

Throughput : 처리량, 단위 시간당 완료된 프로세스의 개수

Turnaround time : 총 처리 시간, 프로세스가 준비큐에 도착한 시간부터 완료까지 걸리는 시간

Waiting time : 프로세스의 대기 시간

Response time : 프로세스가 최초 응답까지 걸리는 시간

 

선점 스케줄링

특정 프로세스가 CPU를 효율적으로 사용할 수 없는 시점에 다른 프로세스를 실행하는 방식

 

비선점 스케줄링

실행중인 프로세스의 작업이 끝나야 다른 프로세스를 실행 시킬 수 있는 방식

 

FCFS 스케줄링

선입선출 방식의 스케줄링

 

우선순위 스케줄링

높은 우선순위의 프로세스부터 실행, 같을 경우에는 FCFS 방법 적용

우선순위가 매우 낮으면 오랜 시간동안 실행되지 않을 수 있다.

에이징 : 일정 시간동안 실행되지 않으면 우선순위를 높이는 방법

 

SJF스케줄링 (shortest jop fisrt)

실행시간이 짧은 프로세스부터 CPU에 할당, 실행시간은 근사치를 예상해야함

기아 현상(starvation) : 실행 시간이 긴 프로세스는 cpu의 할당을 받지 못하는 현상

 

SRT 스케줄링(shortest remaining time)

Sjf스케줄링에 선점방식을 도입한 스케줄링

 

라운드 로빈 스케줄링

여러 프로세스들이 정해진 시간(time quantum)동안 돌아가면서 실행

시간 할당량이 크면, FCFS와 같아짐, 작으면 문맥전환이 자주 발생해 시간낭비, 적절히 조절

스레드

프로세스의 실행 부분 담당(실행의 기본 단위), 자원할당과 무관, cpu 사용의 기본 단위

CPU스케줄링 단위로만 쓰는 경량 프로세스, 문맥교환이 없어 프로세스에 비해 부담이 적음

스레드간 데이터 공유

커널 스레드 : 운영체제를 관리하고 지원하는 스레드

사용자 스레드 : 커널 없이 사용자 수준에서 관리되는 스레드

 

스레드 풀

스레드를 제한된 개수만큼 미리 생성해 두고 작업을 수행하는 것

 

커널

자원을 관리하는 모듈의 집합, 운영체제 기능의 핵심적인 부분을 모아놓은 부분, 메모리 관리 및 스케줄링 인터럽트 처리 등의 기능 담당

 

가상메모리

실행될 프로그램이 주기억 장치보다 크거나 여러 개인 경우, 당장 실행에 필요한 부분만 주기억장치에 저장하고, 나머지는 보조기억장치에 두고 동작하도록 하는 것

 

페이지

프로그램을 일정한 크기로 나눌 때의 단위, 페이지 단위로 주기억장치에 올리며 동작하는 것을 페이징 이라고 한다.

페이징 : 가상 메모리를 구현하는 한 방법으로, 가상 메모리 공간 페이지로 나누어 관리하는 방법

페이지 교체 : 새로운 페이지를 테이블에 저장하기 위해, 기존의 페이지를 삭제하는 것

가장 오래된 페이지를 지우거나, 오래 사용안한 페이지, 사용빈도가 낮은 페이지를 삭제

 

세그먼테이션

다양한 크기로 프로그램을 분할

세그먼트 : 분할된 프로그램

 

임계 영역(critical section)

멀티 프로세스의 각 프로세스가 동시에 접근 가능한 프로그램 코드 영역

스핀락 : 먼저 선점한 스레드가 있을 때, 진입가능할때 까지 무한루프를 돌며 재시도하는 방식,

자원 낭비 가능성, cpu 점유율이 높아짐

문제 해결 방안

상호배제 : 한번에 한 프로세스만 진입을 허용

진행 : 임계영역에서 실행중이지 않은 프로세스들만 임계영역으로 진입할 프로세스로 결정하는데 참여할 수 있고, 이 선택은 무기한 연기될 수 없다.

한정된 대기 : 프로세스가 일정 횟수 안에 임계영역에 진입할 수 있게 보장해야한다.

 

뮤텍스(mutual exclustion)

공유 리소스에 대한 접근을 조율하기 위해 사용됨, lock과 unlock 값을 가짐

동시에 하나의 스레드에 대해서만 작업이 가능. 자동차 키가 하나만 있는 상황

 

세마포어

공유 자원에 제한된 개수의 프로세스,스레드만 접근할 수 있도록 하는 것

접근할 수 있는 프로세스, 스레드 개수를 정하고, 프로세스, 스레드 카운트 값을 가지는 객체

창구가 여러 개인 은행과 비슷

p연산 : 자원을 사용하기 위한 연산

v연산 : 자원 방출시 사용

생산자/소비자 문제 : 쓰는 동안에 읽기 X, 읽는 동안에 쓰기X

읽기/쓰기 문제 : 읽기는 동시허용, 읽기와 쓰기는 동시 접근 X, 쓰기도 동시허용X

단점 : 바쁜대기를 요구함(임계영역에 진입하려는 프로세스의 코드를 반복실행), 스핀락

 

뮤텍스는 카운트가 1인 바이너리 세마포어로 볼 수 있음, 뮤텍스는 락을 소유한 스레드가 직접 해제해야 하지만, 세마포어는 외부에서 조정 가능, 세마포어는 공유 자원을 프로세스 단위에서 접근하는 것을 관리, 뮤텍스는 스레드 단위에서 접근하는 것을 관리하기 위해 사용

 

교착상태(Dead Lock)

두 개 이상의 프로세스가 서로 다른 프로세스가 가지고 있는 자원을 기다리느라 무한히 대기하는 상태

발생 조건

상호배제 : 자원은 한번에 한 프로세스만 사용 가능

점유 대기 :  최소한 하나의 자원을 점유하고 있으면서 다른 프로세스에 할당되어 사용하고 있는 자원을 추가로 점유하기 위해 대기하는 프로세스가 있어야함

비선점 : 다른 프로세스에 할당된 자원은 사용이 끝날 때까지 강제로 뺏을 수 없어야 함

순환대기 : pn-1은 pn이 점유한 자원을 대기해야함

 

해결 방안

예방

상호대기 부정 : 여러 개의 프로세스가 공유 자원 사용 가능하게 함

점유대기 부정 : 프로세스가 실행되기 전 필요한 모든 자원 할당

비선점 부정 : 자원을 점유중인 프로세스가 다른 자원을 요구할 때, 현재 점유중인 자원을 반납하게 하고 새로 요구하는 자원을 기다리게함

순환대기 부정 : 자원에 고유한 번호를 할당하고, 번호 순서대로 자원을 요구하게 함

 

회피 : 데드락이 발생할 것 같으면 회피, 은행원 알고리즘- 안전여부를 체크해서 안전하면 자원할당 아니면 거부

탐지 : 자원할당 그래프 알고리즘을 통해, 데드락 탐지 후 해결

회복 : 데드락 상태의 프로세스를 종료하거나 할당된 자원을 해제

무시

 

Fork와 thread의 차이

둘다 스케줄링의 단위가 됨.

Fork는 부모 프로세스를 그대로 복사해서 새로운 프로세스를 만들어냄

프로세스간에는 자원을 공유하지 못한다.

쓰레드는 프로세스의 코드만 복사하고 나머지는 공유함

Fork가 시간도 오래걸리고 자원 소모도 많음

즉 thread는 fork의 비효율성을 극복하기 위해 사용됨

 

 

객체지향ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

객체지향

프로그래밍의 대상이 되는 세상의 사물과 현상 모두를 객체로 담아서 표현하는 프로그래밍 방법론, 프로그램에 필요한 개념들을 모두 모듈화, 객체화하고, 이 객체들 간 소통하는 구조로 개발, 직관적이고 쉽게 프로그래밍 할 수 있는 방법

데이터를 담은 Property와 기능인 method를 가진 object와 연관된 프로그래밍

 

추상화

공통의 속성이나 기능을 묶어 이름 붙이는 것

객체지향적 관점에서 클래스를 정의하는 것

다른 객체들과 구분되는 핵심적인 특징에만 집중

 

캡슐화

실제 구현되는 부분을 외부에 드러내지 않는 것

데이터 구조와 다르는 방법을 결합시켜 묶는 것

변수와 함수를 하나의 클래스로 묶는 것

 

은닉화

외부에서 클래스 내부의 데이터나 함수를 참조하지 못하게 차단하는 개념

 

상속

부모의 클래스의 property와 method를 그대로 물려 받는 것, 코드의 확장과 재사용 가능

 

다형성

같은 변수명, 함수명이 상황에 따라 다른 의미로 해석될 수 있음.

오버라이딩이나 오버로딩을 통해 기능을 다르게 정의

 

오버라이딩 : 하위클래스에서 상위클래스의 함수를 재정의

 

오버로딩 : 함수를 매개변수에 따라 재정의

 

 

컴퓨터 구조ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

CPU

중앙처리장치, 인간의 뇌에 해당, 컴퓨터에서 가장 핵심적인 역할

시스템 전체를 제어, 관리, 감독, 자료의 연산 및 논리 조작을 수행

제어장치, 연산장치, 레지스터로 구성

 

RISC

명령어가 적고 길이가 단순하다. 구조가 단순하다. 속도가 빠르다. 가격이 저렴하다, 호환성이 떨어진다.

 

CISC

명령어가 많고 길이가 다양하다. 구조가 복잡하다. 속도가 느리다. 가격이 비싸다.

 

파이프라인

Fetch : 프로그램 메모리에서 명령어를 로드한다.

Decode : Instruction register의 명령어를 해석한다.

Execute : 멸령어를 처리한다.

Write-Back : 처리된 결과를 레지스터 또는 데이터 메모리에 저장한다.

 

 

 

댓글