- Lamezia Servizi
Transcript
- Lamezia Servizi
Operazioni binarie OPERAZIONI BINARIE ADDIZIONE BINARIA Le regole dell’addizione di due bit sono sintetizzate nella seguente tabella: + 0 1 0 0 1 1 1 0 con riporto di 1 cioè: (1)2 + (1)2 = (10)2 L’addizione di due numeri si esegue, quindi, tenendo conto dei riporti. Esempio Dati A = 10111, B = 101 otteniamo A B A+B 1 1 0 1 1 1 1 1 1 1 1 0 0 1 1 0 + = riporti SOTTRAZIONE BINARIA Le regole della sottrazione di due bit sono sintetizzate nella seguente tabella: - 0 1 0 0 1 1 1 0 minuendo con prestito di 1 cioè: (10)2 – (1)2 = (1)2 sottraendo La sottrazione di due numeri si esegue, quindi, col metodo diretto (cioè secondo le normali regole) come nel sistema decimale tenendo conto degli eventuali prestiti. Esempio Dati A = 101101, B = 11010 otteniamo A B A-B 1 1 0 1 1 1 1 0 1 0 0 1 0 1 1 1 0 1 = prestiti Partendo da destra, 1 meno 0 è 1 senza bisogno di prestiti; 0 meno 1 richiede, invece, un prestito di 1 dalla sinistra e quindi otteniamo 10 da cui, sottraendo 1, otteniamo 1; la cifra successiva, avendo prestato 1 a destra diventa 0 che sottratta a 0 restituisce 0; 1 meno 1 dà 0 e così, iterativamente, fino al termine dell’operazione. Fondamenti di informatica - Pagina 20 Operazioni binarie MOLTIPLICAZIONE BINARIA Le regole della moltiplicazione di due bit sono sintetizzate nella seguente tabella: * 0 1 0 0 0 1 0 1 Il procedimento della moltiplicazione binaria è analogo, cioè, a quello della moltiplicazione decimale. Esempio Dati A = 1110110, B = 11001 otteniamo A B A*B 1 1 0 1 1 1 0 1 1 1 0 0 1 0 1 1 1 1 0 0 0 1 0 1 0 0 1 1 0 1 1 1 0 0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 1 0 1 0 0 1 0 0 1 1 0 * = Osserviamo che per moltiplicare un numero binario per 10, 100, 1000 … basta aggiungergli uno, due, tre zeri; così è ad esempio: 1 0 1 1 * 1 0 = 1 0 1 1 0 1 1 0 1 1 * 1 0 0 = 1 1 0 1 1 0 0 1 1 0 0 * 1 0 0 0 = 1 1 0 0 0 0 0 DIVISIONE BINARIA La divisione binaria si esegue con lo stesso procedimento usato con i numeri scritti nel sistema decimale. I passi del procedimento sono i seguenti: 1. Si confrontano gli n bit più significativi del dividendo con gli n bit del divisore; 2. La prima cifra del quoziente sarà 1 oppure 0 a seconda che il divisore contenga o no il dividendo; 3. Si applicano, successivamente, le regole della divisione decimale. Esempio Dati A = 111011, B = 101 otteniamo 1 1 1 0 1 1 1 0 1 1 0 1 0 0 0 1 1 1 1 0 0 0 1 1 1 0 0 1 1 1 1 1 0 resto Fondamenti di informatica - Pagina 21 Operazioni binarie COMPLEMENTO E SOTTRAZIONE IN COMPLEMENTO A DUE La sottrazione fra due numeri in binario può essere realizzata con una tecnica diversa da quella esposta precedentemente e, cioè, con due diverse operazioni esplicitate di seguito. Analizziamo, prima, il procedimento nel caso del sistema decimale. Supponiamo di voler sottrarre il numero 3717 al numero 5376; l’operazione 5373 – 3717 = 1659 può anche essere svolta nel seguente modo: 5376 + (10000 – 3717) – 1000 = 5376 + (6283) – 10000 = 1659 Il termine racchiuso in parentesi è il complemento a dieci del sottraendo; diciamo complemento a dieci di un numero quel numero che sommato al primo dà come risultato la potenza del 10 immediatamente superiore al numero stesso. Con un procedimento più lineare, la determinazione del complemento a 10 di un numero, si basa sul seguente procedimento: 1. Calcolo della potenza del 10 immediatamente superiore al numero da complementare (100 se il numero ha due cifre, 1000 se ne ha tre, 10000 se ne ha quattro … quindi in generale 10n se n sono le cifre del numero); 2. Sottrazione di 1 a questa potenza (otteniamo, rispettivamente, 99, 999, 9999, … cioè il numero massimo esprimibile con n cifre 10n – 1); 3. Sottrazione, cifra per cifra, con il numero dato (otteniamo, così, il complemento a 9 del numero dato); 4. Addizione di 1 al numero che si ottiene; otteniamo il complemento a 10. Ritornando alla sottrazione sopra esemplificata osserviamo che la differenza si ottiene sommando al minuendo il complemento a 10 del sottraendo e sottraendo poi la potenza del 10 immediatamente superiore al sottraendo; schematicamente: 1. Dati il minuendo e il sottraendo si pareggiano eventualmente le cifre del sottraendo con degli 0 a sinistra della cifra più significativa; 2. Si calcola il complemento a 10 del sottraendo; 3. Si addiziona il minuendo al complemento a 10 del sottraendo; 4. Si trascura la cifra più significativa della somma ottenuta; il numero rimanente è la differenza cercata. Esempio Dati A = 7893, B = 231 dovendo calcolare la differenza fra A e B iniziamo con il pareggiare le cifre del sottraendo alle cifre del minuendo (0231) e con il determinare il complemento a 10 di questo sottraendo: n = 4 per cui 104 = 10000 e, quindi, 10000 – 1 = 9999 – 0231 = 9768 + 1= 9769 addizioniamo, ora, il minuendo alla cifra così determinata: 7893 + 9769 = 17662 si trascuri la cifra più significativa della somma ottenuta; il numero rimanente è la differenza cercata: 17662 Fondamenti di informatica - Pagina 22 Operazioni binarie Nel sistema binario la sottrazione può essere, quindi, eseguita anche con il metodo del complemento a 2. Si procede, similmente a quanto già illustrato per il sistema decimale, nel modo seguente: 1. Si pareggiano le cifre del minuendo e del sottraendo inserendo degli zeri a sinistra della cifra più significativa; 2. Si calcola il complemento a 2 del sottraendo (si determina, prima, il complemento ad 1 del sottraendo invertendo ogni bit del numero: trasformando, cioè, gli 1 in 0 e viceversa; e a questo si aggiunge 1); 3. Si addiziona il minuendo al complemento a 2 del sottraendo; 4. Si trascura la cifra più significativa del risultato ottenendo, in tal modo, la differenza cercata. Esempio Dati A = 1011011, B = 11101 si pareggiano le cifre del sottraendo a quelle del minuendo ottenendo B = 0011101; si determina il complemento ad 1 del sottraendo tramite inversione di bit da cui B = 1100010; si aggiunge 1 ottenendo: 1100010 + 1= 1100011 si somma il minuendo: 1011011 + 1100011 = 10111110 si elimina la cifra più significativa: il numero rimasto è la differenza cercata: 10111110 Fondamenti di informatica - Pagina 23