IsidoroKZ ha scritto:Avevo scritto tempo fa per Z80 alcune routine per calcolare qualche funzione non lineare (radice quadrata, esponenziale, logaritmo e tangente) in BCD, ovviamente in assembler. Era la sagra del cordic!
Urca!

Moderatore:
Paolino
IsidoroKZ ha scritto:Avevo scritto tempo fa per Z80 alcune routine per calcolare qualche funzione non lineare (radice quadrata, esponenziale, logaritmo e tangente) in BCD, ovviamente in assembler. Era la sagra del cordic!



IsidoroKZ ha scritto:Il link a EY punta ad un articolo che è stato reso invisibile poiché è in realta un post, non un articolo. Gli avevo già detto di scriverlo come post.
Max

Include "display.bas"
Include "keyboard.bas"
Dim c(3) As Short
Dim key As Long
main:
While 1
key = tastiera()
WendEnd
Function tastiera() As Long
Dim d As Short Dim bin As Long inizio:
c(0) =0
c(1) =0
c(2) =0
d = 0
c(0) = Get(00)
c(1) = Get(01)
c(2) = Get(02)
d = c(0) + c(1) + c(2)
If d <> 0 Then
If statopin = 0 Then
count = count + 1
statopin = 1
Endif
Endif
If d = 0 Then
statopin = 0
Endif
bin = converti_dec(count)
Call visualizza(00, bin)
Goto inizio
End Function
PietroBaima ha scritto:All’epoca i programmatori seri utilizzavano esclusivamente l’assembler e ottimizzavano a livello di byte (di bit no, a quel livello ottimizzavano gli hardwaristi).
alien75 ha scritto: Comunque questo BASIC permette di inserire pure delle routine in ASM.
Piercarlo ha scritto:alien75 ha scritto: Comunque questo BASIC permette di inserire pure delle routine in ASM.
Credo che all'epoca lo facessero tutti; con 64K di memoria massima a qualche compromesso bisognava sottostare per forza di cose... e di cose ne facevano girare comunque un bel po'!
c(0) = Get(00)
c(1) = Get(01)
c(2) = Get(02)

Torna a Realizzazioni, interfacciamento e nozioni generali.
Visitano il forum: Nessuno e 5 ospiti