## 프로젝트 개요
키보드 입력을 받고 유효성 검사를 수행하는 시스템 레벨 애플리케이션입니다. 알파벳, 숫자 입력만 허용하며 에러 상황을 처리합니다.
## 주요 기능
- 키보드 입력 수집
- 입력 값 유효성 검사 (알파벳/숫자)
- 에러 메시지 출력
- 결과값 출력
## 사용 방법
1. DOS 환경에서 실행 가능한 .COM 파일로 컴파일
2. 키보드 입력 후 Enter 키를 누르면 결과가 출력됨
3. 비정상 입력 시 오류 메시지 표시
## 확장 가능성
- 입력 길이 제한 추가
- 다른 특수 문자 허용 설정
- 입력 시간 제어 기능 연동
🔧 실용적인 예제: 키보드 입력 처리 및 오류 관리
Assembly 예제
중급
난이도
예제
타입
10/18
등록일
실용적인 예제: 키보드 입력 처리 및 오류 관리
중급태그
코드 예제
; x86 DOS 환경에서 실행 가능한 .COM 파일
org 100h
start:
mov ax, 07C0h
mov es, ax
xor di, di
cld
; 버퍼 초기화
mov byte [buffer], 0
mov dx, offset prompt
call print_string
input_loop:
mov ah, 0Ah
lea dx, buffer
int 21h
cmp byte [buffer+1], 0
je input_done
; 유효성 검사
xor cx, cx
mov si, offset buffer+2
valid:
lodsb
cmp al, 0
je input_done
cmp al, 9
jb invalid_char
cmp al, 'A'
jb invalid_char
cmp al, 'Z'
ja invalid_char
cmp al, 'a'
jb invalid_char
cmp al, 'z'
ja invalid_char
inc cx
jmp valid
invalid_char:
mov ah, 09h
lea dx, error_msg
int 23h
jmp input_loop
input_done:
mov ah, 09h
lea dx, result_msg
int 21h
ret
print_string:
push ax bx cx dx si di bp
mov ah, 09h
int 21h
pop bp
ret
buffer db 80 dup(0)
error_msg db '잘못된 입력입니다. 다시 입력해 주세요.', 0Dh, 0Ah, '$'
result_msg db '입력한 값: ', 0Dh, 0Ah, '$'
prompt db '문자열을 입력하세요 (Enter로 종료): ', 0Dh, 0Ah, '$'
등록일: 2025년 10월 18일 02:35
언어 정보
언어
Assembly
카테고리
System
인기도
#25
학습 팁
코드를 직접 실행해보세요
변수를 바꿔가며 실험해보세요
오류가 나도 포기하지 마세요
다른 예제도 찾아보세요