728x90
반응형

https://youtu.be/mVKz40wr-VU



1. CPU 레지스터

1-1. CPU 구조와 명령어 주소
-  CPU의 기본 구조는 제어장치, 연산장치, 레지스터 버스로 이루어짐
-  CPU 내부에는 현재 처리되는 데이터나 명령어를 임시적으로 기억하는 임시 기억 장치(PCR)가 있음
- (중요) PC(명령어 계수기)는 앞으로 수행될 명령어의 주소를 기억함
-  메모리 주소 레지스터(MAR)는 현재 가지고올 메모리의 주소를 기억함
-  레지스터는 주소, 데이터, 명령어 등 정보를 기억하며, 이를 통해 CPU의 동작이 제어됨

1-2. 레지스터 종류
-  레지스터는 데이터 리지스터(GPR), 제어 리지스터(IMB), 불필요한 리지스터(IR)로 구성됨
-  데이터 리지스터는 연산에 필요한 자료를 저장하는 범용 레지스터임
-  레지스터 개수는 컴퓨터의 구조와 성능에 따라 다름
-  레지스터 중 AI, FPR, ACC 등의 용도를 여러 가지 프로그램에 따라 변경할 수 있음
-  따라서 모든 프로그램에서 각자의 용도에 맞춰 레지스터를 효율적으로 활용해야 함

1-3. CPU 활동과 핵심 개념
-  CPU는 현재 진행 중인 작업, 필요에 따라 중단된 작업 등을 기록하는 레지스터로 운영함
-  VR은 미리 설정된 데이터의 레지스터로, 필요 시 레지스터가 데이터를 끌어옴
-  데이터 리지스터는 고정된 값이 아닌, 연산에 필요한 다양한 데이터를 포함함
-  이러한 데이터, 연산 데이터, 레지스터, 알고리즘이 모두 CPU 내에서 어떻게 작용하는지를 이해해야 함
-  특히 알고리즘과 컴퓨팅 학습을 위해서는 레지스터, 알고리즘, 알고리즘의 진화에 대해 알아야 함

2. 메모리 재배치와 주소 지정 방식 이해

2-1. 메모리 주소 및 레지스터 관련 개념
-  '씨'는 액큐멀레이터, 주소의 변경과 레지스터 활용 등 다양한 이론들을 포함함
- (중요) '에이씨'는 어떤 때든 초기화되고, 주소의 변경에 이용됨
-  주소 변경에 사용되는 레지스트와 메모리 맨 앞으로 배우는 파트를 연결함
-  주소 변경의 기본 주소 백분 질, 계산을 통해 미루어졌던 주소는 이를 기반으로 진행됨
-  다양한 알고리즘들이 이러한 주소 변경의 레지스트들을 사용함

2-2. 메모리 재배치와 관계
-  메모리 재배치는, 초기 프로그램 주소의 처음에 있는 각각의 주소를 다음단위로 바꾸는 것을 의미함
- (중요) 이 과정에서는, 초기 주소에 따라 재배치가 이루어짐
- (중요) 실제로, 초기 주소보다 조금 뒤에 있는 각 번째 페이지의 주소를 가져옴
-  한페이지씩 가져가는 것이 아니라, 전체 메모리 중 가장 먼저 읽히도록 한 주소부터 차례대로 읽힘
-  이러한 메모리 재배치를 주문리스트에 도입하면, 효율성 증가에 기여하며 주소의 관리 또한 더욱 간편해짐

2-3. 메모리 주소의 관리와 변화
- (중요) 메모리 주소를 주기억장치에 가지고 있지 않고 불필요한 공간에 두어서 효율성을 높이는 방향으로 진행됨
-  현재의 메모리에는 0~100까지 있지만, 이는 오류로부터 부여되며 실제로는 0~100,000 사이임
-  이처럼 메모리 주소의 관리와 변화는 컴퓨터 성능과 메모리 사용률에 큰 영향을 미침
-  따라서 이는 중요한 부분이며 반드시 이해하고 있어야 함
-  이것은 크게 관련 레지스터들과 메모리 재배치에 대한 깊은 이해를 요구함

3. CPU의 명령 처리와 제어 원리 이해

3-1. 레지스터와 메모리의 상호 작용 이해
-  베이스 레지스트를 통해 메모리파트의 기억 유입이 이루어짐
- (중요) 주소 버스 및 제어 버스 등 여러 가지 버스들이 데이터와 명령어를 전송
-  각각의 버스들은 다양한 정보를 전송하며 복잡한 작업들이 이루어짐
-  명령어의 수행과 제어를 위해 CPU와 메모리 간의 입출력에 대한 이해가 필요함

3-2. CPU의 명령 실행과정과 명령어의 표현
- (중요) CPU내부에서 명령어가 명령문 형태로 해석되고 명령 처리가 이루어짐
-  각 명령어는 특정 주소로 할당되며 이때, 명령어가 중복 명령어를 포함할 경우 존재
-  해당 명령어는 조건에 따라 동작하도록 디코딩(명령어 해동)과 조지구현 과정을 거침
-  명령어가 로직 설계로 활용됨에 따라 명령 문이 무언가를 참/ false로 판별하도록 동작함

3-3. CPU와 메모리 간의 동적 작업 이해
-  명령어의 수행이 CPU와 메모리 간에 동적로 이루어짐
-  명령어가 메모리에서 처리되기 위해서는 메모리의 여유 공간 등을 고려해야 함
- (중요) 명령어가 CPU에 의해 처리되는 동안, 실제로 CPU에서 메모리에 명령어가 레지스터에 저정되는 과정이 반복적으로 이루어짐
-  명령어의 수행이 끝난 후에도, 동일한 명령어가 계속해서 반복적으로 처리 될 수 있어 처리 과정에서 순서가 유지됨

4. CPU의 동작

4-1. 명령어 수행 이해
-  명령어 수행 위해 여러 작업(마이크로 명령)이 반복적으로 동작함
- (중요) 마이크로 명령과 마이크로 오퍼레이션으로 분류하며 컴퓨터가 이를 수행함
-  명령어 처리 후 결과 출력됨
-  명령어를 프래세싱하고, 다른 작업을 위한 입력값을 가져옴
-  명령어의 일부분(마이크로 명령)을 직접 처리하는 것이 마이크로 오퍼레이션임

4-2. CPU의 발전과 효율성
-  초기 컴퓨터 시스템은 작은 사이즈였음
-  마이크로 명령과 마이크로 오퍼레이션의 발전으로 컴퓨터 용량 확장 가능해짐
-  이러한 발전 덕분에 현재 컴퓨터의 성능이 크게 향상되었음
-  CPU의 발전으로 더욱 작고 비효율적인 기기를 만들 수 있게 됨
-  속도와 공간 모두 효율성을 고려하여 컴퓨터 설계 필요함

4-3. 명령어 수행의 이해
-  명령어 수행 단계는 준비 단계와 수행 단계로 나뉨
-  명령어 준비(인터럽션)과 실제 명령어 수행의 차이에 대해 설명함
- (중요) 속도를 높이기 위해 명령어 수행 준비 단계를 줄여야 함
-  공간 대비 속도를 늘리는 방향으로 CPU 설계가 이루어지고 있음
-  속도보다 공간 효율성이 낮으므로 효율성 증대가 중요함

5. 컴퓨터 운영체제의 관점과 명령어 수행 단계 분석

5-1. 컴퓨터의 컴퓨팅 관점 이해
-  컴퓨터의 핵심 역할인 처리속도와 공간적 제약을 이해함
- (중요) 소프트웨어와 하드웨어 모두 각각 속도와 공간 사용량을 효율적으로 관리해야 함
-  명령어 처리 속도를 증가시키고 공간을 줄이는 것이 전반적인 목적임
-  하드웨어의 관점에서는 가격 절감 및 성능 향상을 목표로 함
-  각자의 관점에 따라 다른 이들이 필요로 하는 기술이나 방법론이 다름

5-2. 명령어 수행 단계 분석
-  CPU가 명령어를 수행하는 전체 과정을 알아봄
-  마이크로사이클 타임이란, 1개의 명령어를 수행하는데 필요한 시간을 의미함
-  전자명령어(마이크로 명령어)의 길이는 상황에 따라 다양하며, 이를 불연결 함수(MCOT)이라 함
-  전자명령어 수행 시간(MCT)과 CPU 사이클 타임(CCD)은 동일하나, 이들의 적용률은 서로 다름
-  동기고정식, 동기변조식, 비동기식 등 명령어 부여 방식에 따른 마이크로사이클 타임의 변화에 대해 설명함

5-3. 명령어 실행 결과 분석
- (중요) 각 전자명령어 별로 실행 결과를 분석하여 공간적 제약 효과를 확인함
-  CPU의 이동시간 등의 기타 요소들이 계산에 큰 영향을 미치며, 이들을 노트북 화면에 표시함
- (중요) 비용 대비 성능, 또는 공간 대비 성능이라는 지표를 제공함
-  일반화된 용어들이 서술한 효과를 명확히 이해하고 있어야 함
-  그러므로, 공간적 제약 효과를 최상으로 내기 위해서는 이러한 결과를 올바르게 해석하고 이해하는 것이 중요하다는 것을 명심함

6. CPU의 마이크로행동 및 관리

6-1. CPU의 동기버그식과 비동기식 운영체제
- (중요) 동기버그식 운영체제에서는 그룹별로 같은 시간을 공유함
-  그룹의 동기를 서로 다르게 설정하여 성능 개선 가능
-  비동기식 형식에서는 모든 마이크로 동작에 대해 다른 시계 타임을 정의함
-  이른바 비동기식이라는 개념이 최초 도입된 이유

6-2. 메이저스태잇과 시피뉴의 세밀한 동작분석
-  현대 CPU 상황 파악에는 타이밍스태잇과 메이저스태잇 두 가지 방법이 있음
-  메이저스태잇에서는 프로그램이 CPU에 어떤 목적을 가지고 메모리에 접근하는지 분석함
-  주소 지정 방식(직접 주소와 간접 주소)에 따라 상황이 달라짐
- (중요) 시피뉴에서는 메모리에 갈 때마다 각각 다른 상태가 발생하며 이를 스테이트로 표현함

6-3. 명령의 종류와 수행 스테이트들
-  시피뉴 명령의 형상과 주소 지정 방식에 따라 다양한 상황이 존재함
- (중요) 명령의 특성에 따라 패칠 스테이트, 인다이렉트 스테이트, 액시큐트 스테이트, 인터랙트 스테이트 등이 생성됨
-  이 4가지 스테이트들은 CPU의 효율적 성능 향상을 위한 것임
-  메모리에 갈 때마다 발생하는 이러한 상황 변화가 시스템 전체의 성능을 좌우함

7. CPU의 마이크로 동작과 인터럽트

7-1. CPU의 패치 상태 이해
-  CPU가 시제로에서 신호 발생 시 패치 스테이트로 변환함
- (중요) 인다이렉트 엑시큐트 또는 인터랙트 스테이트를 생성함
-  CPU의 상황 변동으로 인한 제어 신호 발생과 창조자의 기능 명령 음
-  메모리로부터 주소를 받아 패치 스테이트로 이동하고 명령어 수행함

7-2. 마이크로 동작 및 기계화 작업
- (중요) 패치 스테이트에서는 기계가 해야 할 일들을 정해놓음
-  직접 주소일 경우 직접 애시큐트 스테이트로 이동하여 명령어 수행함
-  간접 주소에 대해서는 유효 주소를 찾아 패치 스테이트로 이동하거나 간접의 간접으로 감
-  원사이클 명령어에 대한 처리는 패치 스테이트에서 수행됨

7-3. 인터럽트 이해
-  인터럽트는 명령이 진행되는 중에 특정 상황에 의해 명령을 중단하는 것임
- (중요) 인터럽트 요청 시 CPU는 인터럽트 스테이트로 변경되고, 처리 후 원래 상태로 돌아감
-  돌발 상황 등에 의해 CPU가 명령을 중단하고 인터럽트를 처리하는 것이 가능함
-  인터럽트 이후에 명령이 재개되면, CPU는 패치 스테이트로 돌아가 원래 상태로 복귀함

8. 컴퓨터의 마이크로 명령과 운영 체제 이해

8-1. 현재 컴퓨터 시스템의 운영 체제 및 장치 설정 이해
- (중요) 현대 컴퓨터 시스템은 '마이크로인스트럭션'이라는 작은 단위로 이루어짐
-  이를 통해 한 개의 명령(패치, 엘시큐트 등)은 특정 위치로 이동하여 다른 작업을 진행함
-  상세한 명령 실행 과정은 CPU의 특정 신호에 의해 조정되며, CPU가 이를 관리함
-  따라서 특정 신호가 발생하면 해당 신호에 따라 CPU는 적절하게 동작을 선언함
-  이러한 원리는 컴퓨터 전체 시스템이 명령에 따른 대기와 반응을 효율적으로 수행하도록 도움

8-2. 마이크로 명령 이해와 동작 방식 파악
- (중요) 마이크로인스트럭션은 속성이 아닌 명령어 종류별로 분류됨
-  현재 컴퓨터 시스템에서 CPU는 이를 이용해 복잡한 명령 요청 등을 처리하며 대기/반응하는 동적 프로그램을 생성함
-  다만, 일부 복잡한 명령은 선별 후 특정 메모리 공간에 저장하여 처리 우선순위를 결정함
-  따라서 복잡한 명령 요청은 특정 동역사상에서 먼저 처리되고 이후 일반적인 명령은 그 다음에 처리되는 순서를 취함

8-3. 마이크로인스트럭션 이해와 응용
-  메이저 스테이트, 인터럽트, 패치 등의 기본 개념은 마이크로인스트럭션 구성요소임
-  이들의 역할과 작동방식에 대한 심층 이해는 실제 컴퓨팅 환경에서 CPU가 어떻게 작동하는지를 이해하는데 필수적임
-  또한, CPU의 상태변환 모형에 관한 설명이 그 중에서도 가장 핵심적임
-  이러한 설명을 바탕으로 CPU의 작동원리를 더욱 확실하게 이해하고 효과적인 소프트웨어 제작이 가능해짐

화자 1
00:11
자 전국에 계시는 우리 엠투엠 사이버 생방송 안방 가족 여러분 계속해서 뜨거운 감동의 수업을 함께 하겠습니다. 예 여러분 좋습니다. 그죠 자 앞 시간에 조금 내용이 빡빡해서 쪼금 길었죠. 그죠 예 여러분들 저도 뭐 할 말은 해야 되고 그죠 이왕이면 제대로 해야 되니까. 이해하시고 이제 조금 쉬고 여러분들 오늘 두 번째 강의 시작합니다. 그죠 자 빨리 밥 고만 먹고 자 온 가족이 모입니다. 됐습니다. 그죠 앞 시간에서 우리가 이제 명령의 형식을 배웠잖아요. 그래서 제로 주소 스택 1주소 누상기 2주소 3주소 그죠 예 이렇게 했고 CPU에 이제 구조를 하다가 시간 관계상 조금 이제 합니다.

화자 1
01:03
오늘 강의 들어가기 전에 앞 시간에 뭐 했는 거 방금 10분 전에 뭐 있는 것 정리 좀 하고 넘어가 봅시다 예 그래서 반응을 잠깐 이 쉬피뉴에 우리가 성능 특히 마이크로프로세스 비트 슬라이어 슬라이스 원칙 그리고 기억 용량의 단위 처리 속도의 단위 봤고요. 다음 넘어갑니다. CPU 자 CPU 의 기본 구조 그죠 메모리 CPU 그죠 그래서 내가 아직 확실히 모르지만 한번 데이터를 집어넣어서 첫 번째 명령어 주소가 PCR에서 MARMR에서 메모리 가고 엠알에서 가져와서 MBR 갖다 놓고 명령어는 IR로 가고 데이터는 GPR 데이타 레지트로 가고 그죠 명령어를 해독해서 제어장치가 처리를 하고 난 뒤에 그 결과를 다시 돌려주는 이런 과정을 요 구조도 아주 중요합니다. 마지막에 다시 한번 돌려볼게요 넘어갑니다.

화자 1
01:55
그리고 CPU는 크게 뭐다 제어장치와 연산장치 레지스터 버스로 구성되고 또 제어 장치에는 이런 것들 연산 장치에는 이런 것들 어 또 CPU 는 지금 보고 있죠. 아주 많은 것들이 존재합니다. 그죠 예 다음 넘어갑니다. 자 이제 CPU 하다가 말했죠. CPU는 CPU 뭐야? 레지스터 시네지스타 CPU 속에 현재 처리할 데이터나 명령어를 일시적으로 임시적으로 기억 시키는 임시 기억 장치고 프리플라워로 구성되어 있고요. 특히 이제 PCR은 뭐라 하냐면 정리하자 프로그램 카운터니스트 다른 말로 프로그램 계수기 그죠 아 그래서 PC 또는 IC 어 IC 명령어 계수기 LC 위치계수를 하고 다음에 수행될 차기에 수행되어질 명령의 주소 번질을 기억하는 레지스트다 이야기 했죠. 그제 됐고요.

화자 1
02:47
엠에이알은 메모리 어드레스 레지스트 해 가지고 현재 억세스 헤이알 가져오고 갖다 놓을 메모리에 할 으세스해야 할 메모리의 번식 즉 주소를 기억하는 거다 그죠 현재 가지고 오고 갖다 놓아야 할 메모리에 데이터가 들어있는 메모리의 주소 값을 기억한다. 그래서 PCR은 주소를 기억하고 엠에이알은 주소를 기억합니다. 똑같은 주소를 기억하죠. MBR은 메모리 버퍼 네지트 다른 말로 엠 어 메모리 데이터 네지트라기가 현재 가지고 온 내용 즉 데이터 즉 명령어와 뭐다 데이터를 기여하는 레지스트다 그죠 그리고 IR은 뭡니까? IR은 명령어 네지스트죠 명령어 리스트 해가지고 현재 CPU에서 수행되어질 명령어를 기억하는 레지스트 명령어 즉 MBR의 명령어가 아이알에 왔죠 그죠 또 SR은 뭡니까? 어 군대로 말하면 상황실이다.

화자 1
03:46
즉 스테이터스 네지트 다른 말로 프로그램 스테이터스 워드 네지스트 다른 말로 플래그 네지트 해 가지고 64비트로 구성되어 있는 어 특수 네지스트다 그죠 그래서 시피뉴에 씨피뉴가 무엇을 하고 있는가 CPU 현재 무슨 짓을 하고 있는가 모든 걸 기록하는 리조트다 그죠 그러니까 상태 리조트를 보면 현재 CPU가 더하고 있는지 빼고 있는지 모든 상황을 파악할 수 있다. 그래서 군대의 상황실을 조사해보면은 부대 안에 모든 상황을 파악하고 있듯이 그런 거다 그죠 역시 1개가 존재하고 크기는 64미터다 그죠 그래서 요런 이야기를 우리가 앞 시간에 했지 자 그 다음 넘어가 봅니다. 중요하기 때문에 자꾸 해도 좋죠. 그죠 자 어 데이터 리지트는 뭡니까?

화자 1
04:34
데이터리지트는 연산에 필요한 자료를 데이터를 보관하는 레지트다 그죠 내가 처리할 데이터 순수 데이터죠 그죠 어 순수 데이터를 보관하는 레지트고 다른 말로 우리는 GPR을 한다. GPR 제너럴 제너럴 폴포스 레지스트 해 가지고 일반적으로 쓰기는 범용 레지스트다 범용 범용 레지스트구요. 이 범용 리지스트의 개수가 컴퓨터 기계의 구조와 성능에 따라 다릅니다. 그죠 PC도 PC 같은 경우 보통 8개 존재하는데 우리가 배우는 게 뭐다 IBM 360370이라는 표준 메인 프레임 대형 컴퓨터를 배우고 있다. 그래서 거기에는 몇 개 16개 존재합니다. 16개 부터 I 제로부터 I-15번 아니 16개의 이 레지스트가 뭐다 데이터를 처리하는데 이용한 리지트고요.

화자 1
05:30
그 기능을 조금 보면요 그 16개 중에 또 AI라도 써야죠 6개 중에 일부가 AR이 뭐다 연산용 리스트 중에서 처리할 데이터 중에서도 정수 데이터 즉 고정 소수점 돼 있다. 그러니까 우리 앞에서 배운 정수는 전부 다 AR 연산용 레지트에 기억이 되는 거죠. 그죠 점수 값을 기억하고 16개 중에 여러 개를 할당할 수가 있습니다. 그죠 16개 중에 여러 개를 사용할 수가 있다. 에 고정되어있는 게 아니고 사용할 수가 있는 거예요. FPR은 뭐야? 플로팅 포인트 레지트 이렇게 해 가지고 실수 데이터 즉 구동소수점 일단 실수 데이터를 기억하는 레지스트고 최대 4개까지 활용 가능합니다.

화자 1
06:15
자 이게 무슨 소리냐 하면은 자 오늘날 여러분들 CPU 속에 NASTER 뭐 PCR도 있고 MBR도 있고 IR도 있고 SR도 있고 앞에서 봤죠 그런데 데이터 리스트는 뭐요 나머지들은 전부 다 하나인데 이 데이터를 기억하는 레지스트는 즉 연산에 이용될 자료를 기억하는 레지스턴을 우리는 데이터리스트라고 다른 말로 GPR이다. 즉 범용 여러 사용 용도에 이용된다. 여러 목적에 이용된다. 해서 범용 레지스트라는데 이놈이 몇 개 존재한다. 했노 그렇죠. 알 제로부터 R1 R2 뚝뚝뚝 R15 16개가 데이타를 기여하는 기타 레지스터로 어디에서 IBM 컴퓨터에서는 존재한다는 거야. 알겠어요. 근데 이놈이 16개가 각각의 용도가 어떤 때는 AI로 사용되고요.

