Dispense di Informatica per l ITG Valadier



Documenti analoghi
4 3 4 = 4 x x x 10 0 aaa

BIT? Cosa c è dietro a questo nome? Che cos è il bit? Perché si usa? Come si converte un numero binario?

I SISTEMI DI NUMERAZIONE

Alessandro Pellegrini

Convertitori numerici in Excel

SISTEMI DI NUMERAZIONE E CODICI

Definizioni iniziali

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dell informazione negli elaboratori

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

4. Operazioni aritmetiche con i numeri binari

= 1*2^7 + 1*2^6 + 0*2^5 + 1*2^4 + 0*2^3 + 0*2^2 + 1*2^1 + 0*2^0 = 210

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno

Operazioni binarie fondamentali

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

(71,1), (35,1), (17,1), (8,1), (4,0), (2,0), (1,0), (0,1) 0, = 1, 431 0, = 0, 862 0, = 1, 792 0, = 1, 448 0, = 0, 896

Sistema di numerazione binario, operazioni relative e trasformazione da base due a base dieci e viceversa di Luciano Porta

SISTEMI DI NUMERAZIONE IL SISTEMA DECIMALE

I SISTEMI DI NUMERAZIONE (esercizi svolti)

SISTEMI DI NUMERAZIONE DECIMALE E BINARIO

ESEMPIO 1: eseguire il complemento a 10 di 765

Rappresentazione delle informazioni

Informatica. Rappresentazione dei numeri Numerazione binaria

Elementi di Informatica. ( Lezione II, parte I ) Sistemi di numerazione: binario, ottale ed esadecimale

Codici Numerici. Modifica dell'informazione. Rappresentazione dei numeri.

II.f. Altre attività sull euro

I SISTEMI DI NUMERAZIONE

Sistemi di Numerazione

Informazione analogica e digitale

Informatica Generale 02 - Rappresentazione numeri razionali

Architettura degli Elaboratori I Esercitazione 1 - Rappresentazione dei numeri

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

24 : 3 = 8 con resto 0 26 : 4 = 6 con resto 2

Appunti di informatica. Lezione 2 anno accademico Mario Verdicchio

Un ripasso di aritmetica: Rappresentazione binaria - operazioni. riporti

I componenti di un Sistema di elaborazione. Memoria centrale. È costituita da una serie di CHIP disposti su una scheda elettronica

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme

Algoritmi e strutture dati. Codici di Huffman

Codifica binaria dei numeri relativi

Giorgio Maria Di Nunzio

Un ripasso di aritmetica: Conversione dalla base 10 alla base 16

Elementi di Informatica e Programmazione

2. Limite infinito di una funzione in un punto

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.6. Unità di controllo microprogrammata

CREAZIONE DI UN DATABASE E DI TABELLE IN ACCESS

risulta (x) = 1 se x < 0.

Sistemi di Numerazione

La somma. Esempio: Il prodotto. Esempio:

Interesse, sconto, ratei e risconti

Conversione tra le basi binarie

Università degli Studi di Cassino Corso di Fondamenti di Informatica Codifica di dati e istruzioni. Anno Accademico 2010/2011 Francesco Tortorella

Trattamento dell informazione

PROVA INTRACORSO TRACCIA A Pagina 1 di 6

ESTRAZIONE DI RADICE

UNIVERSITÀ DEGLI STUDI DI TERAMO

- Sistemi di numerazione 1 - Sistemi di Numerazione

Aritmetica dei Calcolatori 1

UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter

Parte II Indice. Operazioni aritmetiche tra valori rappresentati in binario puro. Rappresentazione di numeri con segno

Unione Europea Repubblica Italiana Regione Calabria Cooperativa sociale

Codifica dei numeri negativi

Logica Numerica Approfondimento 1. Minimo Comune Multiplo e Massimo Comun Divisore. Il concetto di multiplo e di divisore. Il Minimo Comune Multiplo

Matematica in laboratorio

la scienza della rappresentazione e della elaborazione dell informazione

Il principio di induzione e i numeri naturali.

Parte 1. Vettori di bit - AA. 2012/13 1.1

