Matteo34
Nuovo Utente
- Messaggi
- 104
- Reazioni
- 3
- Punteggio
- 45
Ho scritto il seguente programma in Assembly con assemblatore MASM su sistema operativo MS-DOS, quindi ho usato i servizi di sistema di quest'ultimo, il problema e che mi stampa una stringa errata e non capisco il perchè:
Questo è l'output:

Perché succede ciò?
Codice:
stack SEGMENT PARA STACK
db "S"
stack ENDS
data SEGMENT PARA PUBLIC
msg db "Hello World$"
data ENDS
code SEGMENT PARA PUBLIC
ASSUME cs: code, ds: data, ss: stack
_start:
;write syscall
mov ah, 09h
mov dx, OFFSET msg
int 21h
;return the control at MS-DOS
mov al, 1
mov ah, 04ch
int 21h
code ENDS
END _start

Perché succede ciò?