실험1 간단한 입출력 실험 보고서
- 최초 등록일
- 2009.08.22
- 최종 저작일
- 2005.10
- 12페이지/ 압축파일
- 가격 1,000원
소개글
장비의 입출력 포트를 이용한 실험 보고서
목차
1. 실험제목
3. 실험 내용 개괄
4. 실험 방법
5. 결과 기술
6. Discussion
1. 목적
2. 이론
3. 동작실험
본문내용
1. 목적
(1) 실험 장치에 장착된 LED 점등을 통해 출력 포트 프로그램을 익힌다.
(2) 실험 장치에 장착된 스위치 제어를 통해 입력 포트 프로그램을 익힌다.
(3) 스위치 조작의 여러 가지 방법을 익힌다.
2. 이론
386EX는 인텔의 32비트 프로세서이다. 이 프로세서는 메모리 어드레스와 I/O 어드레스가 분리된 I/O Mapped I/O를 사용한다. 반면에 메모리 어드레스와 I/O 어드레스가 분리가 되지 않은 CPU는 Memory Mapped I/O를 한다고 한다.
Memory Mapped I/O를 하는 CPU를 사용할 때, I/O 장치는 실제 메모리처럼 CPU의 메모리 공간에 위치하며, CPU의 메모리 참조 명령으로 Access된다. I/O Mapped I/O를 하는 CPU는 별도로 Input, Output 명령을 가지고 있다. 또 I/O Mapped I/O를 하는 CPU도 역시 메모리 주소 공간에 I/O 장치를 연결할 수 있다.
그림 1 은 386EX를 이용한 우리 실험 장치의 메모리 및 I/O 포트 맵이다.
386EX를 이용한 우리 실험 장치 하드웨어의 경우는 모든 입출력 장치가 메모리 공간과 완전히 분리된 별도의 I/O 어드레스 공간이 있으므로, I/O 포트를 제어할 경우 386EX의 IN 명령과 OUT 명령을 이용해야 한다. 대부분의 컴파일러는 CPU의 IN, OUT과 같은 특별한 명령을 생성해내지 못하며, C 언어에서도 CPU의 입출력 명령을 지원하지 않는다. 따라서 각 CPU의 코드를 만드는 컴파일러가 함수, 또는 매크로를 이용하여 입출력 명령을 이용할 수 있도록 한다. 우리가 사용할 Turbo-C의 경우 I/O 어드레스에 접근하는 명령은 8 비트 데이터 입력의 경우 inportb(IO_Addr) 이고, 8 비트 출력의 경우는 outportb(IO_Addr, 출력할 값)이다. 함수 이름 끝의 ‘b`는 바이트인 8 비트를 의미한다. 16 비트 데이터 입력의 경우 inport(IO_Addr) 이고, 16 비트 출력의 경우는 outport(IO_Addr, 출력할 값)이다.
참고 자료
없음
압축파일 내 파일목록
TB386EX.H
1w.c
6조 마프실험결과보고서1.hwp
상태도.txt
smpl1_s.c
SMPLIO1.EXE
smplio1.hwp