화자 1
07:06
어떤 때는 FPR 용도로 사용되고 어떤 때는 ACC로도 이용되고 어떤 데는 이제 인덱스 레지스트 아이알도 어떤 데는 베이스 레지스로도 이용되더라 이 말입니다. 어 이용되더라 그러니까 좀 구체적으로 옛날에는요 뭐 요놈은 니는 AR 해 니는 AR이야 너는 에프피알이야 너는 AR이야 이렇게 정해놨어요. 옛날 컴퓨터들은 아이 제로 너는 AR이야 근데 요즘 우리 컴퓨터는 그렇지 않다 이 말입니다. 이 16개 중에 알투가 AR로 사용될 수도 있고 어떤 데는 프로그램에 의해서 어떤 데는 I 제로가 AI 사용될 수도 있고 그죠 또 어떤 프로그램에 의해서는 아이 제로가 FPR 이용될 수도 있고 이렇게 프로그램에 따라서 사용 용도가 여러 가지로 쓰인다는 그런 이야기다 그래서 거기까지 알면 좋죠. 이런 이야기를 누가 할 수 있노 모든 책에는 요것만 탁 나오지 그죠 그렇지만 우리가 전체 정리를 한번 해보자 이 말입니다.

화자 1
08:03
이해되나 그래서 이 16개 중에 AR요 즉 점수 데이터를 기억하는 거는 여러 개를 할당할 수가 있다는 거예요. FPR은 즉 부동소득 전 플로팅 포인트 레스트인데 실수 값을 저장하는데 이 16개 중에 4개만 할당한다는 거죠. 4개만 알겠나 그렇게 중요한 이야기는 아닙니다. 에이씨신 아주 중요해요. 씨는 어큐머레이트 그죠 누산용 레지스트 또는 에이씨라고 이렇게 하제 연산된 결과값을 기억하는 리스트 결과값을 누적시키는 레지스터 그죠 이중에서 16개 중에서 온이 1개만을 할당합니다. ACCAC신은 그러니까 열다섯 번째가 에이씨씨가 될 수 있고 어떤 때는 첫 번째가 에이씨씨가 될 수 있다는 거죠. 그죠 이제 어큐뮬레이터인 에지스타 예 그다음에 IR은 뭐냐 하면은 인덱스 리지트잖아요. 그죠 여기서 우리가 배웠죠 주소의 변경 주소값의 변경이죠.

화자 1
08:53
주소값의 변경 우리가 계산에 의한 주소 지정 방식에서 어떻게 됐나 어 계산에 의한 주소 지정 방식에서 어 여기에 오피코드가 있고 여기에 왜 엑스 뭐 엑스 번지가 기본 주소 백분질을 합시다. 계산은 뭐야? CPU 속의 IRL 인덱스 레지스트의 일부 주소를 갖다 놓는 거죠. 떨어진 주소 그래서 여 기본주소와 IR에 들어있는 주소 즉 인덱스 새긴 레저트라는 주소를 더해 가지고 메모리 뭡니까? 엑스 플러스 와이 생각나나 즉 150번지 메모리 150번지에 바로 가서 데이터를 가져오는 데이터의 주소를 지정하는 이런 주소지정 방식이 뭐다 계산이었죠. 그죠 그때 이용되는 거죠. 그죠 그때 이용되는 레지스트고 또는 뒤에도 프로그램에서 뒤에 배웁니다마는 서브루틴 메인 프로그램에서 서브프레임을 연결할 때 또는 프로그램에서 반복연산의 횟수를 세는 레지스트인데 요거 2개는 중요하진 않습니다. 나중에 또 한번 살짝 보죠.

화자 1
09:51
주소요 계산에 의한 주소 지정 방식에서 계산의 일부 값 즉 주소 변경에 주소변경에 이용되는 레지스트다 하고 이 베이스 레지스트도 주소의 변경에 이용됩니다. 여러분들 굳이 자 요기가 IR에만 넣어 놓을 필요도 없고 베이스 레지스트에도 요런 주소의 일부 주소를 연결해 가지고 계산에 의한 주소 지정할 때도 IR 또 이용하지만 비알도 이용될 수가 있어요. 그죠 그러니까 어 계산을 이용되는 요 주소에 기본주소에서 떨어진 주소 변이주소를 기억하는 거는 IR뿐이 아니고 비알도 되고 또는 이 PCR PCR을 또 이용할 수가 있습니다. 그죠 이 PCR의 주소를 더해주는 게 상대 주소 모드고요. 이야기했습니다마는 참고로 베이스 레지스트 하는 걸 베이스 레지스트 모드 베이스 레지스트 모드라고 인덱스 레지스트를 이용해서 주소를 지정하는 게 인덱스 레지스트 모드라 합니다.

화자 1
10:50
정확하게 이야기하면은 계산에 의한 정보 제정 방식은 IRBR PCR 3개를 다 이용할 수 있습니다. 그죠 주로 IR을 많이 이용하겠죠. 그죠 참고로 알아 놓으십시오. 앞부분에 했는 건데 다시 한번 정리를 했습니다. 그죠 요렇게 이용되는 게 비알입니다. 비알 또 이 비알은 어 프로그램의 시작 번지 이것도 비알루 이용합니다. 또는 메모리 아주 중요한 이야기인데 리로케이션 이게 무슨 뜻이고 리로케이션 다시 위치시킨다. 재 뭐여 뭐여 재위치 그러니까 메모리 재배치입니다. 예 그래서 메모리 프로그램의 시작 본질을 기억하는 게 베이스고 특히 메모리 재배치의 시작 번지가 기억되는 게 재배치에 첫째, 시작 번지죠 시작 본질을 기억하는 레지스트가 또 비알로도 이용됩니다.

화자 1
11:46
그죠 비알 용돈데 뭐 나와있는 김에 잠깐 봅시다 요거 나중에 여러 번 합니다. 이거는 예를 들면 이런 거다 이 말입니다. 어떤 프로그램이 꼭 0번제부터 시작하라는 법은 없거든. 어떤 프로그램이 있어요. 프로그램이 뭐 이렇게 명령어만 명령어 투 엔게임 명령어로 구성되는 프로그램이 있는데, 이 명령어의 첫 시작이 프로그램에 0번제부터 하라는 법은 없거든. 만약에 100번지다 이러면 이 프로그램의 시작 번지를 시피뉴 속에 어디요 비알이다. 입니다. 비알 베이스 리스트에 100번지를 집어넣습니다. 그러면 컴퓨터 시피뉴는 비알에서 100번지가 백 번째부터 이 명령어 이 프로그램을 수행해야 되겠구나. 어 100번째 정보를 비하를 보고 확인한다는 거야. 그래서 100번째 가서 이 명령어 첫 번째부터 순차적으로 특별한 제어가 없으면 시행을 합니다. 알겠나 이렇게 프로그램의 시작 본질을 기억하는 리스트가 뭐다 비알이다. 이 말입니다. 그죠 백번지부터 여기에 백이 있겠죠. 시작한다는 겁니다.

화자 1
12:44
예 그래서 요건 참고로 하나 놓고요. 뭐 요런 게 단편 문제로 나올 수가 있으니까 그다음에 메모리 재배치 이거 아주 중요한 이야기인데 이거는 버철메모리 해서 코끼리 장인 만측이 장인 코끼리 만측이 환상적인 방법이 있는데, 잠깐 또 이야기하죠. 잠깐 이야기하면은 메모리 재배치는 이런 겁니다. 쉽게 말해서 뭐 여러 가지 이야기할 필요는 없고요. 자 오늘날 어 자기가 함 좀 설명하자 그러면은 내가 처리할 프로그램의 총 용량이 3메가랍시다 3메가 예 3메가예요. 근데 이놈이 이놈이 처리되기 위해서는 주기억장치에 노드돼야 되겠지 내가 처리될 데이터는 명령으로 노드돼야 돼요. 근데 이놈의 3메가짜리를 기억시킬 메모리는 몇 메가 하이고 1메가밖에 없다. 이 말이에요. 이 3메가가 1메가에 들어갈 수가 있나 여러분 코끼리가 냉장고에 들어갈 수 있나 못 들어가죠 그렇지만 있습니다.

화자 1
13:38
뭐 직업에 따라 다르죠 아나 근데 아나 이 교수님들은 코끼리를 영장고 위에 집어넣을 수가 있습니다. 어떻게 집어넣노 자 오늘 난센스키즈 오늘 이거 맞추면은 오늘 내가 와요. 시원해 한방 살께 어 자 대전의 병태야 맞춰봐라 어 전라도 순자 뭐고 예 교수님들은 코끼리를 냉장고에 어떻게 집어넣노 조교를 시키면 됩니다. 무슨 소리 하는지 저 봐라 무슨 뜻인지도 모르고 또 아직 인제 웃는다 웃지도 않는다. 이거 예 나중에 이야기할게 그럼 몬덕하기 때문에 오늘날 컴퓨터는요 요걸 일매가치 짤라요. 딱 짤라 가지고 요건 첫 번째 프로그램의 첫 번째 부분 두 번째 부분 세 번째 해 가지고 먼저 첫 번째를 가져옵니다. 이 프로그램의 주소를 예를 들면 0번지부터 100번지 즉 첫 번째 단위는 요걸 페이지라 하거든. 페이지 완 뒤에 페이지 투 페이지 싸움 3개의 페이지로 나눴죠 첫 번째 페이지를 가져옵니다. 가져와요.

화자 1
14:37
가져오면은 오늘날 이 프로그램에 부여되어 있는 주소가 무슨 주소더노 논리적 주소라 했지 각 가주소 이 논리적 주소에서 만들어지는 공간 주소공간 실제 메모리 부여돼 있는 주소 실주소 그렇죠. 근데 메모리에는 0에서 100번지 밖에 보험부터 일명하니까 그러면 첫 번째 페이지 들어오면은 딱 맞아요. 첫 번째 페이지가 0에서 100번째 구성되어 있기 때문에 딱 궁합이 딱 맞아 몇 평 일어나서 프레임 시행됩니다. 그럼 두 번째 페이지를 딱 가져올라 카니까 두 번째 페이지는 어떻게 돼 아이고 더러워라 101번째부터 200번째 돼 있거든. 그러면 실제 메모리에는 0에서 100이 보여도 안 맞아 궁합이 안 맞아 그럼 실행이 안 됩니다. 그러면 어떻게 되나 이 메모리에 부여된 주소를 새로 붙여야 되 뭐 0에서 100을 101에서 200으로 붙여야 됩니다. 여러분 가능하죠. 여러분 어떤 자 여관에 가나 여관에 가니까 어제 가니까 101호 102호 붙여놨는데 오늘 가니까 1001호 1001호 붙인다고 상관있나 없지 안 가져다 이 말입니다.

