Lez. 1 Introduzione all'architettura degli elaboratori

Slides:



Advertisements
Presentazioni simili
Dall’informazione al linguaggio macchina
Advertisements

Rappresentazioni numeriche
Sistemi di numerazione
Informatica Generale Susanna Pelagatti
Introduzione ai circuiti elettronici digitali
Fondamenti di Informatica
Rappresentazione di Numeri Reali
Rappresentazioni numeriche
Sistemi di numerazione
Le Informazioni e la loro Rappresentazione nei calcolatori
Trasmissione delle informazioni
Codifica dei Dati Idea: vogliamo rappresentare dati eterogenei utilizzando un linguaggio che l’elaboratore puo’ facilmente manipolare Essenzialmente vogliamo.
Sistemi di numerazione e codici
1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.
Informatica 3 Codifica binaria.
A.S.E.13.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 13 Somma e differenza di due numeri in C2Somma e differenza di due numeri in C2 Half AdderHalf.
A.S.E.6.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 6 Complemento a MComplemento a M Rappresentazione di numeri con segnoRappresentazione di numeri.
A.S.E.5.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 5 Rappresentazione di numeri con segnoRappresentazione di numeri con segno –Modulo e segno (MS)
Sistemi di Numerazione
Corso di Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Rappresentazione dellinformazione su calcolatore Anno Accademico 2009/2010.
by Vaccaro Maria Antonietta
Corso di Informatica per Giurisprudenza
Esistono 10 tipi di persone al mondo: Quelli che conoscono il codice binario & Quelli che non lo conoscono.
Rappresentazioni numeriche
Rappresentazione binaria dei numeri interi senza segno.
Università degli Studi di Siena
Rappresentazioni numeriche. Introduzione Un calcolatore elettronico dispone di uno spazio finito per memorizzare le cifre che esprimono un valore numerico.
Il sistema binario.
Gli esseri viventi ricevono informazione direttamente dal mondo circostante e dai propri simili attraverso i sensi (percezione). La percezione, tuttavia,
Codifica binaria Rappresentazione di numeri
Rappresentazione di numeri relativi (interi con segno)
Programma del corso Dati e loro rappresentazione Architettura di un calcolatore Sistemi operativi Linguaggi di programmazione Applicativi: - fogli elettronici.
Usare rappresentazioni di lunghezza fissa porta ad avere valori non rappresentabili: Overflow indica un errore nella rappresentazione del risultato in.
Conversione binario - ottale/esadecimale
Conversione binario - ottale/esadecimale
Rappresentazione di Numeri Reali
1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.
Rappresentazione dell’informazione
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori (Reti Locali, Internet)
RAPPRESENTAZIONE DELL'INFORMAZIONE
Sistemi di numerazione
Dalle potenze ai numeri binari
Il Calcolatore Elettronico
1 Mod. Informatica amica Esperto: prof. G. Sciacca Tutor: prof. R. Paparcone C1 - FSE – 629 Ann
Che cos’è un sistema di numerazione?
Linguaggi e Programmazione per l’Informatica Musicale
La rappresentazione delle informazioni in un computer Seconda parte.
La rappresentazione delle informazioni in un computer
Tesina di fine corso Argomento: Corso: Professore: Autori:
Rappresentazione dell’informazione nel calcolatore.
Rappresentazione Dati Codificare informazioni nel Computer
Capitolo 2 Architettura di un calcolatore
Informatica Lezione 3 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
ARCHITETTURA DEI SISTEMI ELETTRONICI
Rappresentazione dell’Informazione Stefano Cagnoni e Monica Mordonini
Rappresentazione della Informazione
Rappresentazioni a lunghezza fissa: problemi
Fondamenti di Informatica
Rappresentazione dell'informazione
La codifica dei numeri.
Conversione binario-ottale/esadecimale
Informatica Lezione 3 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Codifica binaria dell’informazione
Rappresentazione dei numeri
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Codifica binaria dell’informazione Marco D. Santambrogio – Ver. aggiornata al 24.
I sistemi di numerazione
La numerazione ottale. Il sistema di numerazione ottale ha ampio utilizzo in informatica E’ un sistema di numerazione posizionale La base è 8 Il sistema.
Transcript della presentazione:

Lez. 1 Introduzione all'architettura degli elaboratori Architetture I Lez. 1 Introduzione all'architettura degli elaboratori A.A. 09/10 Architetture degli Elaboratori I

Finalità del corso Fornire le nozioni di base relativamente ai principi di funzionamento di un calcolatore Acquisire familiarità con i calcolatori e saperne valutare le differenze in termini tecnologici Acquisire i rudimenti della programmazione Assembler A.A. 09/10 Architetture degli Elaboratori I

Argomenti Principali Il corso è strutturato in tre parti: Introduzione alla programmazione assembler Principi di Elettronica Digitale Panoramica delle principali componenti di un calcolatore: CPU, Memoria, e alcuni dispositivi di I/O A.A. 09/10 Architetture degli Elaboratori I

Bibliografia 4 ore di lezione settimanali (6 crediti) Esame: Scritto con domande a risposta multipla + orale 3 Prove a Gennaio-Febbraio, Giugno, Luglio, Settembre Lo scritto può essere sostituito per chi frequenta da prove in itinere Libro di testo per la parte di teoria: G. Bucci, Architettura e organizzazione dei calcolatori (Fondamenti), McGraw-Hill Sito ufficiale del corso: Email: danilo.bruschi@unimi.it A.A. 09/10 Architetture degli Elaboratori I

Mainframe A.A. 09/10 Architetture degli Elaboratori I

Desktop A.A. 09/10 Architetture degli Elaboratori I

Laptop A.A. 09/10 Architetture degli Elaboratori I

Smartphone A.A. 09/10 Architetture degli Elaboratori I

A.A. 09/10 Architetture degli Elaboratori I

Le componenti principali Motherboard Processore Memoria Alimentatore Case Scheda grafica Hard disk Raffreddamento Video Tastiera Mouse CD-DVD A.A. 09/10 Architetture degli Elaboratori I

Un unico modello di riferimento: la macchina di Von Neumann INPUT MEMORIA DATI CPU PROGRAMMI OUTPUT A.A. 09/10 Architetture degli Elaboratori I

Interpreta l’istruzione Ciclo d’esecuzione Carica dalla memoria la prox. istruzione FETCH Interpreta l’istruzione DECODE EXECUTE ESEGUI l’istruzione A.A. 09/10 Architetture degli Elaboratori I

Dettaglio (I) A.A. 09/10 Architetture degli Elaboratori I

Dettaglio (II) A.A. 09/10 Architetture degli Elaboratori I

Dettaglio (III) A.A. 09/10 Architetture degli Elaboratori I

Rappresentare le informazioni A.A. 09/10 Architetture degli Elaboratori I

Bit e Byte Un calcolatore svolge fondamentalmente due funzioni Esegue calcoli a velocità elevatissime Gestisce (memorizza, trasforma, invia, reperisce) DATI A.A. 09/10 Architetture degli Elaboratori I

Bit e Byte Dati: sono sequenze di simboli scritti rispettando opportune regole, che descrivono attributi o proprietà di cose, persone, eventi di varia natura I dati sono di diversa natura: Numeri Articoli o libri Fotografie Video Suoni A.A. 09/10 Architetture degli Elaboratori I

Bit e Byte Rappresentazione dati Analogica: uso un numero infinito di simboli Digitale: uso un numero finito di simboli Nei calcolatori i dati sono rappresentati in formato digitale usando esclusivamente due simboli: 1 e 0 chiamati BIT (b) (Binary Digit) Per una maggiore potenza espressiva i calcolatori adottano come dato elementare il BYTE (B) (8 bit), che consente di rappresentare grandezze che assumono sino a 256 “stati” diversi WORD (16b, 32 b), DWORD A.A. 09/10 Architetture degli Elaboratori I

Informazione vs. Dato Un dato diventa informazione nel momento in cui si procede ad una sua interpretazione, e diventa per noi informazione se arricchisce la nostra conoscenza DATI SEMANTICA INFORMAZIONE A.A. 09/10 Architetture degli Elaboratori I

Rappresentazione dei numeri Numero è un concetto astratto utile nelle operazioni di conteggio di oggetti di varia natura (cioè, di vari insiemi). Un numero è un’astrazione legata al numero di elementi di un insieme Di un numero possiamo avere diverse rappresentazioni A.A. 09/10 Architetture degli Elaboratori I

