codice assembly per 68HC11 calcolare sin (x)
Domanda
Quale sarebbe il codice assembly per 68HC11 per calcolare il valore del seno utilizzando serie di Taylor o di una tabella di ricerca?
Valore di visualizzazione sarà solo in numero intero. Come fosse un lavoro tabella di ricerca in questo caso? Come può essere implementato utilizzando Taylor serie ?
Soluzione
Non ho fatto alcun 68HC11 programmazione in un lungo periodo di tempo, così ho vinto' t in grado di dare istruzioni precise, ma si vuole fare di più o meno il seguente:
- Definire una tabella in memoria che ha 256 (o comunque molti) i valori per Sin (x), su un quadrante, nell'intervallo [0-Pi / 2].
- Converti una tensione alla gamma [0-Pi / 2], tenendo traccia di quale quadrante era in origine. Ad Q2, si desidera che il valore (Pi / 2-x), per esempio.
- Cercare il valore regolato nella tabella, negando il risultato se l'angolo originale era in 3 ° o 4 ° quadrante.
Specifiche sarebbero naturalmente dipende campi di ingresso e di uscita, ma in generale, sarà possibile utilizzare indicizzato modo di indirizzamento, con registro indice punta verso il tavolo, o in alternativa, indirizzamento esteso, con all'offset impostato modificando il codice operativo.
Altri suggerimenti
Se siete alla ricerca di una soluzione in virgola mobile, è necessario implementare le operazioni in virgola mobile prima. La parte sarà non banale su un 68HC11 che non ha supporto anche 32 operazioni bit. Dopo di che, calcolando il peccato è facile, ma molto lento. ; -)
Utilizzare una tabella di ricerca.
Non utilizzare serie di Taylor.
Google ha trovato questo .