제1장 디지털 시스템과 수체계 내용 1.1 계수(셈)와 계산의 역사 1.2 디지털 시스템(Digital system) 1.1 계수(셈)와 계산의 역사 1.2 디지털 시스템(Digital system) 1.3 수 체계 : 수 체계/ 10진 수체계/ 일반적인 자릿수를 갖는 수체계/ 2진, 8진, 16진 수체계 1.4 2진수 연산 : 2진수 사칙연산/ 보수/ 부호를 갖는 2진수 1.5 수의 코드화 : 2진 코드/ 10진 코드/ 오류 검출 코드/ 그레이 코드 / ASCII 코드
석문 기록(Sumerian tablet) 제 1장 디지털 시스템과 수체계 1.1 계수(셈)와 계산의 역사 원시 시대와 고대 사회의 계수 원시 시대 : 손과 발을 통한 계수 고대 사회 : 수체계 개발 그러나 보편적으로 사용되기에는 불편함 농사, 건축, 항해, 세금 등 석문 기록(Sumerian tablet) 디지털 설계
제 1장 디지털 시스템과 수체계 1.1 계수(셈)와 계산의 역사 중국 주판 주판 0의 사용 BC3000년 바빌로니아 주판 사용 고대 중국에서도 주판 사용 0의 사용 인도인들은 9자리 수체계에 ‘0’의 개념을 추가 중국 주판 디지털 설계
제 1장 디지털 시스템과 수체계 1.1 계수(셈)와 계산의 역사 파스칼의 계산기 계수 머신(count machine) 물리학 발전에 따라 곱셈과 나눗셈이 가능한 계수 머신의 발명 요구 파스칼 : 최초의 기계식 계산기 개발 라이프니츠 : 기계식 곱셈기 발명 찰스 배비지 차동 엔진 연구 해석 엔진 연구 : 오늘날의 컴퓨터 전신 파스칼의 계산기 디지털 설계
제 1장 디지털 시스템과 수체계 1.1 계수(셈)와 계산의 역사 조지 부울 부울 대수학 샤논 조지 부울 : 부울 대수학 발명 부울 대수학에 기초한 통신이론 개발 스위칭 개념 도입 조지 부울 디지털 설계
제 1장 디지털 시스템과 수체계 1.1 계수(셈)와 계산의 역사 플레밍 포레스트와 진공관 진공관 에디슨은 백열전등를 개량하면서 진공관을 발견 플레밍 : 진공관을 이용한 다이오드 고안 포레스트 : 3관 연결형 진공관 개발 플레밍 포레스트와 진공관 디지털 설계
제 1장 디지털 시스템과 수체계 1.1 계수와 계산의 역사 Mark I 진공관을 이용한 컴퓨터 ABC(Atanansoff Berry Computer) 1939년 아타나소프에 의한 진공관을 최초의 전자계산기 제작 ENIAC 1943년 3관 연결형 진공관을 이용한 전자계산기를 설계 시작 콜로서스 1943년 영국에서 제작된 최초의 전기식 계산기 Mark I 1944년 최초의 디지털 컴퓨터이며 비상업용으로 개발 긴 프로그램을 사용하여 여러 계산 수행 Mark I 디지털 설계
제 1장 디지털 시스템과 수체계 1.1 계수(셈)와 계산의 역사 ENIVAC 진공관을 이용한 컴퓨터 ENIAC EDVAC 1945년 상업용으로 개발되고 현업에 배치된 최초의 컴퓨터 1946년 제작 발표 EDVAC ENIAC의 후속 모델로 1945년 설계시작하여 1952년 완성 ENIVAC 디지털 설계
제 1장 디지털 시스템과 수체계 1.1 계수와 계산의 역사 트랜지스터 1947년 개발 점접촉형 트랜지스터 디지털 설계
제 1장 디지털 시스템과 수체계 1.1 계수(셈)와 계산의 역사 앨런 튜링과 튜링머신 폰노이만 개념적인 컴퓨터 앨런 튜링과 튜링 머신 1937년 논문에서 튜링머신 개념 소개 1946년 자동계산엔진 논문 : 저장된 정보를 선택적으로 접근할 수 있는 모델 제안 존 폰노이만 폰노이만 구조 : 현재의 컴퓨터 구조 제안 앨런 튜링과 튜링머신 폰노이만 디지털 설계
제 1장 디지털 시스템과 수체계 1.1 계수(셈)와 계산의 역사 EDSAC EDVAC UNIVAC 컴퓨터의 발전 EDSAC 1949년 최초 프로그램 내장 컴퓨터 개발 EDVAC 1951년 내부 기억장치 확장하여 데이터 및 프로그램 내장 컴퓨터 개발 UNIVAC 1951년 고속 자기테이프를 갖춘 프로그램 내장 컴퓨터 미국 인구통계국에서 사용 EDSAC EDVAC UNIVAC 디지털 설계
제 1장 디지털 시스템과 수체계 1.1 계수(셈)와 계산의 역사 Intel 4004 IC 현대 컴퓨터와 집적회로 IBM CDC MODEL701, MODEL704 CDC MODEL1604 : 트랜지스터를 이용한 최초의 상용 컴퓨터(1958) MODEL6600 : 1964년 IBM PC Intel 집적회로 사용 고든 무어와 무어 법칙 2년마다 트랜지스터가 2배로 집적화됨. Intel 4004 IC 디지털 설계
DVD(Digital Video Disk) 제 1장 디지털 시스템과 수체계 1.2 디지털 시스템(Digital System) 디지털 시스템 이란 불연속 정보를 처리하는 시스템 도구(장치)를 제어하고 계산을 수행한다. 디지털 시스템의 확산 이유 융통성(flexibility) 신뢰성(reliability) 비용(cost) DVD(Digital Video Disk) 디지털 설계
제 1장 디지털 시스템과 수체계 1.2 디지털 시스템(Digital System) 디지털 대 아날로그 디지털 : 2진 논리 ‘0’ ‘1’ 아날로그 : 소리 등 디지털 설계
제 1장 디지털 시스템과 수체계 1.3 수체계(Number system) 수 로마자 표기 1.3.1 수체계 로마 숫자의 수체계 자릿수 수체계(positional number system) di=디짓(digit) 10진수 : 디짓 0에서 9까지 사용 2진수 : 디짓 0과 1 사용 원형경기장 옆 콘스탄티노 개선문 : MDCCXXXIII = 1000 500 200 30 3 = 1733 베드로광장 앞 오벨리스크 : ANNO MDLXXXVI = 1000 500 50 30 5 1 = 1586년 베드로성당 : ANNO MDCXII = 1000 500 100 10 2 = 1612년 - ANNO 라틴어로 year 로마자 표기 1 5 10 50 100 500 1000 수 I V X L C D M 디지털 설계
제 1장 디지털 시스템과 수체계 1.3 수체계(Number system) 1.3.2 10진 수체계 10진수 : 10개의 수로 표현 디짓 : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 표현 형태 가장 오른쪽에 위치한 디짓 : 최하위 디짓(least significant digit, LSD) 가장 왼쪽에 위치한 디짓 : 최상위 디짓(most significant digit, MSD) 1.3.3 일반적인 자릿수를 갖는 수체계 표기법 Nb : 첨자 b는 숫자에서 사용되는 밑수(base) 또는 기수(radix) 디지털 설계
제 1장 디지털 시스템과 수체계 1.3 수체계(Number system) 1.3.4 2진 수체계 2진수 : 2개의 수로 표현 1.3.4 2진 수체계 2진수 : 2개의 수로 표현 디짓 : 0, 1 2진수에서 사용하는 디짓을 비트(bit)이라 부름, binary digit의 축약형 표현 형태 가장 오른쪽에 위치한 비트 : 최하위 비트(least significant bit, LSB) 가장 왼쪽에 위치한 비트 : 최상위 비트(most significant bit, MSB) 표기법 N=101101002 =10110100 (보통 밑수(base)를 생략하고 사용) 진수 변환 : 2진수를 10진수 변환 진수 변환 : 10진수를 2진수 변환 디지털 설계
제 1장 디지털 시스템과 수체계 1.3 수체계(Number system) 1.3.5 8진 수체계 8진수 : 8개의 수로 표현 1.3.5 8진 수체계 8진수 : 8개의 수로 표현 (디짓 : 0, 1,2, 3, 4, 5, 6, 7) 8 10 9 11 8진수를 10진수 변환 디지털 설계
제 1장 디지털 시스템과 수체계 1.3 수체계(Number system) 1.3.5 8진 수체계 8진수와 2진수 사이의 변환 1.3.5 8진 수체계 8진수와 2진수 사이의 변환 2진수를 8진수 변환 : 2진수의 LSB를 기준으로 오른쪽에서 왼쪽으로 3비트씩 묶어서 구성 8진수를 2진수 변환 : 2진수를 8진수 변환의 역과정 디지털 설계
제 1장 디지털 시스템과 수체계 1.3 수체계(Number system) 1.3.6 16진 수체계 16진수 : 16개의 수로 표현 (디짓:0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F) 디지털 설계
제 1장 디지털 시스템과 수체계 1.3 수체계(Number system) 1.3.6 16진 수체계 1.3.6 16진 수체계 16진수와 2진수 사이의 변환 2진수를 16진수 변환 : 2진수의 LSB를 기준으로 오른쪽에서 왼쪽으로 4비트씩 묶어서 구성 16진수를 2진수 변환 : 2진수를 16진수 변환의 역과정 디지털 설계
제 1장 디지털 시스템과 수체계 1.4 2진수 연산 1.4.1 2진수 사칙연산 덧셈(Addition) 1.4 2진수 연산 1.4.1 2진수 사칙연산 덧셈(Addition) 뺄셈(Subtraction) 곱셈(Multiplication) 나눗셈(Division) 디지털 설계
제 1장 디지털 시스템과 수체계 1.4 2진수 연산 1.4.2 보수(Complement) 1.4 2진수 연산 1.4.2 보수(Complement) N에 대한 x의 보수 : 어떤 기준이 되는 큰 수 N에서 x를 뺀 나머지 수 계산기 또는 디지털 시스템에서는 뺄셈을 보수를 이용한 덧셈으로 처리 밑수(base) b에 대하여 (b-1)의 보수((b-1)'s complement)와 b의 보수(b's complement) b=2 -> 2진수 1의 보수(1’s complement)와 2의 보수(2’s complement) 1의 보수는 논리연산(logical operation) 사용 2의 보수는 산술연산(arithmetic operation) 사용 b=10 -> 10진수 9의 보수(9’s complement)와 10의 보수(10’s complement) 디지털 시스템에서 잘 사용하지 않으므로 따로 설명하지 않음. 디지털 설계
제 1장 디지털 시스템과 수체계 1.4 2진수 연산 1.4.2 보수(Complement) (1) 1의 보수 (2) 2의 보수 1.4 2진수 연산 1.4.2 보수(Complement) (1) 1의 보수 (2) 2의 보수 디지털 설계
제 1장 디지털 시스템과 수체계 1.4 2진수 연산 1.4.2 보수(Complement) (3) 2의 보수를 이용한 뺄셈 n비트 2진수 : 피감수 M과 감수 N에 대한 M-N 연산 디지털 설계
제 1장 디지털 시스템과 수체계 1.4 2진수 연산 1.4.2 보수(Complement) (3) 2의 보수를 이용한 뺄셈 1.4 2진수 연산 1.4.2 보수(Complement) (3) 2의 보수를 이용한 뺄셈 디지털 설계
제 1장 디지털 시스템과 수체계 1.4 2진수 연산 1.4.3 부호를 갖는 2진수 n비트 부호를 갖는 2진수 표현 음수 표현 1.4 2진수 연산 1.4.3 부호를 갖는 2진수 n비트 부호를 갖는 2진수 표현 음수 표현 디지털 설계
제 1장 디지털 시스템과 수체계 1.4 2진수 연산 1.4.3 부호를 갖는 2진수 1.4 2진수 연산 1.4.3 부호를 갖는 2진수 8비트 부호를 갖는 2진수에 대한 10진수 표기 디지털 설계
제 1장 디지털 시스템과 수체계 1.4 2진수 연산 1.4.3 부호를 갖는 2진수 (1) 덧셈 연산 디지털 설계
제 1장 디지털 시스템과 수체계 1.4 2진수 연산 1.4.3 부호를 갖는 2진수 (2) 뺄셈 연산 디지털 설계
제 1장 디지털 시스템과 수체계 1.5 수의 코드화 코드(code)는 사람들이 서로 약속한 부호이다. 1.5 수의 코드화 코드(code)는 사람들이 서로 약속한 부호이다. 코딩(coding) 디지털 시스템에서 사용되는 수체계를 설계하는 것 디지털 시스템에서 사용되는 코드 2진 코드(binary code) 2진수 비트들의 집합들을 표현한 코드 10진 코드(decimal code) 와 10진수를 표현하기 쉽도록 만들어진 2진수로 10진수를 만든 코드 에러코드를 찾아내는 오류검출 코드(error detection code) 그레이 코드(gray code) ASCII 코드 디지털 설계
제 1장 디지털 시스템과 수체계 1.5 수의 코드화 1.5.1 2진 코드 2진 코드 : 2진수를 사용하여 만든 코드 2비트 2진 코드 : 4개의 요소를 구성함. 즉 00, 01, 10, 11 단일 거리 코드(unit distance code) 디지털 연산을 수행할 때 많이 사용 상태머신(state machine)에서 상태값을 부여할 때 널리 사용 상태머신은 순차논리회로(6장, 7장, 8장)에서 배운다. 디지털 설계
제 1장 디지털 시스템과 수체계 1.5 수의 코드화 1.5.2 10진 코드(Decimal code) 2진수로 10진수로 표시한 코드 종류 BCD(Binary Coded Decimal) 또는 8421 3 초과 2421 84-2-1 디지털 설계
제 1장 디지털 시스템과 수체계 1.5 수의 코드화 1.5.3 오류 검출 코드(Error Detection Code) 패리티 코드(parity code) 패리티 비트를 이용 오류를 효과적으로 검출하도록 만든 것 패리티 비트(parity bit) 홀수 패리티(odd parity) : 1의 개수가 홀수 짝수 패리티(even parity) : 1의 개수가 짝수 패리티 코드의 문제점 정보에 발생할 수 있는 오류의 유무를 검출 하는데 유용하지만, 오류가 발생한 위치를 찾아내지는 못한다. 디지털 설계
제 1장 디지털 시스템과 수체계 1.5 수의 코드화 1.5.4 그레이 코드(Gray Code) 2진수를 그레이 코드 변환 제일 왼쪽 자릿수는 그대로 두고 인접한 두 비트씩 더하고 자리올림수는 무시 그레이 코드를 2진수 변환 제일 왼쪽 자릿수는 그대로 두고 제일 왼쪽 비트와 그레이 코드의 다음 비트를 합하여 다음 비트를 결정하고 자리올림수는 무시 디지털 설계
제 1장 디지털 시스템과 수체계 1.5 수의 코드화 1.5.5 ASCII 코드 디지털 설계