Está en la página 1de 2

.MODEL SMALL .STACK 64 .DATA msj DB "INGRESE EL NUMERO DEL REFRAN",10,13,"$" buffer DB 5000 DUP(?) buff1 DB 60 DUP(?

) buff2 DB 60 DUP(?) buff3 DB 60 DUP(?) num DB 3,?,3 DUP(?) erm DB 10,13,"ERROR!!!",10,13,"$" refra DB "REFRANES.TXT",0 ficha DW ? ncar DB ? salto DB 10,13," $" .CODE inicio: MOV AX,@DATA MOV DS,AX MOV AH,3Dh LEA DX,refra MOV AL,00 INT 21h JC error MOV ficha,AX MOV AH,3Fh MOV BX,ficha LEA DX,buffer MOV CX,150 INT 21h JC error MOV ncar,AL MOV AH,3Eh MOV BX,ficha INT 21h JC error repite: MOV AH,9 LEA DX,msj INT 21h MOV AH,10 LEA DX,num INT 21h XOR BX,BX MOV AH,num[BX+2] MOV AL,num[BX+3] SUB AX,3030h AAD CMP AL,BH JE fin MOV BL,3 CMP AL,BL JA error XOR SI,SI MOV CL,AL XOR CH,CH lazo: MOV AL,buffer[SI] INC SI CMP AL,'.' JNE lazo INC CH CMP CL,CH JE mostrar

MOV BX,SI JMP lazo mostrar:MOV DL,buffer[BX] MOV AH,2 INT 21h INC BX CMP DL,'.' JNE mostrar MOV AH,9 LEA DX,salto INT 21h JMP repite fin: MOV AH,4Ch INT 21h error: MOV AH,9 LEA DX,erm INT 21h JMP fin END inicio

También podría gustarte