







Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Sintesi discorsiva sui fondamenti e le basi di informatica
Tipologia: Appunti
1 / 13
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!








22\02
TERMINOLOGIA DI BASE Computer :
rappresentata attraverso un “linguaggio” che può essere capito da quest’ultimo. Questo “linguaggio” è il Codice Binario. Definizione di Codice Binario: è un sistema di codifica che usa le cifre binarie 0 e 1 al fine di rappresentare lettere, cifre, o altri caratteri all’interno di un computer o di un qualsiasi altro dispositivo elettronico (e.g., smartphones, tablets). In Particolare: un BIT (BInary digiT) è l’unità di informazione attraverso la quale un dispositivo gestisce tutti i tipi di informazione al suo interno. Un singolo BIT può avere solo due stati: 0 and 1. Nota: con un singolo BIT solo DUE “elementi” possono essere espressi, ad esempio:
La tabella che viene principalmente utilizzata è LA TABELLA ASCII (American Standard Code for Information Interchange) Ritornando al codice binario, all’interno di ogni dispositivo “l’informazione” è "veicolata" per mezzo di un numero fissato di bytes, ad esempio: ▪ 16 bits (2 bytes); ▪ 32 bits (4 bytes); ▪ 64 bits (8 bytes). Ora, si può comprendere perché il numero di bytes identifica la "potenza" di un dispositivo, poiché maggiore è il numero di bytes: ▪ maggiore è la capacità di un dispositivo di calcolare operazioni complesse; ▪ maggiore è la capacità di un dispositivo di gestire diverse quantità di informazioni; ▪ maggiore è la capacità di un dispositivo di comprendere istruzioni complesse. All'interno di un dispositivo un "numero" (i.e., l'informazione) può essere identificato da tre classi: ▪ Interi Senza Segno (i.e., interi positivi); ▪ Interi Con Segno (i.e., interi positivi e negativi); ▪ Reali (i.e., numeri positivi e negativi con una virgola). La classe specifica dipende da diversi fattori, tra cui: ▪ Tipo di applicazione/servizio; ▪ Complessità dell'applicazione/servizio; ▪ Caratteristiche della applicazione/servizio. In generale, con una base B e con n cifre, è possibile rappresentare: ▪ B – 1. ▪ Un esempio con B=10and4cifre:9999=104 –1. ▪ Un esempio con B=2and4cifre:1111=24 –1(i.e.,1510). Ogni cifra ha il valore di due elevato alla posizione in cui si trova , questo vale quando si vuole trasformare il codice binario in un codice decimale Se il valore è 0, è PARI, mentre se è 1 è dispari La rappresentazione degli interi con segno può essere effettuata in due modi: IL PRIMO: ▪ Dati n bits: un singolo bit è riservato come segno, mentre, il resto dei bits (n-
Tale rappresentazione è chiamata: rappresentazione in modulo e segno. È molto semplice ma ha un difetto: ▪ Mette a disposizione due rappresentazioni dello 0. Si osservi che: ▪ Da –(2n-1 – 1) sino a +(2n-1 – 1); ▪ Con 16 bits: Da -32.767 sino a +32.767; ▪ Con 32 bits: Da -2.147.483.647 sino a +2.147.483. Passaggi: 1 step: si prende in considerazione il numero più piccolo rispetto a quello che sto prendendo; 2 step: si sottrae il numero preso in considerazione, ad esempio 42, con il numero più piccolo : esempio- 42- 32= 10 ; a questo punto 10-8=2 , 2-2=0.
16 bit: in grado di calcolare 16 bit per ogni operazione Standard di oggi: almeno 64 bit (8 bytes alla volta) quindi posso creare calcoli con grandi numeri e quindi eroga una potenza di calcolo maggiore Vengono caricati dati in dei registri secondo una tipologia specifica di strutture Il meno (per i numeri negativi) non è facile da rappresentare con 0 e 1, quindi... (servono perché servono le negatività per varie cose) ...quindi (metodo “A BOT RISERVATO PER IL SEGNO”) Rappresenta i valori negativi riservando un bit per il segno Per esempio, se nella posizione all'estrema sinistra c’è il bit (1) allora è un valore negativo, se ci metto (0) è positivo QUESTO NON è VALIDO SEMPRE, è SOLO UN ESEMPIO MA il lato NEGATIVO è: se io dovessi riservare un bit per il segno perderei un bit (da 8 diventano 7, da 16 diventano 15) perché il bit viene bruciato e perdo una quantità enorme di potenza di calcolo (da 2048 a 1024 per esempio) MA il lato POSITIVO è: se io lo rappresento così allora la lettura è immediata (leggendo il bit all’estrema sinistra so IMMEDIATAMENTE se è positivo e negativo) Metodo del complemento: cerco di non perdere quella posizione, tengo la potenza di calcolo al massimo possibile: Non chiederti il perché si fa così, è uno standard complicato 2 operazioni di fila: 1: FLIPPING (UNO REVERSE CARD): tutti i valori 0 diventano 1 e tutti i valori 1 diventano 0, inverto il binario 2: SOMMA: sommo +1 al binario invertito. Il risultato è il valore NEGATIVO di quello di partenza Non perdo un bit ma è MOLTO più lento IL CALCOLATORE USA UN SOLO METODO SCELTO DAL PRODUTTORE basatosi su vari fattori Vogliamo dare più spazio alla potenza di calcolo a discapito della velocità? Allora metodo 1 Calcoli più piccoli ma più veloci? Allora metodo 2 27\02\
Le operazioni logiche si dividono in: AND=E ( CONTEMPORANEITÀ ) se entrambe sono vere, è corretto. Ma sono OR=OPPURE ( OPZIONALITA’ ) posso scegliere almeno una, una sia vera. NOT= letteralmente invertire 0–>1; 1–> RICORDA: Le operazioni in binario sono identiche a quelle in decimale quando si tratta della somma. In binari, una coppi si chiama DUINA SOTTRAZIONE Quando mancano le cifre, si mette 0. MOLTIPLICAZIONE E DIVISIONE
I REGISTRI sono fisicamente nella CPU, ma logicamente nella memoria. I registri si occupano della gestione degli indirizzi e della gestione di memoria; fanno parte della RAM. La CPU sfrutta i registri per comunicare con la RAM, per capire quali sono i dati al suo interno. MAR gestisce gli indirizzi; si occupa di tutti gli indirizzi che vengono interrogati dalla RAM. MDR si occupa dei valori delle celle di memoria ( dati ). Qual è il processo della CPU? Conoscere l’’indirizzo grazie al MAR per poi scrivere un determinato dato inserito nel MDR Il funzionamento della MEMORIA si basa sui seguenti due passi (Running Example): Operazione LOAD : per leggere una locazione (A):
▪ TEMP : è una memoria velocissima/costosissima utilizzata per le operazioni interne dell’ALU (i.e., Cache Memory della CPU). Ma anche molto piccola che supporta i calcoli della ALU. La memoria cash, è legata ai browser web. La Processing Unit contiene le operazioni di base che permettono al dispositivo di lavorare propriamente. Nel nostro caso, LC-2, all’interno contiene diverse istruzioni, tra le quali: ▪ LD,LDI,LDR,ST,STI,STR,LEA. TEMP: ▪ Piccola ,veloce e costosissima memoria; ▪ Operandi e Risultati dell’ALU. Grandezza delle parole elaborate: ▪ Il numero di bits normalmente elabora i dati dalla ALUè una istruzione. La Control Unit (Unità di Controllo) è un’unità di gestione. Essa è composta da due sotto-moduli, ossia PC e IT: ▪ PC: è il Program Counter (Contatore di Programma) e contiene l’indirizzo della prossima istruzione che necessita di essere eseguita; ▪ IR: è l’Instruction Register (Registro delle Istruzioni) e contiene le istruzioni che possiede il PROCESSORE. Lo scopo della Control Unit (Unità di Controllo) è: ▪ Lagestionedell’interoprocessodielaborazione.Ossia: ▪ Legge ciascuna istruzione dalla memoria:
Preleva dalla RAM l’istruzione corrente da eseguire: ▪ Da ricordare: l’indirizzo in RAM da leggere è memorizzato in PC (Program Counter); ▪ L’istruzione viene memorizzata in IR (InstructionRegister); ▪ Il PC viene aggiornato all’indirizzo della successiva istruzione (nota, se ogni istruzione occupa N byte, PC viene incrementato di N). ECODE : Riconosce l’istruzione da eseguire: ▪ Da ricordare: un processore ha un set finito di istruzioni che servono ad eseguire tutto ciò che il processore sa fare. Essenzialmente in questa fase si riconosce quale istruzione deve essere eseguita. EXECUTE : Esegue l’istruzione individuata: ▪ Dipende dal tipo di operazione: ad esempio se si tratta di un operazione aritmetica bisognerà recuperare dalla memoria centrale gli operandi, fornirli all'ALU assieme all'operazione da eseguire e salvare nei registri il risultato. RICAPITOLANDO: Program Counter prende l’indirizzo nella cella di memoria, lo passa all’instruction register, capisce che comando sia e in seguito lo passa all’ALU, una volta terminato si ricomincia. La PILA