Jump to content

ajuda programa assembly


jlucas1

Recommended Posts

ola,eu preciso fazer um programa que receba frases ou palavras e imprima na tela essa frase ou palavra e fique em loop ate que o usuario de enter sem ter digitado nada,mas nao sei como fazer a parte de imprimir e ficar em loop,poderiam me ajudar?

.model small
.stack
.data

texto1 db "INSIRA UMA PALAVRA:",0
string 6 DUP (?)
texto2 db "SUAS PALAVRAS FORAM:",0
.code
.startup

;parte 1:imprimir
MOV si,offset texto1

IMPRIMIR:
MOV al,[si]
CMP al,0
JE IMPRIMIU
INC si
MOV ah,14
INT 10h
JMP IMPRIMIR
IMPRIMIU:

;parte 2:leitura do teclado
MOV si,offset string
MOV cx,0 ;numero

INPUT:
MOV ah,00 ;espera
INT 16h
CMP al,13 ;tecla enter
JE FIM_INPUT
CMP al,8 ;apagar
JE APAGAR
CMP cx,9 ;contador(talvez precise alterar)
INC cx ;++
MOV [si],al
INC si
MOV ah,14 ;mostrar a tecla precionada na tela
INT 10h
JMP INPUT

APAGAR:
CMP cx,0
JE beep
DEC si
DEC cx
MOV al,8
MOV ah,14
INT 10h

MOV al,32
MOV ah,14
INT 10h  
MOV al,8 ;recuar
MOV ah,14
INT 10h
JMP INPUT ;retorna ao input

beep:
MOV al,7
MOV ah,14
INT 10h
JMP INPUT

FIM_INPUT:
MOV al,0
MOV [si],al

;parte 3:fazer isso ir para a tela do usuario


MOV dh,2
MOV dl,0
MOV ah,2
INT 10h

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...