Sulla pagina wiki sui file .COM https://en.wikipedia.org/wiki/COM_file si legge:
I file .COM in DOS impostano tutti i registri del segmento x86 sullo stesso valore e il registro SP (puntatore dello stack) su 0xFFFE, quindi lo stack inizia nella parte superiore del segmento di memoria e procede da lì.
Ma questo in realtà imposta lo stack in modo che inizi una parola sotto la parte superiore del segmento. Quando si spinge un valore nello stack, la CPU decrementa SP su 0xFFFC e memorizza il valore lì, sprecando così la parola superiore del segmento. Qual è la ragione per cui DOS non imposta invece SP su 0?
int 20h
un'istruzione lì in modo da poter uscire dal programma emettendoret
un'istruzione.