디지털공학의 기본개념 이해
본 자료는 6페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
해당 자료는 6페이지 까지만 미리보기를 제공합니다.
6페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

디지털공학의 기본개념 이해에 대한 보고서 자료입니다.

목차

1. 메모리의 종류 및 크기

2. 수의 표시방법

3. 2의 보수(2's Complement)

4. ASCII Code

5. BCD Code

6. 마이크로컨트롤러의 일반적인 구조

참고문헌

본문내용

가장 중요한 기능은 프로그램에서 테이블이나 배열(Array)을 사용하여 데이터를 처리하는 경우 유용하게 사용할 수 있다.
즉 인덱스 번지지정방식에서 인덱스 레지스터는 CPU가 처리해야 할 데이터의 주소를 결정하는데 사용된다.
[참고]인덱스 번지지정방식
인덱스 번지지정방식에서 실제적인 유효 어드레스는 명령어의 오퍼랜드 어드레스와 인덱스 레지스터에 저장된 내용의 합이 된다.
유효 어드레스 = base address + [X]
여기서 X는 인덱스 레지스터를 나타낸다.
만약 인덱스 레지스터는 8비트 크기이며, 16진수로 04h가 저장되어 있다고 가정하자. 이때 CPU는 인덱스 방식으로 LDA(Load Accumulator) 라는 명령을 실행한다고 가정하자. 그렇다면 이 명령어는 메모리에 다음과 같은 방식으로 저장되어 있을 것이다.
Address of Memory Word
Memory Word
비고
0200
0201
0202
6F
50
04
Code for LDA, X
base address = 0540
이 명령어를 실행하면 CPU는 0200 번지에서 Op Code 인 6F를 페치(fetch)해온다. 이 6F라는 Op Code는 LDA, X라는 명령어이며, 어큐뮤레이터에 데이터를 저장한다. 저장될 데이터의 위치는 0201 및 0202 번지에 저장된 0450 값과 인덱스 레지스터에 저장된 04를 더한 0454 번지의 내용이 된다.
(7) 상태 레지스터(Status Register)
상태 레지스터는 Process Status Register 또는 Condition register라고 불리기도 한다. 8051에서는 PSW(Program Status Word)를 말하며 2부 8051편에서 참조 바란다.
■ 상태 레지스터의 각 비트는 플래그(flag)라 부르며 각 플래그들은 마이크로프로세서의 상태를 표시하는데 사용된다. 몇 개의 플래그들은 프로그램 실행 시에 명령어의 수행 순서를 결정하기도 한다.
■ 가장 대표적인 플래그는 제로(Zero) 플래그인 Z와 캐리 플래그인 C이다. Z 플래그 값은 명령어 실행전의 데이터 값이 0인지 아닌지를 알려준다. 명령어 실행 결과 값이 0이면 Z=1(High state), 아니면 Z=0(Low state) 값을 갖는다.
캐리플래그 C는 바로 전에 실행된 명령어의 값이 마이크로프로세서의 워드 크기를 초과했는지를 알려준다. 예를 들어 데이터 크기가 8비트인 두개의 워드를 합산한 경우 8번째 비트 즉 MSB에서 자리올림이 생기면 캐리플래그는 셋되어진다. 그러므로 캐리플래그는 산술연산의 9번째 비트로 역할을 한다.
■ 상태 레지스터의 일부 플래그는 외부 디바이스 구동을 위한 마이크로프로세서 칩의 핀에 직접 연결되어 있다. 아래 그림과 같이 FO(Flag Output)이나 SI(Sense Input) 플래그가 예가 된다.
비트 6인 FO 플래그는 프로그램 실행 시에 외부 디바이스를 제어하는데 사용한다. FO의 값은 프로그램 안에 있는 명령어에 의해 셋되거나 클리어된다. 예를 들면 SFO(Set flag output)라는 명령어에 의해 FO=1로 되면 모터나 전등과 같은 외부 디바이스를 동작시키고 또는 프로그램의 적정 위치에서 신호를 출력한다. 마찬가지로 CFO(Clear flag output)은 FO 값을 다시 0으로 만들어준다.
비트 7인 SI(Sense Input) 플래그는 마이크로프로세서 핀에 연결된 외부 신호에 의하여 셋되거나 클리어된다. 이것은 CPU와 외부 SI와 직접 통신하는 기능을 제공하며, CPU는 이 값에 따라 적절한 프로그램을 실행시킬 수 있다.
(8) 스택포인터(Stack Pointer Register)
스택포인터의 용도를 알기 위해서는 스택의 개념이 미리 정비되어야 한다. 스택은 데이터(일반적으로 마이크로프로세서의 내부 레지스터의 값)를 임시로 저장하였다가 쓸 수 있도록 RAM에 확보한 메모리 블록이다. 스택영역으로 확보한 이 메모리 블록에 데이터를 저장하는 경우, 제일 처음에 저장되는 데이터가 가장 밑바닥 즉 가장 큰 메모리 번지에 저장(PUSH)된다. 다음 데이터는 그 보다 작은 메모리 번지에 저장된다.
반면에 스택에서 데이터를 가지고 나올 때(POP)는 메모리 번지가 가장 작은 곳에서부터 찾아 나온다. 이러한 메모리 동작을 LIFO(Last-In First-Out) 구조를 갖는다고 한다.
■ 스택 포인터(Stack Pointer): 8비트 크기를 갖는 스택 포인터는 스택의 주소를 가르키는데 사용하는 레지스터이다. 스택에 워드가 저장될 때 마다 SP에 그 값이 저장되어 있는 주소를 저장하게 된다. SP 값은 프로그램을 시작할 때에 프로그래머에 의해 초기화되어 진후로 워드가 스택에 저장되면 자동적으로 SP 값이 감소하고, 리드되어 지면 자동적으로 증가하게 된다.
즉 스택을 사용하는 명령 PUSH, POP, CALL, RET 명령 등을 실행하면 데이터가 저장되기 전에 포인터가 자동적으로 증가 또는 감소한다. 8051인 경우 만약 원-칩 RAM 영역안의 임의 장소에 스택을 설정하였다 하더라도, 시스템이 리셋되면 07h 번지로 자동적으로 초기화되므로 08h 번지부터 스택을 시작해야 한다. 스택 영역으로 최대 128바이트까지 사용할 수 있다.
① 프로그램 중 서브루틴 콜이나 인터럽트를 사용하게 되면 return address나 8051인 경우 PSW와 같은 CPU의 상태를 스택에 저장한다.
② 다음과 같은 명령어에 의해 강제적으로 스택을 사용할 수 있다.
- PHA:Push Accumulator on the stack
- PLA:Pull Accumulator off the stack
참고문헌
디지털 신호처리 :신호 처리에 대한 기본 개념과 관련이론
이용창
광센서의 기본개념과 원리에 대하여
한국조명·전기설비학회 ㆍ 김수길
전자부품 품질 및 신뢰성
대한전자공학회 ㆍ 김태원
공간선형모형을 이용한 전산실험의 분석
한국과학기술정보연구원 ㆍ 박정수
MIS 개발을 위한 Structured analysis의 실용화에 관한 연구
고려대 경영대학원 ㆍ 최순영
다차원 격자부호의 변조 방법에 대한 신호공간 분석 .
한국통신학회 ㆍ 홍천표
  • 가격2,200
  • 페이지수18페이지
  • 등록일2008.09.16
  • 저작시기2008.9
  • 파일형식한글(hwp)
  • 자료번호#479293
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니