I sistemi di numerazione Nati con lo scopo di rappresentare simbolicamente i numeri, ne conosciamo almeno due: Decimale: esempio di sistema posizionale in quanto i simboli della rappresentazione (le cifre) acquistano significato diverso in base alla loro posizione; Romano: esempio di sistema non posizionali in cui ogni simbolo rappresenta sempre un ben preciso numero, indipendentemente dalla posizione in cui compare. A.A. 09/10 Architetture degli Elaboratori I

La notazione posizionale Introdotta dai Caldei e dai Babilonesi. Ogni simbolo assume un significato diverso a seconda della posizione (casella) in cui compare. Esempio: nel sistema decimale, nella rappresentazione 707 il 7 più a sinistra rappresenta il numero settecento, mentre il 7 più a destra rappresenta il numero sette A.A. 09/10 Architetture degli Elaboratori I

Sistemi di numerazione posizionali Per definire un sistema di numerazione posizionale occorre fissare: il valore numerico della base b, cioè il peso dato alle diverse posizioni; i simboli (cifre) utilizzabili nelle rappresentazioni: A.A. 09/10 Architetture degli Elaboratori I

Notazione decimale La notazione decimale è così chiamata: perché utilizza 10 simboli {0,1,2,3,..,9} e la sua base, il peso dei simboli è dato da potenze di dieci Il motivo della denominazione è che : unità: 100 = 1 decine: 101 = 10 centinaia: 102 = 100 migliaia: 103 = 1000 Ecc. A.A. 09/10 Architetture degli Elaboratori I

Sistemi di numerazione posizionali La notazione posizionale è universale, nel senso che il sistema resta invariato indipendentemente dalla base, che diventa il fattore determinante Esempio: 707 può essere anche un numero in base otto,in questo caso il 7 più a sinistra “pesa” 64, mentre il 5 più a destra “pesa” 1 A.A. 09/10 Architetture degli Elaboratori I

Convenzione Se non è evidente dal contesto, è opportuno denotare la base del sistema di numerazione mettendola a pedice della rappresentazione numerica: 5210 è la rappresentazione decimale di 52; 526 è la rappresentazione in base 6 di 52. A.A. 09/10 Architetture degli Elaboratori I

Sistemi posizionali in informatica Nel mondo dell’informatica sono utilizzate le basi 2, 8 e 16 (sistemi binario, ottale e esadecimale). sistema binario: base = 2, cifre: {0, 1}; sistema ottale: base = 8, cifre: {0, 1, 2, 3, 4, 5, 6, 7}; sistema esadecimale: base = 16, cifre: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F}. A.A. 09/10 Architetture degli Elaboratori I

Con tre bit : 000 001 1 010 2 011 3 100 4 101 5 110 6 111 7 A.A. 09/10 Architetture degli Elaboratori I

4 bit 0000 0001 1 0010 2 0011 3 0100 4 0101 5 0110 6 0111 7 1000 8 1001 9 1010 10 1011 11 1100 12 1101 13 1110 14 1111 15 A.A. 09/10 Architetture degli Elaboratori I

Numero combinazioni Quindi: con 1 bit possiamo rappresentare 2(21) numeri diversi; con 2 bit possiamo rappresentare 4(22) numeri diversi; con 3 bit possiamo rappresentare 8(23) numeri diversi; con 4 bit possiamo rappresentare 16(24) numeri diversi; –… con n bit possiamo rappresentare 2n numeri diversi. In generale in un sistema posizionale con base b, possiamo rappresentare bn numeri diversi utilizzando n cifre A.A. 09/10 Architetture degli Elaboratori I

Un po’ di conti Quanti bit sono necessari per rappresentare m numeri diversi? il più piccolo valore n tale che 2n ≥m. In generale n è il valore intero immediatamente superiore a log2m (denotato con ‪ log2m ‫) Esempio: se devo rappresentare 110 valori o un valore inferiore a 110 avrò bisogno di 7 bit. A.A. 09/10 Architetture degli Elaboratori I

Conversioni Come passo da un numero rappresentato in una base b allo stesso numero rappresentato in base b’? Esempio: come faccio a calcolare il corrispondente binario di 98 o viceversa? A.A. 09/10 Architetture degli Elaboratori I

Conversione in base 10 Per convertire in base 10 il numero x rappresentato in base b x = (xnxn-1…x0)b, è sufficiente eseguire il calcolo seguente: (xn×bn+xn-1 ×bn-1+ … + x1×b1+ x0 ×b0)10 Ad esempio: (B3E)16 = (11×162 + 3×161 + 14×160)10 = (11×256+ 3×48+ 14×1)10 = (2816+ 144+ 14)10 = (2974)10 A.A. 09/10 Architetture degli Elaboratori I

Da base 10 a base b Per passare da una rappresentazione in base 10ad una in base b, è sufficiente dividere successivamente(finché si ottiene zero come risultato) il numero di partenza per la base b e leggere i resti delle divisioni al contrario. Esempio: convertire (324)10 in base 8 324 4 40 0 5 5 (324)10 = (504)8 A.A. 09/10 Architetture degli Elaboratori I

Passaggio da binario a ottale È sufficiente dividere (a partire da destra) a gruppi di tre, i bit che compongono la rappresentazione binaria e convertire in cifra ottale ogni singolo gruppo di bit; Es.: 11000110100101 11 000 110 100 101 3 0 6 4 5 A.A. 09/10 Architetture degli Elaboratori I

Da ottale a binario È sufficiente espandere ogni cifra del numero in ottale nel corrispondente binario: Es.: ( 657)8 = 110 101 111 A.A. 09/10 Architetture degli Elaboratori I

Da binario e esadecimale È sufficiente dividere (a partire da destra) a gruppi di tre, i bit che compongono la rappresentazione binaria e convertire in cifra ottale ogni singolo gruppo di bit; Es: 11000110100101 11 0001 1010 0101 3 1 A 5 A.A. 09/10 Architetture degli Elaboratori I

Da Esadecimale a Binario È sufficiente espandere ogni cifra del numero in esadecimale nel corrispondente binario: Es.: ( B79)8 = 1011 0111 1001 A.A. 09/10 Architetture degli Elaboratori I

Addizioni Eseguire le addizioni di numeri è banale: vanno sommate le singole cifre in posizioni corrispondenti, andando a leggere la tavola dell’addizione (incrociando la riga e la colonna relative alle cifre in gioco); nel caso la somma abbia come risultato un numero di due cifre, si effettua il riporto di quella più a sinistra. A.A. 09/10 Architetture degli Elaboratori I

Addizioni A.A. 09/10 Architetture degli Elaboratori I

Moltiplicazione A.A. 09/10 Architetture degli Elaboratori I

Aritmetica al calcolatore Va ricordato che il calcolatore opera su dati di dimensione fissata Quindi è in grado di gestire soltanto valori con un limite massimo prestabilito Nel caso in cui durante un’operazione aritmetica si dovesse superare questo limite, viene dato origine ad un errore di OVERFLOW A.A. 09/10 Architetture degli Elaboratori I

Numeri negativi Per risolvere il problema della rappresentazione dei numeri negativi vi sono vari approcci: rappresentazione con bit di segno; notazione in complemento a uno; notazione in complemento a due. A.A. 09/10 Architetture degli Elaboratori I

Rappresentazione con bit di segno Supponiamo di avere a disposizione 8 bit; dividiamo l’intervallo dei 256 valori rappresentabili in due parti: 0…127 (rappresentanti i numeri da 0 a 127); 128…255 (rappresentanti i numeri da –0 a –127). Il bit più significativo (più a sinistra) rappresenta quindi il segno del numero: 0: numero positivo (intervallo da 0 a 127); 1: numero negativo (intervallo da 128 a 255). Aspetti negativi: lo zero ha due rappresentazioni: +0 (00000000), –0 (10000000) Devo realizzare degli appositi circuiti per la sottrazione. A.A. 09/10 Architetture degli Elaboratori I

Complemento a due Dato X = xn-1 xn-2 … x0 otteniamo il suo opposto -X nel seguente modo: calcolo il complemento a 1 di X invertendo tutti gli 1 in zero e gli zero in 1 Sommo al valore ottenuto al punto 1 il valore 1 A.A. 09/10 Architetture degli Elaboratori I

Riassumendo A.A. 09/10 Architetture degli Elaboratori I

Esempi A.A. 09/10 Architetture degli Elaboratori I

Binario-ottale-esadecimale A.A. 09/10 Architetture degli Elaboratori I

A.A. 09/10 Architetture degli Elaboratori I