Complemento a unoIl complemento a uno (in inglese ones' complement), o complemento alla base diminuita, è un metodo di rappresentazione dei numeri relativi in base binaria. In origine la rappresentazione del complemento a uno deriva dal complemento alla base (2) diminuita di uno per quel che riguarda i numeri negativi, ovvero se nel complemento a 2 un numero negativo N è individuato come 2^ (n)-N dove n è il numero di bit a disposizione, con il complemento a 1 un numero negativo sarà individuato con 2^ (n)-N-1. Di conseguenza con questa rappresentazione otterremo un valore dello 0 doppio (tutti 0 e tutti uno) infatti se calcoliamo il valore di 0 con n bit avremo 2^ (n-1)-1 che corrisponde alla configurazione con n bit a 0. Il valore del più piccolo numero rappresentabile sarà quindi -2^ (n-1)+1 dove aggiungiamo 1 poiché perdiamo un numero con la seconda rappresentazione dello 0. La rappresentazione in complemento a 1 è meno usata di quella in complemento a 2 ma, per la sua facilità di calcolo, risulta molto utile nelle operazioni di sottrazione all'interno delle ALU. Calcolo del complemento a unoPer trovare la rappresentazione in complemento a uno si invertono semplicemente tutti i bit della parola. Facciamo un esempio. Prendiamo il numero 10 rappresentato su 8 bit in base 2: 0000 1010 (10) Il suo complemento a uno sarà: 1111 0101 (-10) AddizioneEsempio: 0001 0110 22 + 0000 0011 3 =========== ==== 0001 1001 25 SottrazioneEsempio: 0000 0110 6 - 0000 0001 1 =========== ==== 0000 0101 5 Complemento ad uno di un insiemeIl complemento ad uno di un insieme si scrive con ed è un insieme tale che sommato al primo esplora lo spazio di tutti i valori possibili. In statistica, tale spazio di un numero discreto di eventi (elementi degli insiemi) è detto probabilistico ed è denotato con , e vale che: Lo spazio delle probabilità ha valore 1, che per un numero discreto di eventi, indica un evento certo. Rappresentazione dello zeroAl contrario di quanto avviene nella rappresentazione in complemento a due dove esiste una sola rappresentazione dello zero (quella con tutti i bit a zero), esistono in complemento a uno due differenti rappresentazioni del numero zero, quella con tutti zero e quella con tutti uno: 0000 0000 (+0) 1111 1111 (-0) questo può essere utile quando sia necessario rappresentare lo zero in due forme: lo zero positivo e lo zero negativo; anche se un punto di vista puramente matematico lo zero non ha segno, tuttavia in alcune applicazioni può essere utile conservare tale informazione. Evitare lo zero negativoÈ semplice, si calcola il complemento a uno del sottraendo e si sottrae al primo operando. In questo modo l'addizione non ritornerà uno 0 negativo. 0001 0110 22 0001 0110 22 1110 1001 −22 1110 1001 −22 + 1110 1001 −22 − 0001 0110 22 + 0001 0110 22 − 1110 1001 −22 =========== ==== ma =========== ==== allo stesso modo, =========== === ma =========== === 1111 1111 −0 0000 0000 0 1111 1111 −0 0000 0000 0 Voci correlateCollegamenti esterni
|