2014-03-29 2 views
1

EMU8086을 사용하고 있으며 숫자를 입력하고 이름 (유형 1 인쇄)을 인쇄하는 프로그램을 만들려고합니다. 어떤 제안이라도 있습니까? 이 코드는 현재 "1"로 계속 인쇄됩니다.어셈블리 타이핑 번호 및 인쇄 문자열

.data 


buffer1 db 'one',0Dh,0Ah,'$' 
buffer2 db 'two',0Dh,0Ah,'$' 


.code 
start: 
mov ax,@data 
mov dx,ax 
mov es,ax 


next: 
mov ah,08h 
int 21h 
cmp al,'1' 
jz one 
cmp al,'0' 
jz two 
jmp next 



one: 

lea dx,buffer1 
mov ah,09h 
int 21h 
MOV AH,4CH 
INT 21H 
jmp end 

two: 

lea dx,buffer2 
mov ah,09h 
int 21h 
MOV AH,4CH 
INT 21H 
jmp end 


end: 

.exit 
end start 
+0

'cmp al, '0'','cmp al, '2''이 아니어야합니까? –

답변

0
mov ah,08h 
int 21h 

21H/08H가 존재하지 않습니다. 문자열을 입력하려면 21H/0AH입니다. 희망이 작동합니다 :

+0

물론 존재합니다! OP는 문자열 입력을 요청하지 않았습니다. 그러나 문제가 무엇인지는 분명하지 않습니다. – rkhb

+0

문자열을 입력하려고했는데 0AH였습니다. :) – Calips