29
발 발 발 2006081107 발 발 발 2006081098 발 발 발

발 표 자 2006081107 김 능 환 2006081098 이 선 주

Embed Size (px)

DESCRIPTION

Central Processing Unit. 발 표 자 2006081107 김 능 환 2006081098 이 선 주. CPU 의 개요. 1. Table of contents. 레지스터. 2. CPU 의 개요. 각종 계산이나 디바이스들이 제어를 하는 장치 PC 의 가장 중요한 부분을 이루고 있는 부품으로 산술연산과 논리연산 , 시스템 제어장치 그리고 주기억장치를 포함하는 것. CPU 란 ?. CPU 의 개요. CPU(Central Processing Unit). Register. - PowerPoint PPT Presentation

Citation preview

Page 1: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

발 표 자 2006081107 김 능 환2006081098 이 선 주

Page 2: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

Table of contents

Page 3: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 각종 계산이나 디바이스들이 제어를 하는 장치

• PC 의 가장 중요한 부분을 이루고 있는 부품으로 산술연산과 논리연산 , 시스템 제어장치 그리고 주기억장치를 포함하는 것

Page 4: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

CPU(Central Processing Unit)

CPU 가 계산을 하면 그 계산 값을 메모리는 기억하는 관계이다 .

Page 5: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• CPU 가 자신 및 주변기기들을 컨트롤할수 있는 장치

• 모 든 컴 퓨 터 시 스 템 을 제 어 하 는 데 사용되는 요소

• 메모리로부터 데이터 명령 , 메모리 해석 및 실행 등을 수행

Page 6: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 프로세스 레지스터라고도 한다 .

• 레지스터는 CPU 내의 데이터를 저장하고 CPU 가 데이터 처리를 위한 기본적인 저장 공간

• 메모리와 다른 점은 하드웨어 적으로 직접 ALU 와 연결되어 계산이 이루어 지며 , 메모리의 버퍼 역할을 하게 된다 . 메모리의 값을 레지스터로 옮겨 놓고 계산을 한 다음 다시 메모리로 갈 수 있다 . 이때는 버스를 이용하여 신호를 주고 받는다 .

Page 7: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• CPU 의 가장 중요한 기능으로 기본적으로 덧셈 , 뺄셈 , 나눗셈 , 곱셈과 논리연산을 할 수 있다 .

• 논리연산이라 참 , 거짓으로 구분될 수 있는 연산

Page 8: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 메모리나 주변 장치와 데이터를 주고 받을 수 있게 해주는 역할을 담당

Page 9: 발 표 자    2006081107  김 능 환 2006081098  이 선 주
Page 10: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 명령코드만 존재하며 스택 (stack) 구조의 컴퓨터에서 사용되는 방식

• 모든 연산을 스택에 있는 자료를 이용하여 수행하므로 스택머신 이라고도 하며 수식을 Postfix 형태로 변경해야 하며 스택을 사용하므로 원래의 자료가 남지 않는다 .

• Postfix 표현방법 : A B +

• ADD : ( SP + 1 ) ( SP ) + ( SP + 1)

Page 11: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 명령코드와 1 개의 주소로 구성되며 누산기(Accumulator) 구조의 컴퓨터에 사용

• 누산기란 ? 컴퓨터의 중앙처리장치에서 더하기 , 빼기 , 곱하기 ,

나누기 등의 연산을 한 결과 등을 일시적으로 저장해 두는 레지스터

• ADD Y:X X+Y

Page 12: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 명령코드와 2 개의 주소로 구성되며 가장 일반적인 경우이며 범용 레지스터 구조의 컴퓨터에 사용되며 주소에 레지스터나 메모리 주소를 지정

• ADD Y, X:Y X+Y(X, Y 2- 주소 지정 )

Page 13: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 명령코드와 주소 3 개로 구성되며 범용 레지스터 구조의 컴퓨터에 사용되며 주소는 레지스터나 메모 리의 주 소 또 는 연 산결과 를 저 장하 나 연산할 때 프로그램의 길이를 짧게 할 수 있으나 명령어의 길이가 길어지는 단점

• ADD X, Y, Z:Z X+Y(X, Y, Z 3- 주소 지정 )

Page 14: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

메모리에서 레지스터로 옮기는 것

CPU 에서 메모리로 옮기는 것

레지스터간의 이동

스텍에서 인출하는 경우

Page 15: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

두 레지스터 사이에 Exchange, 레지스터와 입출력

장치

사이

레지스터와 스택 사이에서 스택에 저장하는 것

다음 명령으로 건너뛰는 것

Page 16: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 오퍼랜드 값 자체가 실제 데이터 값을 지정하는 방식

• 변수의 초기값을 설정하거나 상수를 사용 또는 정의할 경우 사용

• 장점 - 메모리를 참조할게 없어서 처리속도가 빠르다

• 단점 - 주소 필드 내에 피연산자를 두기 때문에 워드

길이에 비해 데이터를 표현할 길이가 짧다

