34
Mi Jung Choi [email protected] Dept. of Computer Science 2 2 장 장장장 장장장 장장 장장 장 장장장 장장장 장장 장장

2 장 컴퓨터 동작의 기본 개념

Embed Size (px)

DESCRIPTION

2 장 컴퓨터 동작의 기본 개념. 컴퓨터 시스템의 기본 구성과 동작 컴퓨터 연산 단위 : 비트 , 음수의 표현 , 바이트 , 단어의 개념 2 진수 연산과 16 진수 표현 컴퓨터 조직 8086 프로세서 , 시스템버스 , 기억장치 ,I/O 장치 명령어의 실행 개념 판독과 기록사이클 기억장치의 주소관리 방법과 형태. 학습 내용. 비트 (bit) 니블 (nibble) 바이트 (byte) : 고유주소 문자 (character) 코드 : 비트들이 모여서 문자를 표현하는 방법 - PowerPoint PPT Presentation

Citation preview

Page 1: 2 장 컴퓨터 동작의 기본 개념

Mi Jung [email protected]

Dept. of Computer Science

22 장 컴퓨터 동작의 기본 개념장 컴퓨터 동작의 기본 개념

Page 2: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

학습 내용학습 내용

• 컴퓨터 시스템의 기본 구성과 동작

• 컴퓨터 연산 단위 :

– 비트 , 음수의 표현 , 바이트 , 단어의 개념

– 2 진수 연산과 16 진수 표현

• 컴퓨터 조직

– 8086 프로세서 , 시스템버스 , 기억장치 ,I/O 장치

• 명령어의 실행 개념

– 판독과 기록사이클

• 기억장치의 주소관리 방법과 형태

Page 2

Page 3: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

자료의 단위자료의 단위

• 비트 (bit)

• 니블 (nibble)

• 바이트 (byte) : 고유주소

• 문자 (character)

– 코드 : 비트들이 모여서 문자를 표현하는 방법

• 단어 (word) : 주기억장치와 CPU 사이 전송되는 정보의 단위

• 항목 (item) : 필드 , 레코드 구성의 논리적 자료 단위

• 레코드 , 파일

• 블록 : 보조기억장치와 컴퓨터 내부 사이 전송되는 다수의

레코드의 묶음

Page 3

Page 4: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

진법 및 진법변환진법 및 진법변환

• 진법 : 자리수를 정하는 기수법 ( 예 : k 진법은 0 에서 k-1

까지의 숫자로 모든 수를 나타냄 , k 진법으로 표현된 수를 k

진수라 함 )

• 소수점이 있는 경우 (2 를 곱한 정수부분을 오른쪽에 쓰고

소수부분에 다시 2 를 곱한다 . 소수부분이 없어질 때까지 )

• 0.375(10) = 0.011(2)

• 2 → 8, 16 → 10

• 11000.0101(2) → 30.24(8) → 24.3125(10)

Page 4

Page 5: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

정수의 표현정수의 표현

• 가장 왼쪽의 한 비트를 부호비트로 한다 .

• 음의 정수를 나타내는 방법

– 부호 절대값의 방법 : -(2n-1-1)~(2n-1-1)

– 1 의 보수 방법

– 2 의 보수 방법

Page 5

Page 6: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

음수의 표현음수의 표현

• r 진수에서 r-1 의 보수

– r-1 에서 각 자리 숫자를 뺀다

– 2 진수 0011 에 대한 1 의 보수

(ex) 1111-0011=1100

– -(2n-1-1)~(2n-1-1)

• r 진수에서 r 의 보수

– r-1 의 보수에 1 을 더함

– 2 진수 0011 에 대한 2 의 보수

(ex) 1100+1=1101

– -(2n-1)~(2n-1-1)

Page 6

Page 7: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

22 의 보수 방법의 장점의 보수 방법의 장점

• 계산 결과가 동일한 2 의 보수

• 뺄셈이 덧셈으로 계산

– cpu 의 덧셈에 대한 논리회로가 뺄셈도 수행 가능

• 0(zero) 에 대한 하나의 표현

Page 7

Page 8: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

예예

• 2 - 1 = 1

부호 절대치 방법

00000010 (2)10000001 (-1)

10000011 (-3)

1 의 보수 방법

00000010 (2)11111110 (-1)

00000000 (0)

2 의 보수 방법

00000010 (2)11111111 (-1)

00000001 (1)

Page 8

Page 9: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

44 비트에 의한 정수표비트에 의한 정수표

22 진수진수 22 의보수의보수 11 의보수의보수 양수양수0111 0111 0110 0110 0101 0101 0100 0100 0011 0011 0010 0010 0001 0001 0000 0000 1111 1111 1110 1110 1101 1101 1100 1100 1011 1011 1010 1010 1001 1001 1000 1000