화자 1
15:33
이렇게 메모리에서 100번지를 붙였는 걸 101에서 200번지로 번지를 새로 부유하는 걸 뭐라고 한다. 재배치라 합니다. 뭐 메모리 재배치입니다. 알겠나 메모리 재배치 즉 다른 말로 메모리 재배치는 뭐다 새로운 번지를 즉 번지 부여 새로운 번지를 메모리에 부여하는 행위 부여하는 시험에 많이 나와요. 작업을 우리는 뭐라 메모리 재배치라 합니다. 아쉽다 너무나 쉽게 강요하네 근데 이런 메모리 재배치에 첫 번째 이 주소 값을 어디에 또 기억한다. 오케이 베이스 레지스트의 기억이 된다는 거예요. 자 요것만 알아놓으면 문제 다 맞추죠 베이스 네지스트에 그렇죠. 그래서 요거는 다시 메모리 파트에서 환상적으로 감동적으로 정리합니다. 좋습니다. 그래서 여러분들 요렇게 봤습니다.

화자 1
16:26
그죠 요렇게 봤제 그래서 요렇게 해서 우리가 시피뉴 속에 레지스터들을 시원하게 한방에 정리했습니다. 됐나 함 넘어가 보자 예, 예, 예 요거에요. 좋습니다. 그 다음에 이제 버스들 자 이제 식핑유를 구성하고 있는 것 중에 제어장치 연산장치 레지스터 그다음에 버스죠 버스 버스가 뭐고 어 여러분들 버스 타고 이동한다는 거나 컴퓨터에도 데이타와 명령어가 버스를 타고 이동합니다. 즉 데이터와 명령어를 전송시키는 전송로 전송로가 뭐다 버스 어 전기선이지 뭐 전송로 버스입니다. 그죠 이런 전송정보에 따라서 3단계 나눠요 데이타버스 자료버스 즉 데이타버스 예 명령어와 소문자 데이타니까 그죠 데이타 버스가 있고요. 그다음에 어드레스 버스 번지버스 또는 주소버스 같은 말이죠. 그다음에 컨트롤 버스 제어버스 3종류가 있습니다.

화자 1
17:26
전송할 수 있는 정보가 뭐냐 이 말이죠. 자 이 데이타버스는 뭐야? 데이타버스는 뭐야? 여러분들 요놈이 메모리고 자 그럼 일하자 데이타버스는 함 봐봐요. 데이터 버스는 여러분들 데이타 버스는 CPU에서 메모리에도 데이터를 보내죠 결과를 보내고 메모리에서도 데이터를 보낼 수 있죠. 그래서 여기 데이터 버스는 뭐냐 양방향 부었습니다. 어디에서 CPU와 메모리 사이 또는 다른 기계 사이에 왔다 갔다 서로 다른 기계 사이의 이 데이터 버스도 데이터는 왔다 갔다 해야 되기 때문에 데이터 버스는 양방향 버스입니다. 요게 인제 시험에 나오죠. 양방향 버스고 번지버스는 뭡니까? 주소 주소 버스는 CPU가 메모리나 IO나 다른 장치의 번지를 지정할 때 사용하기 때문에 오로지 CPU만 줄 수가 있습니다.

화자 1
18:20
그죠 CPU만 그래서 이 번지버스 주소버스는 단방향 버스 어디서 CPU에서 메모리에 부여되는 버스다 이 말이죠. 제어버스도 1가지입니다. 그죠 CPU에서 메모리나 다른 장치를 제어하재 제어하는데 이용되는 제어신호를 전송하는 제어신호를 전송하는 버스니까 요것도 단방향입니다. 그죠 제어신호를 제어 신호를 CPU가 다른 장치로 CPU에서 CPU의 저장치에서 메모리나 IO 장치에 전달하죠. CPU만 전달하니까 여러분들 이거는 단방향이죠. 이게 뭔 말인지 알아 여러분 이 대뇌 머리에서 대가리에서 발이나 팔이 나한테 신호를 주지 팔이 이런 머리에 신호 주는 거 봤나 팔이 파리 진행하는 거 못 봤제 그러니까 제어버스도 뭐다 단방향 버스입니다. 그죠 그래서 창문 알아놓고 또 버스 위치에 따른 따라서 내부 버스냐 외부 버스 즉 시피뉴 아래에서 구성되어 있는 버스는 내부고 어 시피뉴와 자 예를 들면 메모리와 시피뉴 사이의 이게 버스죠 이거는 뭐야?

화자 1
19:19
내부 버스라 하죠. 내부 버스고 시피뉴 사이에 안에서 또 다른 장벽이 이거 외부 요게 외부 버스고 요놈이 내부 버섯이요. 그죠 내부버섯 외부버섯 이 외부 버섯을 메모리버스라고도 합니다. 그죠 메모리버섯 참고로 알아 놓으십시오. 자 이렇게 해서 우리가 레지스터 또는 버스를 다 정리를 했습니다. 넘어갈 필요 없고 예예 좋습니다. 자 방금 했는 거 우리 앞 시간에 조금 시간이 짧아 가지고 이제 정리됐죠 그죠 그래서 우리가 CPA 구조 아주 중요했죠. 그지 그래서 우리가 했습니다. 그죠 자 그러면은 바로 인제 우리 여기서부터 오늘 시작해야 되는데 자 오늘의 이제 오늘이 저 뭐야? 요번 시간 인제 과목이 명령의 수행과 제어입니다.

화자 1
20:11
그죠 앞부분에서 이제 우리가 데이터의 표현 데이타의 연습 바로 앞 시간 10분 전에 뭐요 10분 전에 이제 명령어 대해서 명령어와 주소 지정 방식 끝났죠. 그죠 그리고 뒤이어서 CP의 구조도 우리가 아까 그 그림으로 정리를 해 봤습니다. 드디어 이제 이 CPU 왜 이 물리적인 기계를 어떤 식으로 우리 인간의 명령어와 데이터가 수행되고 제어되는지를 지금부터 봅니다. 그죠 요게 요번 시간 핵심이다. 그죠 자 명령의 수행과 제어 넘어가봅니다. 2파트로 구성돼 있습니다. 자 한번 보자 여러분들 야 정리 잘 되제 정리가 시원하게 됩니다. 여러분도 모르는 사이에 점점 여러분 컴퓨터 세계로 컴퓨터의 구조학원 오고 있죠. 그죠 이야기예요. 지금 이야기 쭉 놀레베로부터 이야기 쭉 데이타 쭉 명령은 축축 들어간다잉 좋습니다. 자 마이크로프레션 이런 이야기입니다.

화자 1
21:07
마이크로 명령어 하드웨어적으로 해석하는 거는 마이크로프레션 전자동작 마이크로 동작 소프트웨어적으로 이야기하면은 마이크로 명령어입니다. 자 이거 생각나죠. 여러분들 오늘날 컴퓨터한테 키보드로 또는 명령을 열릴 때는 이렇게 스테이트먼트 뭐 명령문 씨는 A+ 비 이런 명령문 형태로 명령을 내리잖아. 맞나 그러면은 이제 컴퓨터 내부적으로요 자 요놈이 주기억장치 메인메모리에서 표현되는 형태입니다. 기억장치로 가면은 뭐 명령어 형태로 분해된다. 했지 근데 이 명령어가 이제는 결론이 나왔죠 몇 개의 종류로 있노 4종류죠 그죠 재료 주소 1주소 2주소 3주소 배웠잖아. 근데 명령어는 어떻게 된다.

화자 1
21:50
오케이런 식으로 오퍼레이션 코드와 오피코드와 오프렌드로 구성된다는 거 다 배웠나 이제 서서히 대제 그래서 우리가 이렇게 명령을 내리지만 컴퓨터가 주 기억 장치에서는 네 종류 중의 하나로 표현되는 거죠. 현재 몇 주소로 1주소로 여기 표현했네요. 1주소로 표현하다 보니까 요 하나의 명령문이 3개의 1주소 명령으로 표현됐네 맞나요? 노드웨이 그죠 이제 다 여기서 내에서 잘 배웠습니다. 왜 앞부분에서 명령어와 주소지역망치 즉 우리가 용어를 배웠잖아요. 이제까지는 근데 지금부터 뭐 배우느냐 이걸 배우는 겁니다. 이걸 자 근데 이 노드 A라는 명령어가 CPU로 가서는 어떻게 동작되느냐 이 말이죠. CPU로 프로세스로 가서는 CPU에서는 요런 식으로 표현된다. 이 말입니다. CPU의 자 아직 이 표현 방법을 안 배웠죠 의미심노 여러분 이거는 다 배웠다 이거는 명령어와 주소 지정 방식에서 정리를 다 했어요. 아 좋다.

화자 1
22:49
어허 이제는 이게 씹히면 속에는 어떻게 표현되는 거예요. 노데이라는 명령어가 또 씹히는 속에 들어가면 이런 동작을 안 돼요. 로드웨이는 자 여러분 뜻도 여러분 자 보세요. 뭔지는 모르지만 메모리 엑스 번지 PCR에 들어있는 메모리 엑스 번지죠 PCR은 뭐다 다음 처음에 수행될 명령의 번지죠 그죠 이 엑스번지를 엠에이알에 줍니다. 그러면 엠에이알에서는 이 엑스번지를 가지고 메모리 엑스번지로 갑니다. 가서 메모리 엑스번지에 들어있는 명령어를 가지고 어디 갖다 놓는다 MBR에 갖다 놔요 그리고 MBR에 들어있는 이 명령어를 어디에 명령어 레지스터 인스트럭션 레지스터 자 정리해라 레지스터에 갖다 놓습니다. 가져와서는 디코더에서 해동합니다. 디코딩 즉 명령어를 해동하고 주소를 해독합니다. 요 과정을 내가 뭐라 카드노 인스트럭션 명령어를 가져오는 단계라고 했죠.

화자 1
23:45
인스트랙션 배치를 하자 가져왔는 걸 이제 명령어를 어떤 명령어고 어떤 주소고를 해동하는 게 명령어 플러스싱이라고 하죠. 에 그래서 이제 뭡니까? 이 명의에 이용될 데이터를 가져가지고, 데이터를 그 메모리 이제 에이 번지 에이 번지를 두고 메모리 에이 번지를 갑니다. MARA를 주고 메모리 에이 번지에 가서 메모리 에이 번지에 들어있는 데이터를 MBR로 갖다 놓습니다. 그게 MBR MBR에서 그 데이터를 어디요 DATA LASTER GPR에 갖다 놓죠 그러면 이제 명령은 왔고 해독했고 데이터가 이제 DATA NASIT에 와 있죠. 그럼 이 논문을 뭐한다. 수행합니다. 이 수행하는 걸 인스트럭션 엑시큐트라 이렇게 하죠. 이 데이터를 가져오는 거야. 뭐라카느냐 요 점을 오프렌드 패치라 합니다.

화자 1
24:34
자 여러분 잘 봐라 하나의 명령어가 수행되는데 노드웨이가 수행되기 위해서 1 2 3 4 안에도 여러 가지 행위 이런 수많은 일련의 조직화돼 있는 전자 명령어가 수행돼야만이 노드웨이가 수행됩니다. 자 다시 이야기한다. 하나의 명령을 수행하기 위해서 뭔지는 모르지만 컴퓨터가 이렇게 움직인대요 이렇게 이런 식으로 메모리에 왔다가 갔다가 왔다리 갔다리 왔다리 갔다 하면서 1개의 명령을 수행하기 위하여 중요하기 때문에 이야기한다. 명령어를 가져와서 명령어를 프라세싱하고 오프렌드를 가져오고 그리고 명령어 처리돼서 결과가 나오는 거예요. 되나 이런 지필리얼 속에서 이런 명령어 이런 명령어를 뭐라 한다. 마이크로 명령어 소프트웨어적으로는 마이크로 명령을 하고 요거 소프트웨어다 잘못됐네요. 마이크로 명령을 하고 하드웨어적으로 뭐냐 마이크로 오퍼레이션이라 합니다.

화자 1
25:32
이걸 마이크로 동작 전자동작 전자명령어 컴퓨터는 이걸 수행합니다. 이걸 어떻게 수행하는데 이걸 팍 그릴 때 팍 끓일 때 팍 1번 팍 끓일 때 하나의 전자명령을 수행합니다. 되겠나 이 팍 끓이는 걸 뭐라카더노 CP 클락폴스 CP 뉴 발생주기 그죠 주파수 또는 제어신호를 합니다. 1번 팍 끓일 때 알겠나 그래서 여러분 컴퓨터 1기가 헤르츠는 뭐다 1초에 이런 전자 명령을 몇 개 수행한다. 이렇게 오케이 이렇게 수행합니다. 아 대단한 컴퓨터 여러분들은 수행을 5분 뭐 10분 영원히 모호하는 사람도 있는데, 되겠나 이런 전자명령어요. 뭐라요. 마이크로 인사 들어 쉽게 강의하제 그리고 하드웨어로 이야기하면 뭐다 마이크로프레이션 해석하는 방법이 2가지니까요?

화자 1
26:28
됐나 지금부터 이걸 배워보자 이제까지는 이걸 배웠는데 지금부터는 이걸 배워보자 시험에 많이 나옵니다. 크 멋지다 내가 강의해도 멋지다 이거 진짜 대한민국 일하는 사람 어딨노 예 이런 관계를 모르고 말이야. 이상한 데 가가지고 막 불쌍한 어 여러분들은 그냥 내 저자는 근데 불쌍한 영혼들 있죠. 어 뭣도 모르고 딴 데 뭐 이상한 데 가가지고 막 골치 아프고 정보 처리해야만 뒤집고 땡기고 정보처리 공부하는데 10시간씩 공부하고 문제 시대가 어느 시대인데 그 영화 1편 보고 끝내면 되는 걸 어 불쌍한 친구들이 굳이 왜 구제 에 여러분들은 복 받았죠 스승을 잘 만났제 사람을 잘 만나야 된다. 뭐든지 남자는 여자를 잘 만나야 되고 여자는 남자를 잘 만나야 되고 제자는 스승을 잘 만나야 되고 스승은 제자는 잘 만나야 되지 알겠나 예 인연 인연 중요합니다. 명분 됐나 이미 강의 다 끝나버렸네 이제 이런 걸 여러분들이 머릿속에 전자 움직임을 알아내야 되는 거예요.

화자 1
27:27
그죠 자 끝났다 이미 뭐 할 거 없다. 이야기해보자 우리가 1방에 끝나버렸네 그림 하나로 자 1개의 마이크로 명령어 아니 자 1 마이크로 퍼레션의 정의 다 끝났다 이야기하는 환계 명령을 수행하기 위해서 시평양 레지트가 의미있는 상태 변화를 하도록 한 동작 같은 말이 그리고 레지트에 저장된 데이터에 의해서 이루어지는 동작 맞죠. 레지트에 들어있는 데이터들이 이게 이게 데이터들이 왔다 갔다 하는 거잖아. 1개의 CP 클라버스 동안 실행되는 기본 동작 맞죠. 하나의 벅한데 이거 봐 이 그림 하나 그리니까 여기 그림 다 나오잖아요. 시험은 이런 단어가 나와 이거 안겨야 되나 원리를 모르면 암기해야 되지만 그건 마이크로프레션 순차적으로 진행되게 하려면 저 장치가 발생하니 맞죠.

화자 1
28:06
저 신호를 저 신호에 의해서 움직이지 팍 정확하게 움직여야 되지 팍 벅 벅 하면 되나 차도 정확하게 팍팍해 동태가 탁 타닥 구르지 차도 벅 벅벅 하면 차 위에 가노 갔다가 으 갔다가 이걸 차에선 찐빵현상이라 해 가지고 찐빵현상 일어나면 차가 버려야 된다. 알겠나 예 아주 순차적으로 주기적인 제어신호에 의해서 움직인다는 거죠. 그죠 1개의 명령어는 여러 개의 마이크로 오프레션의 동작 되었어 맞죠. 하나의 명령어는 여러 개의 마이크로 동작이 수행되어야 수행된다는 이야기 이렇게 물어나 저렇게 물어나 다 같은 말이야. 이 원리를 아니까 이거 맞제 다 같은 말을 문제 같은 거 다 외우고 있다. 그래가 말만 바꿔보면 어렵다 어려운 게 어딨노 저한테 강의 듣고 어렵단 소리 하면 아이 나와 어떤 문제 나와 똑같애요. 언니 다 알고 있는데, 알겠나 도통하는 거죠. 됐습니다.

화자 1
29:00
넘어가자 더 이상 이야기하면 간침이제 너무나 쉬운 이야기 너무나 쉬운 이야기들입니다. 예 좋아요. 좋습니다. 맞습니다. 맞고요. 아 친구야 어 땀새 그런다 야 전 장군이야 밤밤 빠밤 넘어갑니다. 갑자기 이상해졌다. 시간만 있으면 재미있는데, 뭔지 알제 전 장군 전 장군이야 더 넘어갑니다. 명령의 수행단계 다 봤잖아요. 오늘날 하나의 명령아 수행되는 단계를 보니까 크게 수행 준비단계와 수행단계로 나눠지더라 그죠 보통 이제 하나의 명령어가 수행되는 걸 100으로 보면요 준비하는 데 시간이 많이 걸려요 준비하는데 자 오늘날 하나의 명령어가 수행되기 위해서는 메모리가 있고 씨피뉴가 뭡니까?

화자 1
29:53
가서 명령어를 가져오제 가져오는 걸 명령어 인스트럭션 패치라고 가서 이거 아까 봤죠 이렇게 뭐 IR에 왔다 왔다 갔다 하죠. 이걸 명령어 프라세싱 그리고 여기에 이용될 데이터를 가져오는 건 뭐다 오프렌드 패치 가져왔는 걸 수행하는 거예요. 뭐 명령어 애시큐트 4단계로 구성되는데 뭐요 이 3단계에서 시한을 다 뺏깁니다. 준비하다가 볼일 다 와 우리도 그렇잖아요. 요즘 로또 복권은 막 했는데 옛날에 우리 주택복권 하나 화살 그때 그 진짜 흑백 티비 있을 때 주택복권 당첨했어요. 뺑 돌려가지고 이렇게 활 딱 가가지고 준비하시고 카면 인제 연예인이 뭐 현미라든지 나훈아 이런 사람이 있었어요. 나훈아 퇴진아 이런 사람 없었죠. 딱 나와가 준비하시고 추첨도 하자고 준비하시고 선생님 하면 팍 가봅니다. 알겠나 준비하는 시간 다 보내듯이 하나의 명령어가 수행되는데도 준비하는 시간이 최소 80프로입니다.

화자 1
30:51
그죠 즉 명령어를 가져오는 단계 인스트럭션 패치죠 명령어를 프라세싱하고 그리고 데이터를 가진 거 가져오는 이 시간이 다 뺏기고 실제 수행하는 것은 금방 하더라 이 말입니다. 알겠나 자 명령어 수행 준비 단계 되겠나 자 다시 한번 이야기한다. 명령어 패치 명령어 프라세싱 오프렌드 패치 그리고 명령어 수행 됐나 요 4단계인데 요놈의 준비 단계고 요놈의 수행 단계더라 근데 여기서 시간이 다 뺏기더라 그랬어. 오늘날 컴퓨터에서 이 시간을 줄이자 왜 이 시간을 줄이는 게 뭐고 명령어에 자 중요하다 명령어의 처리 속도를 처리 속도를 향상시키는 거죠. 자 오늘 컴퓨터에서 가장 중요한 건 뭐다 속도 문제 지금부터 여러분 많은 문제 중에 거의 많은 문제가 뭐다 속도를 어떻게 하면 줄 빠르게 할까 속도를 어떻게 하면 줄일까? 이 문제지 그래서 이제 지금부터 여러분들 이 명령어 수행 준비 단계를 우짜하면 줄이겠노 이런 문제들이 많이 나옵니다.

화자 1
31:51
명령어 수행 준비 단계를 줄이는 게 뭐고 컴퓨터의 성능을 높이는 거죠. 이해되나 그렇죠. 그래서 그런 이론들이 많이 나옵니다. 속도를 빠르게 속도는 빠르게 공간은 적게 예 속도 대 공간이죠. 속도 항상 컴퓨터 문제는요 속도 문제 공간 문제입니다. 속도 문제 공간문제 어떻게 하면은 속도는 좀 더 빠르게 공간은 공간 처리속도죠 요거는 기억공간이죠. 공간은 적게 차지하도록 만드느냐 이게 컴퓨터 학자들의 최대 목표입니다. 소프트웨어 하는 사람들의 최대 목적이 뭐고 어떻게 하면 빠르게 처리하고 적은 공간을 활용할까 하드웨어를 하는 사람의 목적은 뭐가 어쩌면 가격은 적게 들고 성능은 높일까?

화자 1
32:34
프라이스테 퍼포먼스지 하드웨어의 관점은 뭐다 가격은 낮추고 성능을 높여야 하는 게 하드웨어 장성하는 사람들의 목적이고 우리처럼 대안이 빠져가면서 프로그램 개발하는 사람들은 목적이 뭐다 오케이 속도를 처리 명령어 속도를 빠르게 하고 공간을 적게 차지하는 게 못 줘요 그죠 속도 대 공간 문제 가격대 성능 문제 되겠나 이거 한번 잘 보세요. 그래서 모든 게 요런 단어 몇 개만 알고 있으면은 되더라 되더라 이런 말이야. 되겠죠. 그래서 인제 고런 걸 이제 달아봅니다. 달아봅니다. 예 좋습니다. 명령어 수행단계 너무나 쉬운 이야기네요. 그죠 예 그다음에 이제 그러면은 여러분 이거 한번 봐봐요. 자 두 번째 마이크로사이클 타임입니다. 엠씨티 마이크로사이클 타임 이게 뭐냐 마이크로사이클 타임이 뭐예요?

