Want to create interactive content? It’s easy in Genially!

Reuse this 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:

Essential Course

Practical Course

Course 3D Style

Neodigital CPD Course

Laws and Regulations Course

Customer Service Course

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