ELETTRONICA DIGITALE

LABORATORIO DI MATEMATICA RENDITE, AMMORTAMENTI, LEASING CON EXCEL

Misure di base su una carta. Calcoli di distanze

INSTALLAZIONE NUOVO CLIENT TUTTOTEL (04 Novembre 2014)

Scheda di approfondimento gioco I pixel

Guida all uso di Java Diagrammi ER

Obiettivo Principale: Aiutare gli studenti a capire cos è la programmazione

Esercitazione Informatica I AA Nicola Paoletti

APRIRE UN PROGRAMMA DI FOGLIO ELETTRONICO

Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l Ambiente e il Territorio

Ricerca Operativa Esercizi sul metodo del simplesso. Luigi De Giovanni, Laura Brentegani

APPUNTI SU PROBLEMI CON CALCOLO PERCENTUALE

La codifica dell informazione

Informatica per la comunicazione" - lezione 7 -

la scienza della rappresentazione e della elaborazione dell informazione

Rappresentazione dei numeri in un calcolatore

Nella prima lezione... Che cos è il Digitale. Prima parte: Che cos è il Digitale. Che cos è il Digitale. Che cos è il Digitale

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

Elementi di informatica

Logica e codifica binaria dell informazione

Capitolo 2. Operazione di limite

PROVA DI MATEMATICA - Scuola Primaria - Classe Seconda

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

Logica binaria. Porte logiche.

Leggere un messaggio. Copyright 2009 Apogeo

11) convenzioni sulla rappresentazione grafica delle soluzioni

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da

Reti di calcolatori ed indirizzi IP

Dimensione di uno Spazio vettoriale

La scala musicale e le alterazioni

Codifica binaria dei numeri

Informatica per le discipline umanistiche 2 lezione 14

Interesse, sconto, ratei e risconti

CALCOLO COMBINATORIO

Transcript:

La notazione binaria Dispense di Informatica per l ITG Valadier Le informazioni dentro il computer All interno di un calcolatore tutte le informazioni sono memorizzate sottoforma di lunghe sequenze di 0 e 1. Può sembrare incredibile che informazioni complicate come lunghi testi, fotografie, brani musicali e programmi possano essere rappresentate semplicemente con sequenze di 0 e 1, eppure questo è possibile grazie ad opportune codifiche. Pensate ad esempio al codice Morse: solo con due simboli, linea e punto, è possibile comunicare qualsiasi messaggio. Una situazione simile a quella che si verifica nel nostro computer: solo due simboli da mettere in sequenza per codificare... tutto. Una codifica in cui usiamo solo due simboli si dice binaria. Ma perché questa scelta, perché usare solo 0 e 1? Il motivo sta nella struttura fisica del computer, nell hardware. Infatti, i componenti che costituiscono il calcolatore, come ad esempio il processore e la memoria RAM, non sono altro che circuiti elettronici. Per la precisione, si chiamano chip, o circuiti integrati quei componenti in cui si riesce a realizzare, all interno di un piccolo quadratino di silicio, milioni e milioni di piccolissimi componenti elettronici chiamati transistor. Un transistor può essere usato come un piccolissimo interruttore, che può far passare una piccolissima corrente, oppure bloccarla. Questo piccolo interruttore, che può essere acceso o spento, ci permette di rappresentare un bit, e cioè un valore che può essere 0 o 1. Ad esempio: interruttore aperto vale 1, interruttore chiuso vale 0. La rappresentazione dei numeri Adesso che abbiamo capito perché il calcolatore ragiona in termini di 0 e 1, resta da capire come fa a rappresentare tutte le informazioni in questo modo... Per adesso ci accontentiamo di studiare come viene codificato un importantissimo tipo di dato, e cioè i numeri. In particolare, vediamo la rappresentazione binaria dei numeri naturali (0, 1, 2, 3, e così via...). Per capire la notazione binaria dei numeri, ci conviene fare mente locale su come funziona la notazione decimale, che ben conosciamo. Prendiamo ad esempio 1

2 il numero 473: per specificare bene che il numero è rappresentato in notazione decimale, o in base 10, possiamo scrivere anche (473) 10. Il numero è formato da tre cifre, la cifra più a destra rappresenta le unità, e andando verso sinistra abbiamo la cifra che rappresenta le decine, poi le centinaia, poi le migliaia, e così via... Ad esempio, nel numero (473) 10 abbiamo 3 unità, 7 decine e 4 centinaia. Infatti possiamo scriverlo anche così: (473) 10 = 4 100 + 7 10 + 3 1 Se ci facciamo caso, quelle che abbiamo chiamato le unità, le decine, le centinaia, le migliaia, ecc... altro non sono che le potenze del 10, a partire dall esponente 0 in su. Infatti 1 = 10 0, 10 = 10 1, 100 = 10 2, 1000 = 10 3 e così via... E allora possiamo riscrivere il nostro numero anche in quest altro modo: (473) 10 = 4 10 2 + 7 10 1 + 3 10 0 A questo punto non è difficile introdurre la notazione binaria. Infatti, la notazione binaria funziona esattamente come la notazione decimale, solo che invece delle potenze del 10, si usano le... potenze del 2! Ecco una tabella di potenze del 2, a partire da esponente 0 in su. 2 0 1 2 1 2 2 2 4 2 3 8 2 4 16 2 5 32 2 6 64 2 7 128 2 8 256 2 9 512 2 10 1024 Prendiamo adesso ad esempio il numero (19) 10. In notazione binaria, questo numero vale 10011, o meglio (10011) 2. Sarà vero? Verifichiamolo! (10011) 2 = 1 2 4 +0 2 3 +0 2 2 +1 2 1 +1 2 0 = 16+0+0+2+1 = (19) 10 Tradurre un numero da binario a decimale A questo punto possiamo stabilire il procedimento per tradurre un numero da base 2 a base 10 (cioè da binario a decimale). Il procedimento è questo:

3 1. Scrivere ben distanziate le cifre del numero binario. 2. Sotto ciascuna cifra riportare la rispettiva potenza del 2 (a cominciare da destra con l esponente 0 e aumentando l esponente via via verso sinistra). 3. Sotto ciascuna potenza del due, riportare la potenza sviluppata, in decimale (ad esempio, sotto 2 3 va 8). 4. Abbassare solo i valori delle potenze che corrispondono ad 1 nel numero binario di partenza. 5. Sommare le potenze abbassate. Lo schema qui sotto rappresenta il procedimento per il numero (10110) 2. 1 0 1 1 0 2 4 2 3 2 2 2 1 2 0 16 8 4 2 1 16 4 2 Alla fine del procedimento otteniamo 16 + 4 + 2 = (22) 10. Numero di bit necessario a rappresentare un valore Possiamo osservare che per rappresentare un certo numero in binario, spesso abbiamo bisogno di più cifre rispetto a quelle richieste per rappresentarlo in decimale, infatti ad esempio (10110) 2 = (22) 10 (5 cifre binarie, mentre ne bastano 2 decimali). È chiaro che, avendo meno simboli a disposizione, dobbiamo metterne in fila di più per avere le stesse informazioni. Ma precisamente quante cifre servono per rappresentare un certo numero? Partiamo prima da qualche esempio con la notazione decimale: qual è il numero più grande che posso rappresentare con 3 cifre decimali? Essendo 9 la cifra decimale più alta, per fare il numero più grande devo rendere uguali a 9 tutte e 3 le cifre, ottenendo il numero (999) 10. Possiamo notare queste equivalenze: 999 = 1000 1 = 10 3 1 Questa regola è vera in generale: il numero più grande che posso rappresentare con n cifre decimali è proprio 10 n 1. Esempio: il numero più grande che posso rappresentare con 4 cifre decimali è 10 4 1. Infatti abbiamo: 10 4 1 = 10000 1 = 9999

4 In base 2, la regola è simile... basta mettere 2 al posto di 10! Il numero più grande che posso rappresentare con n cifre binarie (cioè n bit ) è proprio 2 n 1. Vogliamo fare una verifica? Ad esempio qual è il numero più grande che posso rappresentare con 4 bit? La regola mi dice: 2 4 1 = 16 1 = 15 Verifichiamo che questo sia vero. Se volessi scrivere il numero più grande che posso fare con 4 cifre binarie, questo numero sarebbe chiaramente (1111) 2 (ogni cifra deve essere messa al massimo... ma il massimo è 1!). Con il procedimento visto prima, traduci in decimale il numero (1111) 2... e il risultato sarà proprio 15! Supponiamo di dover rispondere ad una domanda di questo tipo: quanti bit mi servono per rappresentare il valore 57? Con la regola vista, la risposta è semplice. Ecco qui una tabella che ci dice il numero più grande che si può rappresentare con n bit. Per individuare il minimo numero di bit necessari a rappresentare un certo valore, basta scorrere la colonna più a sinistra della tabella ed approssimare per eccesso, fermarsi cioè al primo numero incontrato che sia più grande (o anche uguale) al valore che devo rappresentare. numero bit regola valore massimo 1 bit 2 1 1 1 2 bit 2 2 1 3 3 bit 2 3 1 7 4 bit 2 4 1 15 5 bit 2 5 1 31 6 bit 2 6 1 63 7 bit 2 7 1 127 8 bit 2 8 1 255 9 bit 2 9 1 511 10 bit 2 10 1 1023 Applicando questo procedimento vediamo che per rappresentare il valore 57 bastano 6 bit, perché con 6 bit possiamo rappresentare numeri fino a 63. Usare 5 bit non sarebbe sufficiente, perché con 5 bit arrivo al massimo a 31. Tradurre un numero da decimale a binario Abbiamo visto come tradurre un numero da binario a decimale, e anche qual è il numero più grande che posso rappresentare con n bit. L ultimo argomento che ci rimane da affrontare, è come tradurre un numero da decimale a binario... Ad esempio, abbiamo visto che per rappresentare 57 ci servirebbero

5 6 bit... Ma qual è la rappresentazione di 57 in binario? Il procedimento è abbastanza semplice: si divide per 2 il numero e si scrivono quoziente e resto (il resto può essere solo 0 o 1!). Una volta fatto, si continua a dividere ancora il quoziente per 2 (scrivendo sempre il resto), finché il quoziente non diventa 1. A questo punto si parte da quell 1 (l ultimo quoziente), che sarà la prima cifra, e si aggiungono di seguito tutti i resti ottenuti, ma a ritroso (dal più recente risalendo al più vecchio). La sequenza di cifre binarie ottenuta è il numero cercato! Svolgiamo l esempio con il valore 57: 57:2 q=28 r=1 28:2 q=14 r=0 14:2 q=7 r=0 7:2 q=3 r=1 3:2 q=1 r=1 Seguiamo i numeri in neretto, con l aiuto delle frecce. A partire dall ultima riga, si prende prima il quoziente, poi il resto, e così otteniamo 11. Successivamente, si prendono tutti i resti delle righe precedenti, dalla penultima risalendo in su fino alla prima. Il risultato è 111001. Abbiamo trovato quindi che (57) 10 = (111001) 2 (verificalo!). Abbiamo anche confermato che il valore binario è formato proprio da 6 bit, come abbiamo trovato prima. Esercizi 1. Traduci da binario a decimale il numero (101) 2. 2. Traduci da binario a decimale il numero (110) 2. 3. Traduci da binario a decimale il numero (1111) 2. 4. Traduci da binario a decimale il numero (10110) 2. 5. Traduci da binario a decimale il numero (101010) 2. 6. Quanti bit servono per rappresentare in binario il numero (12) 10? 7. Quanti bit servono per rappresentare in binario il numero (25) 10? 8. Quanti bit servono per rappresentare in binario il numero (213) 10? 9. Quanti bit servono per rappresentare in binario il numero (788) 10? 10. Quanti bit servono per rappresentare in binario il numero (64) 10?

6 11. Traduci da decimale a binario il numero (24) 10. 12. Traduci da decimale a binario il numero (41) 10. 13. Traduci da decimale a binario il numero (112) 10. 14. Traduci da decimale a binario il numero (14) 10. 15. Traduci da decimale a binario il numero (311) 10.