Vai al contenuto
PLC Forum


Operazioni Aritmetiche In Assembler


ziopolly

Messaggi consigliati

Salve a tutti,

Continuando nella mia esplorazione nel mondo dei PIC mi sono imbattuto in un ostacolo facilmente superabile da voi che ne "masticate" più di me: come manipolare aritmeticamente numeri superiori a 255?

Per ora sono riuscito a "digerire" la conversione da binario a BCD

Grazie ancora anticipatamente per l'aiuto

Massimo

Link al commento
Condividi su altri siti


Devi usare variabili 16 o più bits.

Gia una moltiplicazione di 2 interi da 8 da il risultato in 16.

Ci sono anche routines per eseguire in asm le operazioni con numeri reali.

Link al commento
Condividi su altri siti

Grazie Livio, fin lì c'ero arrivato! Il problema è capire, vedere, trovare un esempio di routine che manipoli un paio di numeri spalmati su due byte. Primo interrogativo: conviene trasformare il tutto in BCD e poi eseguire le operazioni oppure lavorare direttamente in binario?

grazie ancora

Massimo

Link al commento
Condividi su altri siti

In effetti ci avevo pensato... ma poi accacca mi ha indirizzato verso una soluzione che a prima vista mi sembra relativamente semplice! grazie doppia H!

Link al commento
Condividi su altri siti

Si in genere si usano librerie già pronte e collaudate. C'è solo l'imbarazzio della scelta.

Comunque se sci sono calcoli da eseguire, meglio usare linguaggi come il "C".

Link al commento
Condividi su altri siti

uso l'assembler perché è l'unico che conosco (si fa per dire) grazie al buon Tanzilli. Per me l'elettronica è sempre stata solo un passatempo e non ho tantissimo tempo da investire per imparare un nuovo linguaggio come il C anche se mi piacerebbe. Grazie comunque anche a te Livio. :thumb_yello:

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...