DATA SEGMENT PUBLIC
DOM DB "Digita un numero decimale: ",'$'
RIS DB "Il numero digitato e': ",'$'
ACAPO DB 10,13,'$'
NUMERO DW ?
DIM EQU 10 ;dichiaro una costante per definire la lunghezza del buffer
DATA ENDS ;fine del segmento dei dati
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
INIZIO:
;CARICO I DATI
MOV AX,DATA
MOV DS,AX
STAMPA MACRO FRASE
MOV AH,09H ;RICHIESTA DI STAMPA DI UNA FRASE
LEA DX,FRASE ;CARICO LA FRASE
INT 21H ;INTERRUPT CHE PERMETTE LA STAMPA
ENDM ;FINE DELLA MACRO PER STAMPARE FRASE
STAMPA DOM ;STAMPA DELLA STRINGA RICHIAMANDO LA MACRO
MOV AH,0AH ;RICHIESTA DI BUFFER
INT 21H ;interrupt che permette di eseguire il buffer
;OFFSET 0 MAX NUMERO DI CARATTERI
;OFFSET 1 NUMERO DI CARATTERI
;OFFSET 2 REALE CONTENUTO DEL BUFFER
BUFFER DB DIM DUP('') ;definisco un buffer formato da byte
;RESTITUISCO IL CONTROLLO AL DOS
MOV AH,4CH
INT 21H
CODE ENDS ;FINE DEL SEGMENTO DEL CODICE
END INIZIO ;CHIUSURA ETICHETTA CHE INDICA INIZIO DEL PROGRAMMA
Per ora ho scritto questo, solo che una volta che digito il numero e premo invio il programma non termina, cosa ho sbagliato?
Il tasm non segnala errori...