Sistemi di Calcolo

Corso di Laurea in Ingegneria Informatica e Automatica - A.A. 2017-2018

HomePage | Avvisi | Diario lezioni | Programma | Materiale didattico | Esami | Forum | Login

Esercitazione 2 - 23 ottobre 2014 (60 min)


Conversioni di base con il comando bc

E' possibile usare il comando bc per effettuare conversioni arbitrarie di base. E' sufficiente impostare i parametri obase (base dell'output) e ibase (base dell'input): tutti i valori dati in ingresso verranno interpretati in base ibase e tutti quelli stampati saranno in base obase.

All'avvio di bc, sia ibase che obase sono preimpostati a 10 (valore di default).

Conversione decimale -> esadecimale
Ad esempio, per convertire 128 da decimale a esadecimale si può fare come segue, usando la modalità interattiva di bc:

$ bc
obase=16
128
80


il valore 128 convertito in esadecimale è 0x80. Per uscire da bc basta premere Ctrl+d.

Equivalentemente, si può usare bc senza entrare in modalità interattiva come segue:

$ echo "obase=16; 128" | bc
80


dove il comando interno echo invia la stringa "obase=16; 128" sul canale di output standard, che viene fornito come input a bc usando l'operatore | (pipe) della shell.

Conversione esadecimale -> decimale
Per convertire ad esempio 0xCAFE da esadecimale a decimale si può scrivere:

$ echo "ibase=16; CAFE" | bc
51966



Operazioni aritmetiche in base 16
Infine, si possono fare operazioni aritmetiche in base 16 come segue:

$ echo "obase=16; ibase=16; A+1" | bc
B




Esercizio 1

Facendo riferimento agli operandi e ai modi di indirizzamento della memoria nell'ISA IA32, si risponda alle domande del seguente questionario.


Esercizio 2

Facendo riferimento alle istruzioni di movimento dati nell'ISA IA32, si risponda alle domande del seguente questionario.


Esercizio 3

Facendo riferimento alle istruzioni aritmetico-logiche nell'ISA IA32, si risponda alle domande del seguente questionario.


Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by WikkaWiki
Page was generated in 0.0246 seconds