화자 1
33:24
1개의 마이크로 오퍼레이션 마이크로 미용료가 수행하는 데 걸리는 시간 자 마이크로사이클 타임은 자 오늘 아까 전자 명령어 PCR의 X 번지를 주고 요기죠 여기 하나의 실은 마이크로 명령어죠 요게 하나의 마이크로 명령어죠 이게 마이크로 1개의 마이크로 인스트럭션입니다. 마이크로 OPERATION이에요. 그렇지 근데 요걸 하나 수행하는 데 걸리는 시간이 요 시간이 뭐다 OKMCT 마이크로사이클타임이다. 이 말입니다. 하나의 전자음용령을 수행하는 데 걸린 시간이 뭐다 여러분 엠씨티입니다. 마이크로사이클 타임입니다. 알겠나 근데 이런 명령어가 하나 있는 전자명령어가요 다 똑같이 쓸 수가 없어요.

화자 1
34:12
어떤 놈은 조금 빠르게 처리될 수도 있고 어떤 거는 쫌 길게 처리될 수도 있고 아니면 아주 요렇게 명령어마다 길이는 좀 달라지죠 그러면 첫 번째 명령은 MCTMCTMCTMCTM시티가 되겠죠. 에 그럼 여러분 잘 봐라 하나의 이런 경우가 이제 움직일라고 하기보다 씹히면은 CP에요. 그래야지 탁탁 이래 신호가 발생돼야 되겠죠. 요거 자 1번 1번 팍 끓이는 데 걸리는 시간이 뭐예요? 요놈이 실은 요놈이 정확하게 이야기하면 내가 요건 요래 나왔는데 CCT입니다. CCT CCT예요. CCT는 뭐냐 하면 시피뇨 사이클 타입입니다. 시피뇨 사이클 타임 자 이게 뭔 말이냐 하나의 전자명령어는 하나의 전자명령어는 1번 CPU가 1번 팍 끓을 때 동기할 때 수행이 되는데 요 하나의 명령어가 수행되는 걸리는 시간이 MCT고요.

화자 1
35:08
요거 팍 끓을 때 걸리는 시간이 CCT야 근데 이게 같습니다. 모든 체계는 같아 했는데 실제로 달라요. 자 이거 뭐 나도 교재에서 얘기해 놨죠 어 요 보면은 1개의 마이크로 명령은 CPU 클락 발생 주기의 간격 시간 내에 수용되는데 맞죠. 팍 끓을 때 수행되는데 이 CCT는 뭐냐 하면 CPU 사이클 타임이라고 하면 CPU 속도를 나타내는 척도로 이용된다. 즉 1번 팍 끓을 때 걸리는 시간이다. 이 말이에요. 그래서 실은 같애요. 에 왜 1번 팍 끓을 때 1개의 마이크로 명령 수행되기 때문에 그렇지만 엄격히 말하면 좀 다르다 이 말이죠. 예 그래서 여러분들 자 요 원리를 가지고 뭐가 나오느냐 에 마이크로사이클타임 알겠나 자 다시 이야기한다. 마이크로사이클타임의 정의는 뭡니까?

화자 1
35:55
1개에 마이크로 명령어 1개의 마이크로 OPERATION 1개의 전자명령이 수행되는 데 걸리는 시간이 MCT인데 이 1개의 명령어는 뭐고 1번 팍 끓을 때 수행하제 이 1번 팍 끓을 때 걸리는 시간에 모여 실은 씨씨티예요. 근데 모든 책에서는 같이 봅니다마는 엄격히 좀 달라요. 뭐 같다고 봐도 무방합니다. 그렇지만 자 보자 이게 마이크로사이클타임인데 요 원리 때문에 뭐가 나오느냐 넘어가 봅니다. 예 아주 쉽죠 자 마이크로사이클 타임 부여 방식에 따라서 3종류의 이제 부여 방식이 있습니다. 그죠 이게 무슨 말이냐 CPU 클락폴스 하는 게 뭐고 팍 끓이는 거죠. CPU 요게 CP라고 하죠. CPU 주기 또는 주파수 CPU가 발생시키는 제어신호 뭐 다 같은 말입니다.

화자 1
36:49
ECP와 엠씨티 마이크로사이클타임의 관계에 따라서 동기고정식 동기가변식 비동기식으로 마이크로사이클타임이 부여된다는 겁니다. 그죠 어 이 관계에 따라 가지고 아주 쉽다 그래서 이 동기고증식은 뭐냐 싱크로너스 피스백 해 가지고 현재 내가 수행되어 있는 마이크로 명령이 4개 있다. 합시다. 전자명령어 요 정도 길이 명령어는 소프트웨어적인 개념이기 때문에 다 다르죠 다 똑같을 순 없죠 명령어는 짧은 거 긴 것 더 짧은 거 아주 긴 거 이렇게 돼 있다. 합시다. 에 이 마이크로 명령어죠 4개의 마이크로 명령어 있다. 하자 그럼 동기고증식은 뭐냐 하면 이 중에서 가장 긴 명령어를 선택합니다. 가장 긴 명령어를 선택해요. 그러면 이게 인제 사법명령이 되겠죠. 사법명령어는 이제 뭡니까? 어 사법명령어와 사법명령의 동기를 맞춰버리는 거지 가장 긴데 맞추는 거예요. 이 가장 긴데 이거 사법이라 하자 근데 동기를 맞춰 버린다니까 요게 동기 고정식 부여 방식입니다.

화자 1
37:48
뭔 말인지 알겠나 현재 수행되어질 전자명령어 중에서 가장 긴 명령어에 뭐다 동기를 팍 CP를 뭐다 고정시켜 버립니다. 그리고 나머지는 나머지 명령어 그러니까 뭐요 요게 실은 4번에 맞춰 하는 거죠. 4번 명령어야 그럼 1번을 수행하면 뭐야? 1번은 1번은 요만큼 수행하고 이만큼 남아요. 에 2번은 뭡니까? 여기서 수행하고 이만큼 남아요. 3번은 많이 남아요. 4번은 딱 맞제 딱 맞제 그 말입니다. 자 그러면은 요게 뭐야? 동기 또는 주기주파수 제어 신호 같은 말이죠. 그 말이제 예, 예 요건 마이크로사 이거는 CPU 그러면 뭐냐 자 실제로는 요만큼만 움직이면 되는데 가장 긴 데 맞췄기 때문에 CPU는 이만큼 움직였어요. 쓸데없이 움직이는 이런 시간 낭비되는 시간을 우리는 뭐라 한다.

화자 1
38:36
CPU 아이들 타임 즉 CPU 유휴시간이란다 뭐고 CPU가 쓸데없이 움직여 아이들타임 게으른 시간 유휴시간 쓸데없이 낭비되는 시간 즉 CPU의 뭐 낭비가 발생하제 시간 낭비가 발생합니다. 아 움직여도 되는 걸 예 그러니까 동기고정식은요, 이런 거예요. 가장 긴 전자명령에다가 뭘 맞춰버린다 싶으면 동기를 맞춰버리니까 나머지 짧은 명령어들은요, 뭐다 시간 낭비가 발생하는 거죠. 이게 동기 고정식 사이클타임 부여 방식입니다. 이해되나 아주 쉽죠 장점은 뭐다 저기에 구현이 간단하지 왜 일정하게 CP가 발생된 퍽 맞제 이게 대부분 동시고정식이에요. 그렇지만 문제가 뭐다 중요합니다. CPU의 시간 낭비와 즉 CP 아이들 다 유휴시간이 많이 발생하지 이만큼 낭비가 낭비는 안 좋잖아. 우리가 컴퓨터 내 종인데 24시간 돌려야 되는데 쓸데없이 놀아요. 가닥까닥 놀고 있습니다.

화자 1
39:35
아이들 타임 발생하는 단점이 있다. 단 동기는 저 제어기의 구현은 동기가 일정하기 때문에 이 제어기의 구현은 아주 쉬운 거죠. 일정하게 이 좋아요. 그죠 그래서 요런 장단점이 있다는 거 실제 넘어갑니다. 예 동기의 고정식 야 너무너무 쉬운 거 이런 파트를 말이야. 막 외우고 어떻게 외워지냐 문디야 응, 알겠나 최고의 전산쟁이 여러분의 영원한 스승 IT 업계의 영원한 조포 3대 금옥 자 동기가변식 자 이 공무원 시험 치는 사람들 보세요. 이거 타타닥 정리하면 얼마나 좋아 요즘은 뭐 잘못된 문제만 풀면 된다. 아주 잘못된 생각이에요. 그죠 해서 요번에도 공무원 가산점은 저 강의 듣고 끝나고요. 특히 전산직 공무원 같은 사람들이 저 강의 좋고 일반 즉 모든 사람들 대한민국의 누구라도 다 알 수 있는 거예요. 빨리 해라 이 말이지 자 동기가병식 이건 뭐야?

화자 1
40:33
수행 시간이 유사한 그룹끼리 만들어 그룹별로 서로 다른 마이크로 사이클타임을 정의하는 거 자 비슷비슷한 것끼리 모으는 거예요. 1번 하고 5번하고 비슷한 것 같고, 2번 하고 4번 하고 비슷하고 3번하고 6번 이렇게 그룹을 주는 거지 그룹 1 그룹이 그룹을 지어 가지고 이 그룹의 동기를 1번 5번은 ECP에 움직이고요. 2번 4번은 요렇게 움직이고 3번 6번 요렇게 움직이는 거죠. 요런 겁니다. 그죠 그러면 뭐다 저기에 구현은 다소 어렵지만 CPING의 시간 낭비를 많이 줄일 수가 있죠. 그죠 설명하실 때 알겠제 마이크로프레션 동작 시간에 차이가 날 경우 유리한 겁니다. 그죠 됐고요. 자 비동기식 비동기식은 어싱크러너스 해 가지고 이놈은 이론적인 이야기야 모든 마이크로 동작 마이크로 명령에 대해서 서로 다른 마이크로 사이클타임을 정의하는 거 그러니까 1번은 1번만큼 움직이고요. 2번은 2번만큼 3번은 4번만큼 5번은 4번만큼 이런 게 비동기식입니다. 그죠 불가능하다 이 말이에요.

화자 1
41:27
불가능 그죠 어 이거는 뭐요 아니 이론적이지만 씹히면 시간 낭비는 전혀 없잖아. 딱딱 맞추니까 그죠 없으라면 저기의 구현이 복잡해져 실제로는 거의 사용하지 않습니다. 이런 기계를 만들 수가 없죠 제일 좋은 건 이건데 아주 고 명령에 맞춰만 움직인대요 그 명령에 맞춰 가지고 CALPOICE가 일어나면 얼마나 좋아 그렇지만 이거는 있을 수도 없습니다. 그래서 컴퓨터는 동기구정식으로 구현 버버벅 버 이래 되니 골치 아픈 거야. 사람이 감당을 못하면 어디로 될지 몰라 어디로 뛸지 몰라 됐제 에 아주 쉬운 강의 자 넘어갑니다. 자 여러분 또 중요한 파트가 나오네요. 자 계속 이어지는 거 메이저 스테이트 자 메이저 스테이트 중요합니다. 자 여러분 현재 우리는 시피유의 전자명령어를 배우고 있습니다. 시피뉴의 가장 기본 동작 마이크로 동작을 배우고 있습니다.

