[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: