[zxspectrum] Re: Aggiornata routine matematica MUL
- From: Enrico Maria Giordano <e.m.giordano@xxxxxxxxxxxxxxx>
- To: zxspectrum@xxxxxxxxxxxxx
- Date: Fri, 14 Aug 2015 10:09:14 +0200
Il 14/08/2015 08:40, Cesare Falco ha scritto:
Sto studiando la possibilità di farlo anche con la DIV (divisione)
ma purtroppo l'algoritmo è ovviamente diverso e richiede per lo
meno un confronto che fallisce in caso di interi con segno.
scusa, ma perché non fai il confronto tra i valori assoluti e
determini il segno alla fine del ciclo in base al segno degli
operandi?
Mi sfugge qualcosa? :-)
Sì. Ti spiego: la somma e la sottrazione non hanno bisogno di alcuna
gestione del segno perché queste operazioni ne tengono conto
automaticamente in maniera nativa.
Da poco ho scoperto che anche l'algoritmo che ho implementato per la
moltiplicazione fa la stessa cosa e quindi ho potuto eliminare la
gestione del segno.
Per la divisione invece sto ancora gestendo il segno proprio perché con
l'algoritmo che sto usando la gestione non viene automatica come nelle
altre tre operazioni. E lo sto proprio gestendo in questo modo: prendo i
valori assoluti, li divido e se i segni erano diversi nego il risultato.
Sembra semplice ma comunque rallenta un po' l'operazione.
EMG
--
EMAG Software Homepage:
http://www.emagsoftware.it
The EMG Music page:
http://www.emagsoftware.it/emgmusic
The EMG's ZX-Spectrum Page:
http://www.emagsoftware.it/spectrum
The Best of Spectrum Games:
http://www.emagsoftware.it/tbosg
Other related posts: