[zxspectrum] Re: CPU vs CPU

  • From: Enrico Maria Giordano <e.m.giordano@xxxxxxxxxxxxxxx>
  • To: zxspectrum@xxxxxxxxxxxxx
  • Date: Fri, 29 May 2015 10:58:35 +0200



Il 29/05/2015 09:34, Stefano Bodrato ha scritto:

Parlando di confronti tra CPU, ho realizzato un convertitore assembly
da z80 a 486,

Complimenti!

convinto che avrei ottenuto le seguenti conferme:

- i86 avrebbe dovuto dimostrarsi più performante, anche a parità di
clock, per il minor numero di cicli di clock impiegati ad eseguire le
istruzioni - lo z80 avrebbe permesso di risparmiare spazio di codice
proprio grazie all'architettura a 8 bit e alla presenza delle
istruzioni RET condizionate.

Sul secondo punto mi sbagliavo completamente ! Ho convertito un
piccolo interprete BASIC e ho osservato che il peso delle istruzioni
a 8 bit su Intel non era superiore (fatta eccezione per le ret
condizionate).

Non è che abbia capito benissimo né ciò che hai realizzato né i risultati che hai ottenuto... :-(

Inoltre la presenza di istruzioni per eseguire
moltiplicazioni e divizioni mi ha permesso di tagliare grosse
porzioni di codice senza particolare fatica !

Non me ne parlare! Sto combattendo con le mie routine matematiche e più di una volta avrei desiderato che lo Z80 fosse in grado di fare nativamente moltiplicazioni e divisioni...

In pratica lo stesso BASIC da 3K è diventato ancora più piccolo una
volta convertito in COM per MSDOS.

Però!

Il fatto che i programmi non vengano ottimizzati è solo conseguenza
della disponibilità di maggior memoria e maggior potenza che rendono
sconveniente l'uso del modello di memoria "tiny".

Secondo me anche dell'esistenza di strumenti di programmazione comodi ma mal realizzati. Anche i migliori compilatori C superottimizzanti possono fare poco contro un bel programma scritto direttamente in ASM da un esperto.

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: