Sezione |
Indirizzi Base
Registri Interni
|
Palestra Livello Apprendisti Livello Esperti |
Programmare in Assembly |
Esercizio n° A018 3/5 [94 di 157] |
|
|
||
Gestione Numeri Binari -
Conversione da word a 4 caratteri Ascii EXAD - Progetto di Wor2Asc Stampa 160 numeri esadecimali a 16 bit in sequenza casuale |
||
Progetto della Procedura Wor2Asc |
|
Il problema della visualizzazione di un numero binario a 8 bit è stato descritto ampiamente nel progetto precedente, culminato con il progetto della procedura Byt2Asc; se vuoi rinfrescare i concetti torna qualche pagina indietro.. |
|
Per mettere a video un numero binario a 16 bit vale la stessa logica, applicata 2 volte; una word è infatti costituita da 2 bytes. |
|
Anche in questo caso è conveniente predisporre una Procedura interna, da inserire nella zona ad essa riservata nel nostro EsA018.ASM, dopo la definizione delle variabili e dei testi del programma, al fine di poterla riutilizzare in tutte le (numerose) occasioni in cui si presenterà questa esigenza. |
|
La chiameremo Wor2Asc, da Word a (stringa di 4 caratteri) Ascii, cioè si occuperà della Conversione di una word nei 4 caratteri Ascii esadecimali: |
|
|
Esercizio |
NB: se il testo nell'Area
ti
sembra strano installa il font Giobe.TTF: clicca qui!! |
|
La word da visualizzare deve essere disponibile, in ingresso, nel registro AX, e può assumere uno dei 65536 valori da 0000H a FFFFH, espresso genericamente dall'espressione xywzH, con x, y, w e z in grado di assumere uno qualunque dei simboli, da 0 a 9 e da A a F, del sistema di numerazione esadecimale. | |
In pratica x, y, w e z rappresentano rispettivamente i 4 nibble della word da convertire, dal più significativo (bit15÷bit12) al meno significativo (bit3÷bit0) |
|
Con questa premessa è chiaro che basterà obbligare la Byt2Asc a stampare prima la parte alta di AX (il byte AH=xyH) e poi la sua parte bassa (il byte AL=wzH). |
|
Il breve codice assembly della Wor2Asc non ha bisogno di ulteriori commenti. |
|
Palestra Apprendisti | Esercizio n° A018 3/5 | |||||||
94 di 157 |
|
|
|
Home |
|
|||||||
|
Motore Ricerca |
|