Sto cercando di eseguire il seguente codice in assembly:Ottenere floating eccezione punto durante il tentativo di utilizzare div in assemblea
mov %si, %ax
mov $15, %si
div %si
mov %eax, %esi
Quando faccio il mio programma, si compila, ma in fase di esecuzione mi dà una virgola mobile eccezione. Ho provato a sostituire i parametri dell'ultima riga con %ah
e %si
.
In breve, sto cercando di dividere %esi
per 15
. Voglio solo uno int
e non ho bisogno di uno double
.
Grazie
Nulla (o roba casuale), ho pensato che la mia operazione fosse% si /% ax, che è stata memorizzata in% ax – juliensaad
Quindi sarà necessario cancellare (impostare su zero) il registro 'dx'. Perché rappresenta i primi 16 bit del dividendo di input. – Mysticial
Ha funzionato! Grazie mille, risponderò la risposta tra 7 minuti – juliensaad