7 7 6 6 5 5 4 4 3 3 2 2 1 1 0 0 -1 -1 -2 -2 -3 -3 -4 -4 -5 -5 -6 -6 -7 -7 -8-8

7 7 6 6 5 5 4 4 3 3 2 2 1 1 0 0 0 0 -1 -1 -2 -2 -3 -3 -4 -4 -5 -5 -6 -6 -7 -7

7 7 6 6 5 5 4 4 3 3 2 2 1 1 0 0 15 15 14 14 13 13 12 12 11 11 10 10 9 9 8 8

Page 9

Page 10: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

바이트의 개념바이트의 개념

• 의미를 주는 기억단위

• 8 개의 비트로 구성

• ASCII 코드 : 각문자에 번호를 붙혀 놓은 것

11 바이트 바이트 = 8= 8 비트비트

00 11 00 00 00 00 00 11

‘‘AA’’=65=65(10)(10)=01000001=01000001(2)(2)=41=41(16)(16)

Page 10

Page 11: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

88 비트에 의한 정수표비트에 의한 정수표

22 진수진수 정수 정수 1010 진수진수 문자형문자형 (( 양수양수 )) ASCII ASCII 문자문자

0111 1111 0111 1111 0111 1110 0111 1110 …   …    …… …   …    ……

0100 0001 0100 0001 …   …    …… …   …    ……

0000 0001 0000 0001 0000 0000 0000 0000 1111 1111 1111 1111 …   …    …… …   …    ……

1000 0000 1000 0000

127 127 126 126 ………… ………… 65 65 ………… ………… 1 1 0 0 -1 -1 ………… ………… -128 -128

127 127 126 126 ………… ………… 65 65 ………… ………… 1 1 0 0 255 255 ………… ………… 128 128

DEL DEL ~ ~ ………… ………… A A ………… …………

Null Null

………… ………… …………

Page 11

Page 12: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

단어단어 (Word)(Word) 의 개념의 개념

• 자료를 처리하는 기본단위

• 컴퓨터에 따라 정의

• 1 단어 = 8,16,32,64 비트

• BUS 나 register 와 밀접한 관계

Page 12

Page 13: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

비트비트 ,, 니블니블 ,, 바이트바이트 ,, 단어단어 ,,긴단어긴단어

비트 = 1 비트 , 표현범위 = 0~10

니블 = 4 비트 , 표현범위 = 0 ~ 15

3 0

바이트 = 8 비트 , 표현범위 = 0 ~ 255

7 4 3 0

단어 = 16 비트 , 표현범위 = 0 ~ 65535

15 좌측니블 078 우측니블

긴단어 = 32 비트 , 표현범위 = 0 ~ 4294967295

31 15 우측 단어 0좌측 단어

Page 13

Page 14: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

22 진수의 연산규칙진수의 연산규칙

• 1 + 1 = 10

• 1 + 0 = 1

• 1 * 0 = 0

• 1 * 1 = 1

• 1 - 1 = 0

• 10 - 1 = 1

Page 14

Page 15: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

22 진수 연산의 예진수 연산의 예

10111 = 24+0+22+21+20 = 23

11101 = 24+23+22+0+20 = 29

110100 = 25+24+0+22+0+0 = 52

++

Page 15

Page 16: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

데이터의 데이터의 1616 진수 표현진수 표현

니블니블

00 00 00 11 1111 0011

니블니블

1313(10)(10)

11(16)(16) DD(16)(16)

11(10)(10)

1D1D(16)(16)

Page 16

Page 17: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

컴퓨터의 조직컴퓨터의 조직

기억장치기억장치

주소버스주소버스

데이터버스데이터버스

제어버스제어버스

시시스스템템버버스스

RAM ROMRAM ROM

프로프로세서세서 입출력입출력

장치장치

보조기억보조기억장치장치

모뎀모뎀

CRTCRT키보드키보드

Page 17

Page 18: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

마이크로프로세서 내부구조마이크로프로세서 내부구조

AHAH .. ..DHDH

SP, BP, SI, DISP, BP, SI, DI

명명령령어어실실행행

ALUALU

임시임시레지스터레지스터

플래그 레지스터플래그 레지스터

EUEU제어제어시스템시스템

AdderAdder

CSCSDSDSSSSSESESIPIP

내부 커뮤내부 커뮤니케이션니케이션레지스터레지스터

명령큐 버퍼명령큐 버퍼

버스버스제어제어로직로직

(EU)(EU) (BIU)(BIU)ALAL .. ..DLDL

Page 18

Page 19: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

레지스터레지스터

• 자료의 임시 저장소