화자 1
42:23
벌써 거기까지 왔네 자 이 메이저스테이트의 정의는 뭐냐 하면 오늘날 CPU의 상황을 CPU를 어 이해하는 즉 어 상태를 파악하는 건 2가지가 있습니다. 타이밍 스테이트와 메이저 스테이트가 있는데, 타이밍 스테이트를 잘한다. 대학원 과정에서 다루고 참 우리 학부과정에선 안 달아요. 이거는 뭐냐 시간에 관한 정보로 CPU의 동작을 해석하는 겁니다. 그죠 그래서 필요 없는 이야기고 모든 이제 CPU를 해석하는 방법에 많이 이용되는 게 메이저 스테이트 자 이 메이저 스테이트의 정의는 뭐냐 하면요 메이저스테이트 다른 말로 메이저 사이클이라고 합니다. 스테이터 현재 CPU가 무엇을 하고 있는가를 나타내는 상태로서 CPU가 무엇을 위해 메모리에 접근하느냐에 따라서 패치 스테이터 인다일드 스테이터 액시큐트 스테이터 인터렉트 스테이트 4가지로 분류한다. 이 말입니다. 자 이게 무슨 말이냐 이 말입니다. 여러분 잘 들어라 아주 중요하다 오늘날 자 이게 메모리고 항상 이 그림이 나오죠.

화자 1
43:21
이놈이 시피뉴입니다. 그죠 시피뉴 자 오늘 시피뉴와 일을 하기 위해서 메모리 열심히 명령어를 가져오고 그죠 해도하고, 또 데이터도 가져오고 왔다 갔다 수많은 사이클 활동을 합니다. 사이클 자 이렇게 CPIUMA 메모리에 가서 이렇게 왔다 갔다 데이터를 어 가지고 왔다가 갔다 놨다가 이런 걸 사이클이라 하죠. 사이클 사이클이라 하제 예 사이클이랍니다. 자 그런데 여러분 앞에서 마찬 하나의 명령어가 수행되는 데 보니까 몇 단계로 나눠지더라 하나의 명령어 봤죠 뭐 명령어를 가져오고 됐나 어 명령어를 해독하고 그 다음에 오프리 데이터를 가져오고 그리고 수행을 하죠. 수행을 해요. 그죠 주로 많이 시간이 뺏기는 게 뭐고 시피뉴가 시피뉴가 메모리에 가서 가져오는 시간 시피뉴가 메모리에 가는 시간이 70프로를 차지하잖아. 가져와서는 금방 처리하죠. 지 안에서는 남의 집에 가서 가져오는 시간이 많이 걸립니다.

화자 1
44:20
그죠 그래서 오늘날 CPU는 항상 크게 4가지 4가지 큰 상황을 가져와요. 4가지 큰 바위 얼굴 4가지 얼굴을 가지고 있습니다. 4가지 항상 CPU는 4가지 상태 변화를 일으킨다니까 4가지 상태변화를 어 근데 이 4가지 동작이 4가지 상태 변화가 어떠냐 패치 스테이터 자 중요하다 인다이렉트 스테이터 엑시큐트 스테이터 인터렉트 스테이트 4가지가 있는데, 이 4가지 상황이 4가지 사이클 4가지 상황이 어떻게 변하느냐 시피뇨가 메모리에 갈 때마다 변하는 겁니다. 메모리에 갈 때마다 알겠나 그런 이야기예요. 현재 시피뇨가 무엇을 하고 있는가 나타내는 거의 레저스테이터 다른 말로 메이저 사이클이라 하죠. 근데 이거는 상황 변화가 언제 된다. CPU가 메모리에 어떤 목적을 가지고 갈 때 상황 이 CPU의 상황이 변한다. 이 말이야. 그러니까 메모리 메이저 스테이트를 메이저 사이클이라 합니다. 사이클 이 사이클마다 변한다.

화자 1
45:20
이 말이에요. 그죠 이렇게 시프뉴의 4가지 사이클 4가지 스테이트를 지금부터 배워보자 이 말입니다. 그죠 어 이 사이클 횟수가 곧 뭐다 스테이트 변화 횟수입니다. 그죠 자 이게 무슨 말이냐 자 이게 한번 보자 이 말입니다. 제가 이런 이야기다 이 말입니다. 만약에 에드엑스라는 명령어죠 하나의 명령어죠 연산자 데이터죠 데이터가 들어있는 장소의 주소죠 메모리 엑스 번지에 있는 데이터를 더하라는 거 아니야. 자 이놈이 이제 또 주소도 뭡니까? 주소 지정 그 주소가 의에 대해서 이게 1주소 될 수가 있고 1주소 1주손데 1주소죠 1주손데 이게 뭐냐 지정 방식이 메모리 엑스 번지에 가서 바로 가져올 수 있는 직접 주소일 수도 있고 또는 가서 메모리 가서 가져왔는데 또 가져가는 거 있고 간접이 있고요. 또 간접의 직접이죠. 간접에 직접도 있을 수 있고 간접에 간접도 있을 수가 있죠.

화자 1
46:12
간접 직접 빠졌네 에 그러니까 1주소이면서 이게 직접 주소면 뭐다 CPU는 명의원을 가져오자 가져오는 게 패쳐 스테이트입니다. 가져와서 근데 바로 실행하면 집적이니까. 이제는 가져왔기 때문에 바로 실행하죠. 엑시큐트로 갑니다. 근데 간접의 직접이면 가서 간접 주소로 갔다가 에이시큐트로 갑니다. 3번 갑니다. 메모리에 간접의 간접은 명령을 가져오고 또 메모리에 가서 주소 가져오고 메모리 와서 주소 가져와서 실제 데이터 가지고 수행을 합니다. 4번 갑니다. 에 그러니까 명령어 에드엑스라는 하나의 명령어도 2번 만에 2번 메모리가 2번 가서 끝내는 게 있고 메모리 3번 가서 끝내는 게 있고 4번 가서 끝내는 게 있어요.

화자 1
46:59
알겠나 그래서 시피뉴 가요 여러분 잘 봐 중요하기 때문에 계속 간다 시피뉴가 메모리에 1번 가서 2번 가서 끝내는 명령을 우리는 투사이클 명령 자 엔사이클 명령 함 볼까 엔사이클 명령어 CPU가 메모리 1번 만에 가서 명령을 수행 끝내는 걸 원사이클이죠. 원사이클 원사이클 명령어라고요. 1번 가고 2번 만에 가서 끝내는 걸 투사이클 명령어 1번 가고 2번 가고 3번 가서 명령어 수행을 끝나는 거 삶사이클 어 1번 가고 2번 가고 3번 가고 4번 가서 끝내는 거의 사사이클 이렇게 나눠지죠 알겠는데 요거는 2사이클 명령어고 요거는 3사이클 요건 4사이클입니다. 이해되나 명령의 형태와 주소 지정 방식과 방식에 의해서 달라지는 겁니다. 이해되제 그래서 시 필요가 메모리 갈 때마다 상황 변화가 일어난다는 거예요. 그래서 얘가 이런거죠.

화자 1
47:56
자 넘어갑시다 예 자 이거 뭐 아주 어 자 이거 한번 보세요. 오늘날 시피뉴는요 제어가 어떻게 되느냐 4가지 상태를 제어합니다. 스테이트 사이클의 제어가 요거는 에프라는 플리플랍 FRFR에 신호가 들어오제 신호가 들어오면은 이게 무슨 말이냐 하면은 디코드가 해독을 하죠. 이사회독기지 이사회독기 이사회독기입니다. 그래서 시제로에서 신호가 발생하면 이거는 패치 스테이트예요. 지금 씹히면은 패치 스테이트를 몰아가고 있어요. 요 선에다 요 선의 신호가 들어오면은 이거는 인다이렉트 스테이트입니다. 간접 스테이트고요. 요성의 의미가 있으면 엑시큐트 스테이트고 시제로선이 스테이트 있으면 저기다 인터랙터 스테이터 인터랩 스테이터 그러니까 CPU는 이 저기에 의해서 CPU는 4가지 상황을 만든 거 즉 시제로에서 신호가 발생하면 CPU의 패치 스테이트로 변하고요.

화자 1
48:53
인다이렉트 엑시큐트가 되는 겁니다. 그렇죠. 그리고 이렇게 되는 거죠. 이거 이사이독기죠 이사이독기에 의해서 상황 변화가 일어난다 그죠 제어 신호를 제어기가 발생하죠. 그죠 이 발생된 제어신호에 의해서 자 이 시제로는 뭐다 패처 스테이터 C와는 인터넷을 스텝으로 몰고 G2는 애시큐트를 유도하고, 씨쓰리에 불이 들어오면 이는 인터렉트 스텝 즉 에프는 1 R은 1이 들어오면은 시 균의 상황은 뭐다 인터랙트다 이 말이죠. 그죠 에프는 제로 에프는 제로 R을 제로 순호가 들어오면은 패치고 그죠 그런 말이다. 제로 1이 들어오면 인 다이렉트 1 제로가 들어오면 엑시퓨터 11이 들어오면은 CPU의 상황은 뭐다 인터렉트 상황으로 간다는 거죠. 그죠 CPU에 이렇게 저기에 저신호에 의해서 크게 4가지 큰 동작을 한다. 이 말입니다. 그죠 4가지 그러니까 에프알의 프리프라임 상태에 따라서 메이저 스테이트가 결정된다.

화자 1
49:52
패치냐 인다이렉트냐 애시큐트냐 넘어갑시다 예 좋아요. 좋습니다. 자 이 메이지스테이트의 변천 과정 이 그림 하나면 다 끝난다 이 그림만 하면 다 끝난다 시필유는 크게 4가지 얼굴을 가졌는데 이 4가지 상황 이 4가지 상황이 메모리에 갈 때의 상황이 변하기 때문에 이 시핑 위의 메이저 스테이트를 다른 말로 메이저 사이클이라고 하잖아요. 그제 어 그래서 이 4가지 상황에 그림을 한번 그려봤습니다. 모식도 첫 번째 패치 스테이트죠 그죠 이 패치 스테이트는 CPU가 뭐다 메모리의 명령어를 가져가기 위해서 가져오기 위해서 메모리 가면은 CPU는 패치 스테이트예요. 가져와서 주소를 해독해 보니까 직접 주소더라 예를 들면 에드 X를 가져왔죠 가져와서 이 X를 해독해 보니까 집적이면 뭐다 바로 애시큐트 스테이트로 가버립니다. 집적이면은 그럼 엑시큐트는 뭐야?