Page 17: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 주소 필드가 오퍼랜드의 실제적인 주소를 포함하는 즉 시 오퍼랜드가 직접 접근할 주소를 가지고 있는 형태

• 프로그램의 주소와 기억장치의 주소가 동일한 주소 지정 방식으로 한 번의 메모리 참조만이 있을 뿐 특별한 연산은 없다 .

• 장점 - 명령어 형식이 간단

• 단점 - 제한된 주소 공간을 제공하므로 융통성이 없다 .

Page 18: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 직 접 주 소 방 식 의 문 제 점 을 해 결 하 기 위 한 것 으 로 오 퍼 랜 드 필 드 가 메 모 리 내 의 주 소 를 참 조 하 여 그 주소로부터 유효 번지를 계산하여 메모리에 접근하는 방식

• 장점 - 짧은 길이를 가진 명령어로 큰 용량의 기억 장 소의 주소를 지정 할 수 있다 .

• 단점 - 명령을 수행을 위해 2 번의 메모리를 참조해야 됨 1 번은 오퍼랜드의 주소 2 번은 오퍼랜드를 얻기 위해 .

Page 19: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 직접 주소 지정 방식과 유사

• 차이는 오퍼랜드 필드가 메인 메모리의 주소가 아닌 레지스터를 참조한다는 점만 조금 다름

• 장점 - 명령을 위한 주소 필드가 작아지며 메모리를 참 조 하지 않아도 된다 .

• 단점 - 주소를 지정하는 공간이 적다 .

Page 20: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 간접 주소 지정 방식과 비슷하지만 오퍼랜드 필드가 메모리 위치가 기억된 레지스터를 참조하는 것이 레지스터 간접 주소 지정 방식

• 장점 - 많은 주소 공간을 활용 할 수 있다 .

• 단점 - 간접 주소 방식보다는 메모리 참조가 적게 일 어 나지만 여분이 메모리 참조가 필요

Page 21: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 프로그램 계수기의 내용을 명령어의 피연산자에 더하여 유효 주소를 계산하는 방식

• 분기 주소가 그 명령어 자신의 주변에 있을 때 분기형 명령어와 자주 사용

• 전체 주 기억 장치의 주소를 나타내는데 필요한 비트들의 수에 비교할 때 보다 적은 수의 비트를 가지고 지정할 수 있는 방식

Page 22: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 명 령 어 의 오 퍼 랜 드 부 분 과 베 이 스 레지스터의 내용이 더해져서 유효 번지가 결 정 되 며 인 덱 스 주 소 지 정 방 식 에 서 인 덱 스 레 지 스 터 대 신 에 베 이 스 레지스터가 사용된다는 점 외에는 모두 같다 .

Page 23: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 명령어의 오퍼랜드부분과 인덱스 레지스터의 내용이 더해져서 실제 참조할 유효 번지가 결정 되는 방식으로 계산에 의해 주소를 지정하는 방식

• 배열 구조에 용이하지만 시간 소요가 많다는 문제를 가지고 있다 .

Page 24: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 완전 주소방식 정보가 데이터 , 주소이거나 구별하지 않고 직접 매핑

시킬 수 있는 완전한 주소

• 약식 주소방식 주소의 일부분을 생략하며 계산에 의한 주소는

대부분약식 주소에 속한다

• 생략 주소방식 주소를 구체적으로 나타내지 않아도 원하는 정보가

기억된 곳을 알 수 있는 경우에 사용할 수 있다 .

Page 25: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 푸 시 다 운 스 택 을 간 단 히 부 는 것 으 로 기억장치에 데이터를 일시적으로 저장하여 필 요 시 에 꺼 내 어 사 용 할 수 있 도 록 기억장치 , 레지스터의 일부를 할당해 사용하는 임시적인 데이터 저장장치

Page 26: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

• 작업 레지스터 , 스크래치패드 레지스터 라고도 불림

• CPU 가 자 신 의 작 업 을 위 한 다목적 으 로 사 용 하는 레지스터를 범용레지스터라구 한다 .

• 범용 레지스터의 중도 목적 CPU 내에서 생성하는 데이터를 임시로 보관 하는 것이지만 각 레지스터는 여기서 끝나지 않고 때로는 특별한 용도로 여러가지 연산을 할 수 잇도록 설계 되었다 .

그 중 누산기가 제일 많이 쓰임

Page 27: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

명령레지스터로 CPU 가 현재 수행하고 있는 명령어를 기억

기억장치로부터 입 /출력되는 데이터의 주소를 기억하고 있는 레지스터

기억장치로부터 입 /출력되는 데이터 자체를 기억하고 있는 레지스터

Page 28: 발 표 자    2006081107  김 능 환 2006081098  이 선 주

프로그램 카운터로 CPU 내의 제어장치 레지스터에 속하며 다음에 실행할 명령어의 번지를 기억

메모리 간에 대량의 데이터를 옮길 때 시작지와 목적지의 위치를 가리키는 용도로 사용

Page 29: 발 표 자    2006081107  김 능 환 2006081098  이 선 주