CODIFICA DELL'INFORMAZIONE
Nell'era associare ad un'informazione una sequenza di simboli, nell'informatica si fa con il codice binario delle macchine - bit che può essere 0 o 1.
- con N bit si possono codificare 2N info (2N combinazioni)
- con l'info K servono un numero N di bit poichélog2 ksi approssima al numero intero più grande
Cioè che cambia è la base di rappresentazione e il modo.
Per i numeri interi:
Esempio: 10A(2) = 5(10)
Per trasformare il numero da una base all'altra basta elevare la base per la posizione e moltiplicare per il numero:
- 22 1
- 21 0
- 20 1
2 * 1 + 0 * 21 + 20 * 1 = 4 + 0 + 1 = 5(10)
Essendo un sistema posizionale, valgono le stesse regole che per il nostro sistema.
- ADOZIONE10A (5(10))
- ESEMPI+
+ 10A (5(10))= 20A2(2) = 22(10)
- MOLTIPLICAZIONE101 (5(10))
x 10A (5(10))
- 101
- 000
- 101
0000111 * 4240+0100=26(10)111 21111111 211111110
1648 + 0 + 0 = 26(10)
OVERFLOW
Sitauzione nella quale il numero di bit a disposizione non bastano per codificare un’informazione troppo complessa.
Per i numeri relativi:
Si usano 2 metodi principalmente:
- MS (MODULO E SEGNO) Semplicemente per riconoscere un positivo ed un negativo il bit che viene prima del numero determina il segno (0=+; 1=-) ma è complicato nei calcoli perché l’Acu non deve considerare quel bit. Per questo è stato ideato il metodo 2.
- COMPLEMENTO A 2 (rappresentabili nell’intervallo da -2n-1.. 2n-1-1 (n=nbits). Con questo metodo il bit più a sinistra ha valore negativo.
- 1010101 + 0101110
- 22480+84+4+0 = 19(10)
OP. 01 COMPLEMENTO
Per trasformare un positivo in negativo si invertono tutti i bits e si aggiunge di: 0001(4(10)) => 1110 + 0001 = 1111
DIVERSIONE
-88224++4(10)
Codifica dell'informazione
Nel dare associare ad un'informazione una sequenza di simboli, nell'informaticasi fa con il codice binario delle macchine = b-bit che può essere 0 o 1- con N bit si possono codificare 2N info (2n combinazioni)- con n info K servono un numero di d, bit così N = [log2k]* + d si approssimaal n° intero più grande
Ciò che cambia è la base di rappresentazione e il modo
Per i numeri interi:esempio: 10A(2) = 5(10)
Per trasformare il numero da una base ad un'altrabasta elevare la base per la posizione e moltiplicareper il numero:22 1 21 0 2010A22.1 + 21.0 + 20.1 = 4+0+1 = 5(10)
Essendo un sistema posizionale, valganole stesse regole che per il nostro sistema
EsempioAddizione10A (5(10)) + 10A (5(10))
Moltiplicazione10A (5(10)) x 10A (5(10))
Overflow: Situazione nella quale il numero di bit a disposizione nonbastano per codificare un'informazione. Troppo complesse.
Per i numeri relativi:si usano 2 sistemi principalmente1) MS (modulo e segno)Semplicemente per riconoscere un positivo o un negativod il numero determina il segno (0 = +, 1 = -)ma è complicato nel calcolo perché l'Acu non deve considerare quel bit.Per questo è stato ideato il metodo 22) Complemento a 2 (rappresentabili nell'intarsio [-2n-1, n-1 - 2n-1])(n = n° bit)Con questo metodo il bit più lon dista ha valore negativo
10A 1 1-22 1 0(-22)+0+1+1+0 - 19(10)
Per trasformare un positivo innegativo si invertono tutti i bit e siaggiunge di 10001 (4(10)) ➡ 1110 + 0001 = 1111
Operazione 01 complementDiversione- 8+4+2+1 = -4(10)
Per i caratteri:
Essendoci un numero finito di caratteri, il codice ASCII (American, Standard Coding
International Interchange) fornisce 256 caratteri associati a 8 bit, infatti 28=256
ed ad ogni numero corrisponde un carattere. (1byte)
UNICODE è un'estensione che usa 2byte.
Per i numeri con virgola: (INTERVALLO [-1038, +1038])
Qualsiasi numero decimale è composto da una mantissa ed un ordine di grandezza
N= numero Esponente bit Mantissa
N = M . 10E
Mantissa ordine di grandezza
Infatti saranno rappresentati con:
E e M
Con questi numeri l'overflow è causato dagli irrazionali, o dai periodici (3/7, π, e ...)
HARDWARES
CPU: Central Processing Unit che riceve istruzioni in binario e le esegue.
MEMORIA: Che contiene dati e programmi (può essere/centrale, adiacente alla CPU) per far sì che vengano eseguiti velocemente. DI MASSA: che contiene tutti i dati e le istruzioni che possono potenzialmente essere utilizzati.
INPUT-OUTPUT (I/O): Insieme di dispositivi che permettono l'interazione tra uomo e macchina (INPUT: tastiera, mouse etc. OUTPUT: schermo, stampante, etc.).
La CPU è spesso di dimensioni molto piccole (2cm x 2cm) e contiene miliardi di transistor, che sono coloro che danno il valore 0/1 (MICROPROCESSORE).
BSS: Fisicamente sono fili saldati su plastica che permettono alla CPU di dialogare con le memorie, questi sono caratterizzati da:
- POSSONO TRASPORTARE UN SOLO DATO ALLA VOLTA
- FREQUENZA = dati/secondo
- AMPIEZZA = n bit per ogni dato
Esistono:
- BUS DATI (DBUS) -> trasporta i dati e dà riscontri
- BUS INDIRIZZI (ABUS) -> dice dove portare i dati e le indirizzo
- BUS CONTROLLO (CBUS) -> trasporta le istruzioni da eseguire
Per indirizzare un tot di dati serviranno un certo numero di fili (ABUS), ad esempio 6 GB di RAM, per trasferire un tot di dati servirà un DBUS per byte. Da qui possiamo calcolare la memoria massima del nostro calcolatore: mmax = 2^nibbles [bit]
CLOCK
Fa in modo che l'operazione di FETCH -> DECODIFICA -> ESECUZIONE avvenga continuamente ed in tempo breve. La frequenza del clock fa da temporizzatore. CLOCK da 1 MHz a svariato FDE al sec.