• 범용 레지스터 , 세그먼트 레지스터 , 명령어 포인터 ,

인덱스 레지스터

• 8086/8088 : 16 비트 레지스터 14 개

• 펜티엄 프로세스 :

32 비트 레지스터 10 개 + 16 비트 세그먼트 레지스터

6 개

Page 19

Page 20: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

시스템 버스시스템 버스

• 프로세스 , 기억장치 , 입출력 장치는 버스라 불리우는 신호선을

통하여 결합

• 주소 버스 , 데이터 버스 , 제어 버스

• 주소 버스 : 기억용량의 크기 결정

• 데이터 버스 : 한 사이클 시간에 읽어올 수 있는 데이터 양 결정

Page 20

Page 21: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

제어 버스제어 버스

• MEMR(Memory Read)

• MERW(Memory Write)

• IOR(I/O Read)

• IOW(I/O Write)

• UBE(Upper Byte Enable)

• 주소 신호는 메모리와 입출력 포트에 공용으로 사용

Page 21

Page 22: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

주기억장치주기억장치

I.C 메모리

RWM

ROM

RAM

SAM

DRAM

SRAM

FPROM

mask ROM

EPROM

PROM

EEPROM

UVPROM

Sequential Access Memory 사용분야가 거의 없음

Static RAM 1 비트 당 6 개의 트랜지스터캐시 메모리에 이용

Dynamic RAM 1 비트 당 트랜지스터 /콘덴서 각 1 개대용량 메모리1msec 이내에 리플래쉬

Processor 와 결합하여 동작하고 있는 상태에서는기록되지 않는다

생산 시 값 결정

Field ProgrammableROM

Erasable PROM지우는 방식에 따라

UtraViolet

ElectronicErasable

Page 22

Page 23: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

컴퓨터 동작의 판독사이클컴퓨터 동작의 판독사이클

기억장치기억장치기억장치기억장치

주소버스주소버스주소버스주소버스

데이터버스데이터버스데이터버스데이터버스

제어버스제어버스제어버스제어버스

시시스스템템버버스스

RAM ROMRAM ROMRAM ROMRAM ROM11 단계단계 :: 판독요구신호판독요구신호

111122

프로세서프로세서프로세서프로세서

22 단계단계 :: 주소전송주소전송

Page 23

Page 24: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

컴퓨터 동작의 판독사이클컴퓨터 동작의 판독사이클

주소버스주소버스주소버스주소버스

데이터버스데이터버스데이터버스데이터버스

제어버스제어버스제어버스제어버스

시시스스템템버버스스

33 단계단계 :: 데이터전송데이터전송

기억장치기억장치기억장치기억장치

RAM ROMRAM ROMRAM ROMRAM ROM

33

44 단계단계 :: 판독완료신호판독완료신호

4444

프로세서프로세서프로세서프로세서

Page 24

Page 25: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

컴퓨터 동작의 기록사이클컴퓨터 동작의 기록사이클

기억장치기억장치기억장치기억장치

주소버스주소버스주소버스주소버스

데이터버스데이터버스데이터버스데이터버스

제어버스제어버스제어버스제어버스

시시스스템템버버스스

RAM ROMRAM ROMRAM ROMRAM ROM11 단계단계 :: 기록요구신호기록요구신호

111122

22 단계단계 :: 주소전송주소전송

프로세서프로세서프로세서프로세서

Page 25

Page 26: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

컴퓨터 동작의 기록사이클컴퓨터 동작의 기록사이클

기억장치기억장치기억장치기억장치

주소버스주소버스주소버스주소버스

데이터버스데이터버스데이터버스데이터버스

제어버스제어버스제어버스제어버스

시시스스템템버버스스

RAM ROMRAM ROMRAM ROMRAM ROM33 단계단계 :: 데이터전송데이터전송

33

44 단계단계 :: 기록완료신호기록완료신호

4444

프로세서프로세서프로세서프로세서

Page 26

Page 27: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

명령어의 실행 단계명령어의 실행 단계

명 령 어 인 출명 령 어 인 출 명 령 어 해 독명 령 어 해 독명 령 어 해 독명 령 어 해 독

명령어→명령어→ EUEU필요한 동작 판단필요한 동작 판단명령어→명령어→ EUEU필요한 동작 판단필요한 동작 판단

데 이 터 인 출데 이 터 인 출데 이 터 인 출데 이 터 인 출

연산항 주소에연산항 주소에대한 데이터 인출대한 데이터 인출→→ 레지스터레지스터

연산항 주소에연산항 주소에대한 데이터 인출대한 데이터 인출→→ 레지스터레지스터

실 행 사 이 클실 행 사 이 클실 행 사 이 클실 행 사 이 클

