Want to create interactive content? It’s easy in Genially!
Corso di formazione continua Neodigital
Giovanni Campanino
Created on November 26, 2024
Start designing with a free template
Discover more than 1500 professional designs like these:
View
Essential Course
View
Practical Course
View
Course 3D Style
View
Neodigital CPD Course
View
Laws and Regulations Course
View
Customer Service Course
View
Dynamic Visual Course
Transcript
SRE Presentation
Start
Indice
L'architettura di un PC
La CPU
I bus
Le memorie
Assembly
SRE
Il modello von Neumann
Il modell Von Neumann è il modello più usato ed è la base dei pc moderni infatti anche se non si usano in quelli moderni viene usato per capire il funzionamento di una moderna cpuTale modello rappresentava non pochi limiti e infatti oggi si parla di architetture diverse chiamate non von Neumann Questa struttura fu chiamata "stored-program computer" dallo stesso von neumann Combuter per rappresentare la Cpu e il suo lavoro di prevelazione e modificazione delle informazioni I/O o della memoria. La velocità di tali azioni esono determinate dal ciclo macchina (Frequenza di Clock) cioè il numero di azioni al secondo Stored-program per indicare le istruzioni che la CPU deve eseguire e sono collocate nella memoria del computer e l'insieme di esse rappresenta il programma
SRE
L'architettura di un PC
Esistono due tipi di architetture di un pc ognuna con le sue specifiche caratteristiche: Il modello di Von Neumann e il modello di Harvard che ora guarderemo più a fondo
SRE
Il Modello di Harvard
Il modello di Harvard non è tanto differente dal modello di Von Neumann ci sono solo 2 differenze principali: la maggior velocità data dalla divisione della memoria in due (Program memory e Data memory) e il costo maggiore dovuto dalla richiesta di Bus maggiori
SRE
Il ciclo macchina
Approfondiamo ora il ciclo macchina di cui abbiamo già parlato in precedenza infatti il ciclo macchina è uno dei punti principali della CPU coi senza di esso non potrebbe funzionare. Il ciclo macchina si divide in 4 fasi: Fetch dell'istruzione, Decode, Fetch degli operandi e infine Execute Infatti la CPU preleva un istruzione dalla memoria (Fetch dell'istruzione) e la trasporta in un registro specifica e quindi codificata (Decode), gli posiziona gli operandi necessari alla sua funzione (Fetch Operand) e infine l'esegue (Execute)
SRE
La CPU
La CPU anche detta unità centrale di elaborazione è composta da:
- UC cioè l'unità di controllo comoposta a sua volta
- dal PC (Program Counter che serve a modificare il flusso sequenziale del programma e che contiene in ogni momento l'istruzione da eseguire successivamente e viene incrementato automaticamente dalla CU)
- dall'IR (Instruction Register cioè il registro interno che riceve il codice operativo dall'informazione di Fetch)
- dal PSW (Process Status Word divisa in svariate flag in cui ognuna fornisce informazioni aritmetico-logiche)
- ALU (Unità aritmetico logica cioè il blocco che esegue le varie operazioni aritmetiche)
- MDR (Memory Data Register cioè il registro interno collegato direttamente al Bus Dati in modo Bidirezionale e contiene i dati che riceve dalla CPU o dalla memoria centrale)
- MAR (Memory Address Register cioè il registro interno collegato direttamente al bus degli indirizzi unilateralmente verso la memoria centrale e contiene gli indirizzi necessari per la selezione della cella di memoria oppure al dispositivo di I/O o ancora può contenere l'istruzione che deve essere codificata
SRE
I BUS
Come abBiamo visto prima esistono vari tipi di BUS: interni (che trasportano i dati dall'ALU o all'ALU) o esterni (i tre principali cioè di controllo, di indirizzo e di dati)I bus interni non hanno nomi specifici essendo moltissimi ma quelli esterni sono:
- Bus di controllo ( bidirezionale, trasporta gli ordini della CPU e restituisce i segnali di condizione dai dispositivi)
- BUS dati (bidirezionale, consente la trasmissione di dati dalla CPU agli altri elementi e viceversa)
- BUS indirizzi (unidirezionale dalla CPU alla memoria centrale, contiene l'indirizzo della cella sulla quale o dal quale la CPU ha deciso di lavorare)
SRE
Le memorie
Le memorie sono un componente in grado di conservare e memorizzare un'informazione binariaCi sono vari tipi di memorie:
- RAM (Random Access Memory cioè una memoria accessibile in qualunque momento ma che conserva i suoi dati solo finché è alimentata
- DRAM (RAM dinamica hanno bisogno di continui refresh che vengonoeffettuati ogni 10/20 ns)
- SRAM (RAM statica che a differenza della DRAM non richiede il continuo refresh dei dati rendendola così più veloce ma molto più costosa)
- ROM (Read Only Memory cioè una memoria non modificabile ma se manca la corrente i suoi dati non vengono cancellati)
- PROM (Programmable ROM, ROM programmabile ma non più modificabile)
- EPROM (Eraseble PROM, PROM programmabile più volte)
- EEPROM (Electric EPROM, EPROM la cancellazione avviene con l'elettricità)
- Memorie Flash (Memorie solide e non volatili programmabili anche più volte
SRE
ASSEMBLY
Lì'assembly è un linguaggio di programmazione di basso livello e uno dei primi linguaggi di programmazione e a differenza dei linguaggi di alto livello è molto più veloce ma allo stesso tempo difficile Assembly 8086 aveva 14 registri a 16 bit di cui 4 accumulatori usati per operazioni aritmetiche, logiche o per il trasferimento di dati (AX [AH, AL], BX [BH, BL], CX [CH, CL], DX [DH, DL]) 5 registri indice e puntatori (SI [INDEX], DI [INDEX], BP [POINTER], SP [POINTER], IP [INSTRUCTION POINTER]) 4 registri di segmento (CS [SEGMENTO CODICE], DS [SEGMENTO DATI], SS [SEGMENTO DELLO STACK], ES [SEGMENTO EXTRA]) E infine un registro flag o PSW (in cui i bit 0 2 4 6 7 11 contengono flag di stato mentre i bit 8 9 10 contengono fla di controllo)
SRE
La struttura delle informazioni e delle variabili
Un istruzione in Assembly ha la seguente struttura: [Label:] istruzione [destinazione], [sorgente] [;commento] (opzionale) la destinazione è l'oggetto che riceve il risultato, la sorgente è l'oggetto che fornisce il valore e l'istruzione è il codice operativo Invece una variabile ha tale struttura: <nome> <tipo (DB [BYTE] o DW [WORD]> <val_iniziale>
Le istruzioni principali
SRE
MOV: copia il valore sorgente alla destinazioneADD: somma il valore sorgente in destinazione SUB: sottrae il valore sorgente dalla destinazione INC: incrementa di 1 il valore dell'operando DEC: decrementa di 1 il valore dell'operando MUL: esegue la moltiplicazione tra due numeri senza segno DIV: esegue la divisione tra due numeri senza segno