Transcript 1.전자계산기일반
방송통신기사 1.전자계산기 일반(개요, 코드표현) 최 영 강원대학교 방송영상기술전공 1.1 전자계산기의 개요 (1) 전자계산기란? - 산술 및 논리 연산, 비교, 판단, 기억 등을 자동 처리하는 장치 - 프로그램과 데이터 등을 입력받아 프로그램의 순서에 따라 자동 처리하는 프로그램 외장 방식의 정보처리 시스템 (2) EDPS(electronic data processing system) - 전자계산기의 복합적인 기능에 의하여 다양한 업무를 처리하는 시스템 (3) - 전자계산기의 특성 자동처리 대량 데이터 기억(대용량성) 고속연산 범용성, 호환성 다수 사용자 동시 사용 1.1 전자계산기의 개요 중앙처리장치의 4대 구성 기억기능, 연산기능, 전달기능, 제어기능 주요구성 요소 - 레지스터 : 임의의 데이터에 대한 처리 결과를 일시적으로 보관, 고속기억회로 - 계수기 : 수치를 저장하는 기억장소, 명령어가 요구하는 대로 수를 자동적으로 증가, 감소시키는 장치 - 가산기 : 산술연산을 수행하는 회로 - 디코더 : 프로그램의 명령코드 해석, 실행을 시작하는 회로 - 버퍼 : 프로그램이나 데이터의 일부분을 저장하는 데 사용되는 일시적인 기억 영역 - 버스 : 데이터와 명령을 이동시키기 위한 공통 회선의 집합 주소값이 전달되는 주소 버스 제어신호를 전송하기 위한 제어 버스 1.2 중앙처리장치 (4) - 전자계산기의 기능 및 장치 입력장치 기억장치 연산장치 제어장치 출력장치 (5) - 전자계산기 시스템의 구성 하드웨어(Hardware) : 본체, 주기억장치, 주변장치 등 소프트웨어(Software) : 시스템 소프트웨어, 응용소프트웨어 p637참조 1.2 중앙처리장치 (1) 제어장치 주기억장치의 명령을 해독, 필요한 장치에 신호, 결과를 검사, 제 어하는 역할, 연산장치, 입력장치, 출력장치를 작동하게 됨. (어드레스 레지스터, 명령해독기, 기억 레지스터, 명령계수기) (2) 연산장치 - 주기억장치로부터 가져온 프로그램의 명령어에 따라 덧셈,뺄셈, 곱셈, 나눗셈 등의 산술연산과 두수의 크기를 비교,분석하는 논 리연산을 수행하는 장치 - 덧셈을 위한 가산기 - 연산결과를 일시적으로 보관하는 누산기 또는 레지스터 - 보수를 만들기 위한 보수기 - 계산 결과의 상태를 검사하기 위한 상태 레지스터 등으로 구성 - 연산 : 논리연산, 산술연산 1.2 중앙처리장치 (3) 기억장치 가) RAM과 ROM - RAM(Random Access Memory) : 읽기/쓰기가 가능, 전원이 켜져 있을 때만 자료 보존 ∙ DRAM(Dynamic RAM) : 전원이 켜져 있으면 자료가 보존,휘발성 메모리, 소비전력이 많고 속도가 느림 ∙ SRAM(Static RAM) : 일정 시간이 지나면 전하가 방전, 재충전 필요, 소비 전력이 작고 속도가 빠름 - ROM(Read Only Memory) : 전원이 꺼져 있는 상태에서도 자료 자료 보전, 비휘발성 메모리, 읽기만 가능 ∙ Mask ROM : 제조과정에서 프로그램 등을 기억, 전용 자동 제어에 사용 1.2 중앙처리장치 (3) 기억장치 - ROM(Read Only Memory) : 전원이 꺼져 있는 상태에서도 자료 자료 보전, 비휘발성 메모리, 읽기만 가능 ∙ PROM(Programmable ROM) : 사용자가 프로그램 등을 1회에 한하여 써 넣을 수 있는 기억소자 ∙ EPROM(Erasable ROM) : 여러 번 지우고 쓰기 가능, 자외선이나 특정전압 전류를 이용 ∙ EEPROM(Electrically Erasable PROM) : 사용자가 내용을 수정할 수 있는 롬, 정상보다 더 높은 전압을 이용, 플래쉬메모리에 사용(정상적인 PC 전압을 이용) 1.2 중앙처리장치 (나) 연상 기억장치 - 번지에 의해 데이터를 찾는 것이 아니라, 내용에 의해 데이터 액세스, 탐색시간이 짧을 경우에 사용 - 페이지 교체 알고리즘 FIFO, LRU, LFU, NUR 등이 있다. ∙ FIFO(First In First Out) ∙ LRU(Least Recently Used) : 가장 최근의 사용 빈도 ∙ LFU(Least Frequently Used) : 최소 사용 빈도 ∙ NUR(Not Used Recently) (다) 캐시 메모리 - 주기억 장치와 CPU 사이에 있는 메모리, - 주기억 장치의 액세스 타임과 CPU의 처리 속도차가 많을 때 속 도차를 줄이기 위해 사용 1.2 중앙처리장치 (라) 가상 메모리 - 사용자가 보조 기억 장치의 총 용량에 해당하는 커다란 기억 장소를 갖고 있는 것처럼 생각하고 프로그램을 작성할 수 있도록 하는 개념 1.3 자료표현 1) 수의 표현 - 2진법 : 0과 1의 2개의 숫자로만 정수를 표현 - 2진화 10진 코드(BCD) : 0 -> 0000,1-> 0001,2->0010,, 9->1001 - 8진법 : 0~7로 정수 표현 - 16진법 : 0~F로 정수 표현 (1)10진수와 2진수의 상호변환 예) (2) 2진수의 덧셈 예) 1.3 자료표현 – 수치데이터 표현 1. 수치 데이터의 표현(자료의 내부적 표현) 1) 10진 데이터 형식 - 존(언팩) 10진 형식 : 연산 가능, 입출력 불가능 형식 : FDFDFDSD (D:데이터, S:부호(-:D,+:C)) - 팩 10진 형식 : 연산 불가능, 입출력 가능 형식 : DDDDDS (D:데이터, S:부호(-:D(1101),+:C(1100),부호 없는 경우 F:1111)) Ex)10진수 '+1234'를 존 10진 형식(Zoned Decimal Format)과 팩 10진 형식(Packed Decimal Format)으로 각각 표시한 것으로 옳은 것은? 1) F1 F2 F3 F4 : F1 F2 F3 C4 2) 04 32 1C : F1 F2 F3 F4 3) C1 F2 F3 F4 : 01 23 4C 4) F1 F2 F3 C4 : 01 23 4C 1.3 자료표현 – 수치데이터 표현 1. 수치 데이터의 표현(자료의 내부적 표현) 2) 2진 데이터 형식(고정 소수점 형식) - 부호와 절대치 표현 : -2n-1+1 ~ 2n-1 -1 음수 : 첫번째 비트 1, 양수 : 첫번째 비트 0 - 1의 보수 표현 : -2n-1+1 ~ 2n-1 -1 음수 : 1->0, 0->1 - 2의 보수 표현 : -2n-1 ~ 2n-1 -1 1의 보수 표현에 +1 ex) 8bit 길이 표현 부호와 절대값 +128 표현불가능 -127 01111111 +0 00000000 -0 10000000 -1 10000001 -127 11111111 -128 표현불가능 1의 보수 표현불가능 01111111 00000000 11111111 11111110 10000000 표현불가능 ps) 10진수의 경우 9의 보수, 10의 보수 2의 보수 표현불가능 01111111 00000000 없음 11111111 10000001 10000000 1.3 자료표현 – 수치데이터 표현 1. 수치 데이터의 표현(자료의 내부적 표현) 3) 실수의 표현 부호, 지수부, 가수부 ex) 14.5 (E.8)16 = 0.E8 * 161 (정규화) 지수부는 1에 64를 더하여 65가 된다.(64바이어스법) 65는 16진수로 41 01000001 1110 1000 부호 지수부 가수부 1.3 자료표현 – 비수치데이터 표현 2. 비수치 데이터의 표현(자료의 외부적 표현) 1) BCD 코드 6bit 2bit : 존, 4bit : digit B A 8 4 2 1 Zone : 00 숫자(0~9) 01 문자(A~I) 1~9 10 문자(J~R) 1~9 11 문자(S~Z) 2~9 Ex) 9 => 001001 Q => 101000 S => 110010 1.3 자료표현 – 비수치데이터 표현 2. 비수치 데이터의 표현(자료의 외부적 표현) 2) EBCDIC 코드 : IBM에서 개발, 대형컴퓨터에서 많이 사용 8bit 4bit : 존, 4bit : digit D C B A 8 4 2 1 D C : 00 여분 B A : 00 문자(A~I) 01 부호 01 문자(J~R) 10 소문자 10 문자(S~Z) 11 대문자 11 숫자(0~9) Ex) 8 => 11111000 K => 11010010 s => 10100010 1.3 자료표현 – 비수치데이터 표현 2. 비수치 데이터의 표현(자료의 외부적 표현) 3) ASCII 코드 : 데이터 통신이나 마이크로 컴퓨터 등에 많이 사용 7bit로 구성 Zone : 3bit, Digit : 4bit A => 65 => (41)16 => 1000001 B => 66 Z => 90 … a => 97 z => 122 0 => 48 => (30)16 => 0110000 1 => 49 9 => 57 … 1.3 자료표현 – 비수치데이터 표현 3. 그레이(gray) 코드 연산에는 부적당, 입출력 장치의 코드나 A/D변환기(Analog-toDigital converter)에 사용 ex) 1011 (2진수) => 1110 (그레이코드) 1101 (그레이코드) => 1001 (2진수) 4. 에러 검출 코드 2-out-of-5 코드 0 11000 1 00011 2 00101 3 00110 9 10100 특징 74210코드 비쿼너리 코드 0100001 0100010 0100100 0101000 1010000 5043210 링 카운드 코드 0000000001 0000000010 0000000100 0000001000 1000000000 9876543210 1.3 자료표현 – 비수치데이터 표현 5. 패리티 비트(parity bit) - 에러를 검출하기 위해 1bit 추가 - 1의 개수를 패리티 비트를 포함하여 짝수 개로 하는 것을 : 짝수(우수 : even) - 홀수 개로 하는 것을 : 홀수(기수:odd) 패리티 6. 해밍 코드 : 에러를 parity bit에 의해 검출하고 이를 다시 교정할 수 있는 코 드