명령어 실행명령어 실행실행 결과→레지스터실행 결과→레지스터혹은 주기억혹은 주기억

명령어 실행명령어 실행실행 결과→레지스터실행 결과→레지스터혹은 주기억혹은 주기억

IPIP 주소→주소버스주소→주소버스명령어→명령어큐명령어→명령어큐 IP+2→IPIP+2→IP

IPIP 주소→주소버스주소→주소버스명령어→명령어큐명령어→명령어큐 IP+2→IPIP+2→IP

Page 27

Page 28: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

명령어 실행속도명령어 실행속도

• 한 명령어가 실행되는 시간은 명령어 호출 , 명령어 해독 , 데이타

호출 , 실행 시간을 합

• fetch time(I-time) : 명령어 호출 시간

• execution time(E-time) : 명령어 해석하여 데이터 인출하고 연산

수행하는 시간

• instruction cycle = I-time + E-time

• MIPS(Million Instruction Per Second) 결정요소 : 사이클시간 ,

데이타버스크기 , 레지스터크기 , 논리연산장치크기 , 명령어크기

Page 28

Page 29: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

기억장치의 주소기억장치의 주소

• 64KB 의 기억장치 주소 예

기억장치기억장치기억장치기억장치

기억된기억된내용내용

주기억장치주기억장치주 소주 소

11 00 11 11 0000 1111

바이트 바이트 00바이트 바이트 00

......

......

바이트 바이트 NN바이트 바이트 NN

바이트 바이트 6553565535바이트 바이트 6553565535

......

......

NNNN

0000

1111

65535655356553565535

......

......

......

......

Page 29

Page 30: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

기억장치 관리방법기억장치 관리방법

• 선형 기억장치 관리

– 주소를 선형으로 배열

– 논리주소 = 물리주소

– M68000 프로세서 등

• 세그먼트 기억장치 관리

– 기억장소를 세그먼트로 구분

– ≠ 논리주소 물리주소

– 물리주소 = 논리주소 + 세그먼트번호

– 인텔 프로세서

Page 30

Page 31: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

선형기억장치 관리형태선형기억장치 관리형태

논리적인 주소논리적인 주소

NNNN

2424 비트비트

기억장치기억장치

001122......NN

001122......NN

끝끝끝끝

Page 31

Page 32: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

선형기억장치 관리형태선형기억장치 관리형태

기억장치기억장치

시스템 관리자 시스템 관리자 프로그램프로그램

시스템 관리자 시스템 관리자 프로그램프로그램

시스템 관리자 시스템 관리자 데이터데이터

시스템 관리자 시스템 관리자 데이터데이터

......

......

프로그램프로그램 11프로그램프로그램 11

프로그램프로그램 22프로그램프로그램 22

시스템 관리자 시스템 관리자 프로그램프로그램

시스템 관리자 시스템 관리자 프로그램프로그램

시스템 관리자 시스템 관리자 데이터데이터

시스템 관리자 시스템 관리자 데이터데이터

프로그램프로그램 11프로그램프로그램 11

프로그램프로그램 22프로그램프로그램 22

기억장치 관리자기억장치 관리자

Page 32

Page 33: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

세그먼트 기억장치 관리형태세그먼트 기억장치 관리형태

기억장치기억장치

데이터 데이터 3 3 세그먼트세그먼트데이터 데이터 3 3 세그먼트세그먼트

프로그램 프로그램 1 1 세그먼트세그먼트프로그램 프로그램 1 1 세그먼트세그먼트

논리적논리적주소주소

프로프로그램그램 11프로프로그램그램 11

데데이이터터22

데데이이터터22

프로그램 프로그램 세그먼트세그먼트번호번호

프로그램 프로그램 세그먼트세그먼트번호번호 프로그램 프로그램 2 2 세그먼트세그먼트프로그램 프로그램 2 2 세그먼트세그먼트

데이터 데이터 1 1 세그먼트세그먼트데이터 데이터 1 1 세그먼트세그먼트

데이터 데이터 2 2 세그먼트세그먼트데이터 데이터 2 2 세그먼트세그먼트데이터데이터세그먼트세그먼트번호번호

데이터데이터세그먼트세그먼트번호번호

++++

++++

기계적기계적주소주소

Page 33

Page 34: 2 장 컴퓨터 동작의 기본 개념

시스템 프로그래밍

제제 22 장 요약장 요약

• 비트 , 바이트 , 단어의 개념 이해

• 2 진수 연산과 관련된 개념이해

• 시스템버스와 프로세서의 이해

• 컴퓨터동작의 기본사이클의 이해

• 선형 및 세그먼트 기억장치 관리방법 이해

Page 34