Sezione![]() |
Indirizzi Base
Registri Interni
|
Palestra Livello Apprendisti Livello Esperti |
Programmare in Assembly |
Esercizio n° A029 3/4 [141 di 157] |
|
|
||
Aritmetica con Numeri Binari -
DIFFERENZA di 2 numeri DECIMALI a 2 cifre Versione Ottimizzata con MACRO |
||
Dettaglio sulla Terza Fase: differenza dei 2 operandi |
|
![]() | La terza fase del progetto esegue la sottrazione aritmetica, visualizzando i 2 operandi e la loro differenza. |
|
|
![]() |
Esercizio![]() ![]() ![]() |
NB: se il testo nell'Area
ti
sembra strano installa il font Giobe.TTF: clicca qui!! |
![]() |
![]() |
![]() |
|
![]() |
A ciò sono delegate le 2 Procedure locali, Diff1 e Diff2, specializzate per rendere al meglio il compito loro affidato, la prima in notazione decimale e la seconda in notazione binaria, con l'aiuto delle 3 nuove Macro locali, M_Chr_, M_ByDec e M_BytAsc descritte in questa pagina. |
|
![]() |
La prima, Diff1, organizza la proposta in notazione decimale del minuendo, del sottraendo e della loro differenza: |
|
|
![]() |
La seconda, Diff2, propone il minuendo, il sottraendo e la loro differenza in notazione binaria: |
|
|
![]() | Per la sottrazione si utilizza l'istruzione SUB che sottrae tra loro l'operando sorgente (sottraendo) dall'operando destinazione (minuendo), lasciando il risultato nell'operando di destinazione, al posto di quello di partenza. |
|
![]() | Rispetto a quelle della somma le Procedure locali Diff1 e Diff2 eseguono entrambe un controllo sugli operandi scambiandoli tra loro se il sottraendo è maggiore del minuendo. |
|
![]() | In questo modo è possibile aggiungere il segno - in presenza di operazioni che danno risultato negativo. |
|
![]() |
Palestra Apprendisti |
![]() |
Esercizio n° A029 3/4 |
![]() |
![]() |
![]() |
||
141 di 157 |
|
|
|
Home
![]() |
|
|||||||
|
Motore Ricerca |
|