Pada halaman wikpedia tentang file .COM https://en.wikipedia.org/wiki/COM_file berbunyi:
File .COM di DOS mengatur semua register segmen x86 ke nilai yang sama dan SP (stack pointer) mendaftar ke 0xFFFE, sehingga tumpukan dimulai di bagian paling atas dari segmen memori dan bekerja turun dari sana.
Tapi ini sebenarnya mengatur tumpukan untuk memulai satu kata di bawah bagian atas segmen. Ketika mendorong nilai pada stack, CPU akan menurunkan SP ke 0xFFFC dan menyimpan nilai di sana, sehingga membuang-buang kata teratas dari segmen tersebut. Apa alasan DOS tidak mengatur SP ke 0?
int 20h
instruksi di sana sehingga Anda dapat keluar dari program Anda dengan mengeluarkanret
instruksi.