화자 1
50:51
이제 엑스 번지에 가서 가보니까 실제 데이터가 있죠. 실제 데이터를 가져오기 위한 스테이트예요. 가져와서 실행을 해버립니다. 그리고 명령어 수행이 끝나고 다시 CPU는 패치로 갑니다. 근데 요번에 인제 가져왔는데 애들이 어떤 명령을 또 인제 뭐 MUL X라는 명령을 가져왔는데 이 엑스 번지가 보니까 뭐야? 간접 주소더래요. 간접주소 간접주소는 뭐고 메모리에 엑스 번지에 가니까 데이터가 들어있는 게 아니고 뭐다 Y라는 번지가 들어 있다는 거제 그래서 Y번지에 가니까 데이터가 들어있는 이런 유효 주소가 Y가 되는 이런 간접주소 아니냐 그러니까 요렇게 해석해 보니까 엑스가 간접 주소면은 뭐다 인다 간접 스테이트로 가요 근데 갔는데 또 뭐다 간접의 간접이다. 카면은 간접의 간접을 여기는 먹어 와이 번지가 아니라 데이터가 있는 게 아니고 제트라는 번지가 있제 제트에 가니까 다리아 쪽 데이터가 있으니까 이게 뭐야? 간접의 간접이죠. 이럴 때는 다시 인다이렉트를 1번 더 그칩니다. 그리고는 이제 유효 주소를 찾았다.

화자 1
51:50
즉 이펙티브 어드레스를 찾았을 때에는 다시 애쉬트로 옵니다. 그죠 그렇죠. 그리고 또 명령어가 끝내면은 다시 패치로 갑니다. 패치로 갔는데 가져왔는 명령 요번에 원사이클의 명령어다 원사이크의 명령어가 뭐냐 하면 이런 거예요. 예를 들면은 점프 엑스 이런 거 한번 봐요. 점프 엑스는 뭐고 자 미국 영어가 자 엑스 번지 엑스 번지를 100번지로 하자 100번지 가서 명령어를 가져 여기 명령어가 점프 아니 요 에이 번지로 합시다. 점프 엑스가 있어요. 점프 엑스 그리고 이제 비 번지 비 번지를 101번지로 합시다. 여기에 뭐 또 명령어가 있고 씨 번지를 102번지로 하자 여기도 명령어가 있고 쭉 하니까 엑스 번지가 이래 있어요. 그죠 엑스번지가 만약에 105번지로 합시다. 에 여기에 어떤 또 명령어가 뭐 SUV 뭐 엑스가 있다. 뭐 서브트랙 뭐 예를 들면은 케이가 있다. 합시다. 그러면은 원사이클 명령어 뭐야?

화자 1
52:48
점프엑스는 뭐고 오늘날 자 점프 저 명령어는 뭐야? 100번째 수행하고 그다음에 101번지 수행하고 순차적으로 합니다. 근데 점프 엑스라는 이 제어명령어예요. 제어명령어 원사이클 명령어입니다. 제어명령어 어 근데 이게 뭐야? 에이 다음에 비를 수행하지 말고 엑스 번지를 바로 수행해라 엑스 번지를 요런 게 원사이클 명령어요. 그러면 뭐다 원사이클 명령어가 뭐다 명령원을 가져와서 해득 해보니까 엑스 번지로 가냐 하니까 다시 엑스 번지에 가서 명료원을 가져와야 되기 때문에 원사이클 같은 경우는 패치에서 패치로 가버립니다. 다시 명령으로 가져가야 되는 거지 자 이게 무슨 말인지 다시 한번 할게 이해되나 그래서 또 이제 요번에 가져왔는 미용 용어가 또 지적이면 있죠. 간접이면 있죠. 간접의 간접이면 있죠. 또 유혈주차적으로 이런 걸 계속 반복하는 거지 그리고 또 갔다가 이렇게 갔다가 이렇게 갔다가 수행하고 또 다음 명령을 수행하고 이런 사이클 활동을 벌입니다.

화자 1
53:45
그죠 뭐 큰 4가지 얼굴을 가지고 이해되나 그런데요. 자 요거 엄마 이해됐제 인터럽트는 뭐냐 바로 뒤에 배웁니다. 인터렉트 스테이트는 뭐냐 하면은 오늘날 CPU가 애시카드 스테이에서 명령을 수행하고 있어요. 명령 이렇게까지 수행하는데 수행이 끝나기도 전에 어떤 방해 요소가 들어옵니다. 즉 인터럽트 요청 신호가 발생돼요. 이게 인터럽트 가능한 게 뭐냐 하면 돌발 상황 방해 CPU가 일을 모하도록 하는 돌발 여기 인제 강의를 하고 있는데, 저 누가 아마 문자부터 들어와 강의 중단돼 가지고 이런 상황이 인터럽트가 발생했다. 캐거든. 이런 돌발 상황이 발생하면 CPU는 하던 일을 중단하고 인터럽트 스테이트 들어가서 인터랩트를 처리를 합니다. 처리하고 난 뒤에 다시 뭐다 원래 상태로 복귀해야 되겠죠. 그러니까 다시 패치해서 다시 가져와서 수행해야 돼 그죠 인터럽트 수행이 끝나면은 패치로 갑니다. 자 오늘 중요하다 여러분들 자 몇 분 지났습니까?

화자 1
54:44
시간 한 50분 지났어요. 예 에 50분 좋습니다. 자 오늘날 CPU는요 크게 이런 4가지 큰 스테이트를 변화시키면서 일을 합니다. 그리고 각각의 스테이트에 즉 패치 스테이트에서 해야 할 마이크로 동작 즉 마이크로 명령은 이미 세팅돼 있어 자 이게 무슨 말이냐 이미 기계화 돼 있다니까 패치 스테이트에서는 이렇게 해라 저렇게 하라 이미 정해져 있어 즉 패치 스테이트에서 해야할 마이크로프레션 마이크로 명령은 이미 설계돼 있다는 겁니다. 이게 뭐냐 우리가 공습경보 낮에 공석경보 딱 나면은 라면 사고 지하실에 들어가 숨고 숨죽이고 정해져 있듯이 어 이미 컴퓨터는요 자기가 해야 할 액션을 동작을 이미 기계화 전자화 돼 있는 거야.

화자 1
55:32
그러니까 우리 인간이 하지 즉 패치 스테이트면은 자 제어 장치가 패치 스테이트 제어션을 발생시키면은 어떻게 어떻게 어떻게 어떻게 어떻게 전자동작 이루어진다 저 우리가 탑승용 예상이 뭡니까? 뭐죠 A 누르고 플러스 100 누르고 플러스 누르고 천 누르면 1100 이래 나오잖아요. 이미 전자화 돼 있잖아. 그러니까 탁탁 누르면 고 동작을 하잖아요. 오늘 우리가 배우는 컴퓨터 단계 마지막엔 이거예요. 어 뭔 말인지 알겠나 이미 지가 지휘할 행위가 전자동작으로 즉 마이크로 오프레이션 마이크로명 이미 세팅되어 있다는 거야. 즉 패치 스테이트 딱 두드리면은 패치 스테이트는 이렇게 이렇게 이렇게 하다가 돼있다는 거예요. 엘시큐트 스테이트에서는 이렇게 이렇게 이렇게 움직여라 하는 게 돼 있다는 거야. 인다 이렇게 해서는 요렇게 요렇게 요렇게 저렇게 요렇게 요래요래 요래 요리조래 요리조리 요리조리 해 놨고 돼 있다는 거야. 그 인터랜트가 발생하면 요래요래 움직이라고 돼 있다는 거야.

화자 1
56:28
알겠나 그래서 오늘날 컴퓨터는요 하나의 명령을 수행하기 위해서 크게 4가지 스테이트를 변화시키면서 요런 원리로 그죠 자 명령은 들어갔다 직접 주소하면 XP 들어가고 명령 끝나면 여기 갔다가 또 어떤 명령을 가져오니까 간접히 다음에 요거 갖다가 요 가서 움직이고 그리고 유료주소 구하면은 요 오고요. 또 명령 끝나면 요거 하고 원사이클 명령은 여기서 요기도 가고요. 가져왔는데 인터넷부터가 발생하면 이쪽으로 갔다가요 여기서 또 처리하고 또 다음 명령을 가오고요. 다음 명령을 가져와서 또 집적이면 요거 갔다가요 끝나면 여기 갔다가요 다음 명령 가져오면 그 앉으면 요거 갔다가요 요거 수행했다가요 또 요거 요 갔다가요 요 지를 한다니까 요렇게 사이트를 변화시키면서 이미 정해진 신호를 발생을 딱딱 하면서 우리 인간의 명령어를 팍팍 수행해 줍니다. 그 이야기다 이 원리를 알아야 되겠죠. 그죠 뭔 말인지 알겠나 그래서 이 CPU의 상태 변이도 어 CPU가 CR 동작은 이미 세팅화 돼 있다. 기계화 돼 있기 때문에 요 4개 스테이트의 특징만 알면 된다는 겁니다.

화자 1
57:27
이해되제 이해되나 순자야 순자야 병태야 근데 여러분 자꾸 병태 순자만 부르니까 영자 씨가 화가 나 가지고 어 나는 친절한 영자씨인데 왜 영자 친절한 영자씨는 옛날 영화다 이미 친절한 영자씨 다음 나오는 게 뭡니까? 이제 어제 뭐요 그 저 아주 악질 통과 무슨 말이야. 통과 아 설렁해 예 좋습니다. 메이저스테이트 변이도 반드시 알아놔야 되겠죠. 이 그림 하나 가지고 모든 문제를 맞추자 넘어갑니다. 예 이제 한번 보자 이 말입니다. 아 이거 벌써 다 됐어요. 예 그럼 앞장을 다시 함 땡겨 주세요. 예 죄송합니다. 뒤에 인제 각 스테이트에 고건 다음 장에 하는 모양이다. 그죠 자 어 그러면 저 시간이 몇 분 정도 생중계기 때문에 이게 예 좋습니다.

화자 1
58:24
조금 마무리하자 그러면은 자 오늘 여러분들 다시 정리한다. 아주 중요한 거 배웠다 그죠 우리가 앞 시간에서 이제 우리 인간이 내린 명령어가 어떻게 표현되고 주소가 어떻게 지정되고 이런 거 명령에 의해서 배웠잖아. 근데 이제 오늘 이제 우리가 어떻게 됐어요. 에 하나의 명령문은 하나의 명령어로 표현됐다가 하나의 명령어가 수행되기 위해서는 뭐다 일련의 조직화된 전자명령어 마이크로 인스트럭션 마이크로 OPERATION을 수행해야 된다. 그죠 그래서 우리 오늘 마이크로 OPERATION에 대해서 지금 배우고 있었습니다. 그죠 그래서 마이크로 인스트럭션 그래서 그래서 우리가 MCTCCT도 배웠고 특히 메이저스테이트 이거 아주 중요했다. 그죠 아주 중요해 다시 이야기 안 해도 되겠지 패치 이 인다이렉트 엑시큐트 인터렉트 그죠 그래서 다음 시간에는 이제 요 각각에 대해서 각각에 대해서 특징들만 보면 끝나는 겁니다.

화자 1
59:23
특징들 보고 인터랩트 보고요. 그렇죠. 좋습니다. 그렇죠. 오늘 강의했는 거 굉장히 중요하다 이해되나 여러분 잘 이해하시고 오늘 또 생방송 2시간 동안 수고 하셨습니다. 자 내일 또 뜨거운 가슴으로 만나 뵙기를 약속드리면서 오늘은 여기까지 하겠습니다.

728x90
반응형
posted by 아이윤맨
: