Strumenti Utente

Strumenti Sito


sezione_3b

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Prossima revisione
Revisione precedente
Prossima revisioneEntrambe le parti successive la revisione
sezione_3b [2017/12/14 11:10] – creata adminsezione_3b [2019/01/11 10:08] – [1 Sistemi di numerazione] admin
Linea 2: Linea 2:
  
 **Premessa** Gli argomenti di questo capitolo sono già stati trattati nella materia Sistemi Automatici; qui faremo solo un veloce ripasso. **Premessa** Gli argomenti di questo capitolo sono già stati trattati nella materia Sistemi Automatici; qui faremo solo un veloce ripasso.
 +
 +====== 1 Sistemi di numerazione ======
 +
 +  * numeri composti da più cifre
 +  * base: numero di valori che può assumere una cifra
 +  * sistemi di numerazione **pesati** (o **posizionali**): le cifre "pesano" di più o di meno a seconda della posizione (ad esempio centinaia, decine, unità); la cifra più a sinistra è quella più significativa, quella più a destra la meno significativa
 +  * forma polinomiale: valore della cifra moltiplicato per potenze crescenti del 10 a partire dalla cifra meno significativa
 +
 +`273_10=2*100+7*10+3*1=2*10^2+7*10^1+3*10^0` 
 +
 +  * sistema binario: a base 2, ogni cifra è detta bit e vale 0 o 1
 +  * MSB (most significant bit) è il bit più a sinistra; LSB (least significant bit) è il bit più a destra
 +  * conversione da binario a decimale usando la forma polinomiale e il valore corrispondente in base 10
 +
 +`1011_2=1*2^3+0*2^2+1*2^1+1*2^0=1*8+0*4+1*2+1*1=8+0+2+1=11_10`((in pratica un uno indica che il termine con la potenza di 2 corrispondente è presente, uno zero che non c'è))
 +
 +  * shift: traslare a sinistra o a destra un numero corrisponde a moltiplicare o divider per la base; ad esempio in binario ''110 << 1 = 1100'' equivale a moltiplicare 6 per 2 in base 10; viceversa ''110 << 1'' corrisponde a 6 diviso per 2 in base 10
 +
 +====== 2 Conversioni ======
 +
 +Da decimale a binario((con la calcolatrice si fa prima ;-) )) si può usare il metodo delle divisioni successive per due. Si continua a dividere per due il numero decimale fino ad ottenere zero come quoziente e riportando i resti. Leggendo la colonna dei resti dall'ultima alla prima divisione si ottiene il numero in binario (vedi esempio 3).
 +
 +====== 3 Aritmetica binaria ======
 +
 +Funziona come quella in base 10 (riporti, prestiti, ecc.) ma la sottrazione nei dispositivi elettronici si fa con un metodo più complicato ma più facile da implementare dal punto di vista circuitale sommando il complemento a due al sottraendo
 +
 +  * complemento a 2: si intende il complemento a 2<sup>n</sup> dove //n// sono i bit che si utilizzano per rappresentare i numeri (complemento a due di ''0011'' è ''1101'' perché 13 corrisponde a ''2^4 - 3'')
 +  * sottrazione sommando il complemento a 2 del minuendo e scartando la cifra più significativa (''1000 - 0011 = 1000 + 1101 = <del>1</del>0101'' cioè ''8 -3 = 5'')
 +  * complemento a 1: complemento a 2<sup>n</sup>-1 che si ottiene facilmente scambiando tutti gli 0 con 1 e viceversa () e sommando 1 (complemento a 1 di ''0011'' è ''1100'', cioè ''(2^(4)-1) -3'')
 +  * tornando al calcolo di prima ''1000 - 0011''
 +    * il complemento a 1 di ''0011'' è ''1100''
 +    * allora il complemento a 2 vale ''1100 + 1=1101''
 +    * la sottrazione diventa ''1000+1101=0101'' (dopo aver scartato la cifra più significativa nel risultato dell'addizione)
 +
  
  
sezione_3b.txt · Ultima modifica: 2021/02/10 10:57 da admin