Algoritmi e Istruzioni di Assegnamento

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson
Download our mobile app to listen on the go
Get App

Questions and Answers

Qual è il formato dell'etichetta per un blocco caricato in cache?

  • 4 zeri in base 16 e 12 parole.
  • 3 zeri in base 16 e 16 parole. (correct)
  • 2 zeri in base 16 e 15 parole.
  • 5 zeri in base 16 e 10 parole.

Qual è la caratteristica fondamentale della cache riguardo al tempo di accesso?

  • Il tempo di accesso dipende dal tipo di circuito utilizzato.
  • Il tempo di accesso è costante e non dipende dalla posizione. (correct)
  • Il tempo di accesso varia in base alla posizione della parola.
  • Il tempo di accesso aumenta con il numero di parole caricate.

Cosa succede se tutti i confronti tra l'indirizzo della RAM e le etichette nella cache danno esito negativo?

  • Viene eseguito un caricamento dalla RAM. (correct)
  • La parola viene cercata in un altro blocco.
  • Il sistema si blocca.
  • Il dato è presente nella cache.

Quanti bit dell'indirizzo della RAM vengono confrontati con le etichette nella cache?

<p>12 bit. (B)</p> Signup and view all the answers

Quale delle seguenti tecnologie è più recententemente in aumento per le memorie di massa?

<p>Memorie flash. (A)</p> Signup and view all the answers

Quando si carica dalla RAM alla cache, cosa viene caricato insieme alla parola cercata?

<p>Le parole adiacenti. (B)</p> Signup and view all the answers

In che modo avviene l'accesso ai blocchi di cache quando un esito di confronto è positivo?

<p>Mediante un circuito a multiplex. (D)</p> Signup and view all the answers

Quali sono le due principali tecnologie per le memorie di massa menzionate?

<p>Ottica e magnetica. (A)</p> Signup and view all the answers

Qual è la principale differenza tra finitezza e terminazione di un algoritmo?

<p>Finitezza si riferisce alle istruzioni dell'algoritmo. (D)</p> Signup and view all the answers

Quale delle seguenti è una caratteristica delle variabili in un linguaggio di programmazione tipizzato?

<p>Le variabili devono avere un tipo definito. (A)</p> Signup and view all the answers

Quale operatore è utilizzato per la negazione logica in Algebra di Boole?

<p>not A (D)</p> Signup and view all the answers

Quale delle seguenti espressioni rappresenta un'istruzione di assegnamento?

<p>x  y (C)</p> Signup and view all the answers

Qual è il risultato dell'espressione logica A and B se A è 1 e B è 0?

<p>0 (B)</p> Signup and view all the answers

Cosa rappresenta il blocco di fine in uno schema a blocchi?

<p>Termina l'algoritmo. (B)</p> Signup and view all the answers

Qual è la funzione dell'unità di controllo della CPU?

<p>Comandare tutti i dispositivi del calcolatore. (C)</p> Signup and view all the answers

Quale operazione logica è rappresentata dalla capacità di assorbimento in Algebra di Boole?

<p>A + (A * B) = A (A)</p> Signup and view all the answers

Qual è il risultato dell'operazione 'A or B' quando A è 0 e B è 1?

<p>1 (A)</p> Signup and view all the answers

Come vengono definiti i variabili che possono essere utilizzate solo in certe porzioni di codice?

<p>Locali (B)</p> Signup and view all the answers

Quale di queste espressioni è un esempio di espressione relazionale?

<p>x == y (A)</p> Signup and view all the answers

Cosa indica una variabile di tipo 'float' in un linguaggio di programmazione?

<p>Numeri decimali. (A)</p> Signup and view all the answers

Quale dei seguenti non è un operatore aritmetico-logico?

<p>Presenza (!) (B)</p> Signup and view all the answers

Quale tra le seguenti non è una tipologia di operazione prevista per le istruzioni di elaborazione?

<p>Ritorno di espressione (D)</p> Signup and view all the answers

Qual è una caratteristica principale delle memorie flash rispetto alle memorie elettroniche tradizionali?

<p>Possono essere riscritte e sono non volatili (D)</p> Signup and view all the answers

Qual è il tempo di accesso medio delle memorie RAM rispetto alla memoria cache?

<p>Dieci volte superiore a quello della cache (D)</p> Signup and view all the answers

Cosa implica il principio di località spaziale?

<p>Un programma fa riferimento a dati vicini a quelli già usati (D)</p> Signup and view all the answers

Quale tipo di memoria ha la maggiore capacità e un tempo di accesso più lento?

<p>Hard disk (C)</p> Signup and view all the answers

Qual è la funzione principale della memoria cache in un sistema di memoria?

<p>Fornire accesso istantaneo ai dati utilizzati frequentemente (A)</p> Signup and view all the answers

Cosa succede quando la cache è piena e un nuovo blocco deve essere inserito?

<p>Il blocco più vecchio viene sostituito (A)</p> Signup and view all the answers

Qual è una caratteristica delle memorie SSD rispetto agli hard disk?

<p>Hanno tempi di accesso più rapidi (A)</p> Signup and view all the answers

Qual è la capacità tipica di una cache rispetto alla RAM?

<p>Mille volte più piccola della RAM (B)</p> Signup and view all the answers

Quale delle seguenti affermazioni sul tempo di accesso delle memorie è vera?

<p>Le SSD offrono tempi di accesso più rapidi delle RAM (C)</p> Signup and view all the answers

Quale delle seguenti è una limitazione delle memorie flash?

<p>Hanno tempi di scrittura più lenti (B)</p> Signup and view all the answers

Per quali motivi è importante prevedere il comportamento dei programmi in un sistema di memoria?

<p>Per scegliere quali dati trasferire nella cache (C)</p> Signup and view all the answers

Cosa caratterizza il tempo di accesso sequenziale rispetto a quello casuale per le memorie flash?

<p>È generalmente più rapido (D)</p> Signup and view all the answers

Qual è il minimo tempo di accesso per i registri?

<p>1 nanosecondo (A)</p> Signup and view all the answers

Qual è il ruolo principale dei blocchi nella memoria cache?

<p>Organizzare e differenziare i dati per accessi rapidi (C)</p> Signup and view all the answers

Qual è la principale differenza tra l'accesso ai dati sui nastri magnetici e sui dischi magnetici?

<p>L'accesso ai nastri è sequenziale, mentre quello sui dischi è casuale. (C)</p> Signup and view all the answers

Quale dei seguenti termini si riferisce alla capacità di un disco di ruotare e posizionare un settore sotto la testina?

<p>Latency time (B)</p> Signup and view all the answers

Qual è la funzione principale del codice operativo in un'istruzione?

<p>Determina il tipo di istruzione da eseguire (C)</p> Signup and view all the answers

Quale tipo di operandi fornisce il valore del dato direttamente nell'istruzione?

<p>Immediato (B)</p> Signup and view all the answers

Cosa viene utilizzato per verificare la correttezza della registrazione di un byte nei nastri magnetici?

<p>Bit di parità (D)</p> Signup and view all the answers

In un indirizzamento indiretto, quale componente dell'IR contiene un riferimento a un indirizzo di memoria?

<p>Riferimento a un registro contenente un indirizzo (B)</p> Signup and view all the answers

Qual è l'unità minima di trasferimento tra disco e RAM nei dischi magnetici?

<p>Settore (D)</p> Signup and view all the answers

Quale tecnologia è stata principalmente sostituita dalle memorie flash?

<p>Floppy disk (B)</p> Signup and view all the answers

Qual è la caratteristica principale dell'indirizzamento relativo?

<p>Utilizza sempre il campo di scostamento per riferirsi alla memoria (D)</p> Signup and view all the answers

Che cosa accade durante la fase di FETCH di un'istruzione?

<p>L'indirizzo dell'istruzione viene caricato nel contatore di programma (B)</p> Signup and view all the answers

Qual è la capacità di un DVD a doppio strato?

<p>17 GB (A)</p> Signup and view all the answers

Qual è la funzione principale di un programma assemblatore?

<p>Convertire il codice assembly in linguaggio macchina (B)</p> Signup and view all the answers

La formattazione di un disco è necessaria per:

<p>Identificare la posizione dei settori sul disco. (B)</p> Signup and view all the answers

Quali elementi distingue il linguaggio assembly dal linguaggio macchina?

<p>Utilizza simboli e nomi identificativi al posto di sequenze di bit (A)</p> Signup and view all the answers

Quale affermazione è corretta riguardo alla densità di memorizzazione sui dischi magnetici?

<p>Cresce dalla periferia verso il centro del disco. (C)</p> Signup and view all the answers

Qual è il componente principale di un hard disk?

<p>Disk drive (C)</p> Signup and view all the answers

Qual è la differenza principale tra indirizzamento relativo e relativo con auto incremento?

<p>L'indirizzamento relativo può solo sommare valori, mentre il secondo incrementa o decrementa (B)</p> Signup and view all the answers

Quale tipo di indirizzamento utilizza una referenza a un registro per trovare l'indirizzo di un dato in memoria?

<p>Indirizzamento indiretto (C)</p> Signup and view all the answers

Che cosa determina il tempo totale di accesso ai dati su un disco?

<p>La somma di seek time e latency time (D)</p> Signup and view all the answers

Quali sono i due tipi di tabelle utilizzati nel processo di assemblaggio?

<p>Tabella dei codici e tabella simboli (A)</p> Signup and view all the answers

Qual è la caratteristica principale dei dischi ottici rispetto ai dischi magnetici?

<p>Memorizzano i dati utilizzando la luce. (B)</p> Signup and view all the answers

Un'operazione di somma viene inviata all'unità di controllo tramite quale processo?

<p>Comunicazione di esecuzione (D)</p> Signup and view all the answers

Quale tecnologia di accesso è utilizzata dai nastri magnetici?

<p>Accesso sequenziale (D)</p> Signup and view all the answers

Qual è il vantaggio principale dei dischi magnetici rispetto ai nastri magnetici?

<p>Accesso più rapido ai dati. (B)</p> Signup and view all the answers

Qual è il limite principale della memorizzazione di un indirizzo in un campo dell'IR?

<p>L'IR non ha abbastanza bit per memorizzare gli indirizzi (D)</p> Signup and view all the answers

Cosa determina il numero di passi e di operazioni nel processo di esecuzione delle istruzioni?

<p>Il tipo di istruzione (B)</p> Signup and view all the answers

Qual è l'effetto dell'auto incremento sull'indirizzamento relativo?

<p>Consente di gestire dati in blocchi consecutivi (C)</p> Signup and view all the answers

Flashcards are hidden until you start studying

Study Notes

Finitezza e Terminazione

  • Non confondere finitezza (si riferisce alle istruzioni dell'algoritmo) e terminazione (si riferisce alla quantità di passi del processo).

Algoritmi

  • Un algoritmo è una sequenza di istruzioni contenenti variabili.
  • Le istruzioni possono essere di tre tipologie: elaborazione, input/output, controllo.
  • Le variabili hanno specifiche caratteristiche, tra cui: nome, locazione di memoria, tipo, valore assegnato, variabilità, struttura, origine, visibilità del codice e visibilità nel flusso di esecuzione.

Istruzioni di Assegnamento/Elaborazione

  • La notazione xy indica l'assegnamento di un valore alla variabile x.
  • Un'operazione può essere eseguita sul lato destro della freccia (es. y+1).

Istruzioni Aritmetico-Logiche

  • Le espressioni aritmetiche coinvolgono operatori come somma (+), sottrazione (-), moltiplicazione (*), divisione intera (/) e resto (%).
  • Le espressioni relazionali coinvolgono operatori di confronto come uguaglianza (==), diversità (!=), minoranza (<) tra numeri.
  • Le espressioni logiche e predicati logici utilizzano operatori come congiunzione (AND), disgiunzione (OR) e negazione (NOT).

Algebra di Boole

  • Gli operatori logici possono essere unari (negazione) o binari (tutti gli altri).
  • Gli operatori logici hanno specifiche proprietà: identità, elemento nullo, idempotenza, inverso, commutativa, associativa, distributiva, teorema di assorbimento, teorema di De Morgan.

Schemi a Blocchi

  • Gli schemi a blocchi rappresentano graficamente gli algoritmi.
  • I blocchi elementari sono: inizio, input/output, fine, elaborazione, selezione a 2 vie, sottoprogramma.
  • I blocchi sono collegati da archi.

Memorie

  • La memoria centrale è suddivisa in parole (blocchi di memoria fisica).
  • Il tempo di accesso alla memoria dipende dalla tecnologia utilizzata.
  • Il sovraccarico di lavoro per la CPU è mitigato da dispositivi come DMA (data memory access).

CPU

  • La CPU è composta da unità di controllo e data path.
  • L'unità di controllo comanda tutti i dispositivi del calcolatore.
  • Il data path include ALU (unità aritmetico-logica) e registri.

Ciclo di Istruzione

  • Il ciclo di istruzione prevede le fasi di fetch, decode ed execution.
  • L'istruzione viene prelevata dalla memoria (fetch), decodificata (decode) ed eseguita (execution).
  • Le istruzioni sono organizzate in campi: codice operativo, operandi sorgente e destinazione.
  • I tipi di operandi sono: immediato, a registro, a memoria.

Indirizzamento in Memoria

  • L'indirizzamento in memoria permette di localizzare dati in memoria.
  • I tipi di indirizzamento sono: diretto, indiretto, relativo, relativo con auto incremento o auto decremento.

Linguaggio Assembly

  • Il linguaggio assembly rappresenta simbolicamente il linguaggio macchina (binario).
  • Il programma assemblatore traduce da linguaggio assembly in linguaggio macchina.
  • Il linguaggio assembly è più leggibile rispetto al linguaggio macchina.
  • Il linguaggio assembly utilizza nomi simbolici per codici di operazioni, indirizzi di registri, variabili ed etichette.

Memorie Flash

  • Le memorie flash sono memorie elettroniche riscrivibili e non volatili che sono state sviluppate negli anni '80.
  • Il loro costo è diminuito significativamente nel tempo, portando alla loro diffusione in dispositivi come tablet e lettori MP3.
  • Le memorie flash possono essere utilizzate sia come memorie di massa relativamente piccole ma veloci, sia come memorie centrali relativamente lente ma adatte per esigenze di prestazioni limitate.
  • rispetto alle memorie elettroniche tradizionali, le memorie flash offrono il vantaggio di combinare la riscrivibilità con la non volatilità, ma hanno tempi di accesso, soprattutto di scrittura, più lenti.
  • Il tempo di lettura per le memorie flash varia tra circa 100 nanosecondi per gli accessi sequenziali e alcuni microsecondi per gli accessi casuali.

Gerarchia delle Memorie

  • La memoria interna include registri, memoria cache e memoria centrale (RAM). Questa tipologia di memoria ha un'interazione intensa con la CPU. Caratteristiche: capacità inferiore, tempo di accesso minore, frequenza di accesso maggiore.
  • I dischi magnetici come hard disk, CD e DVD sono considerati memoria esterna online. Caratteristiche: capacità medie, tempo di accesso medio, frequenza di accesso medio.
  • I dischi ottici come CD-ROM, CD-RW, DVD e nastri sono considerati memoria offline. Caratteristiche: capacità elevate, tempo di accesso alto, frequenza di accesso minore (esterne).

Collocazione Fisica delle Memorie

  • Registri, cache di livello I, cache di livello II e chip sono elementi chiave all'interno di un calcolatore per la gestione della memoria.

Caratteristiche dei Livelli di Gerarchia di Memoria

  • Registri: capacità 1 KB, tempo di accesso 1 ns (ordine del ciclo di clock).
  • Cache: capacità 1-10 MB, tempo di accesso 10 ns, velocità di trasferimento 100 GB/s.
  • RAM: capacità 1-10 GB, tempo di accesso 100 ns, velocità di trasferimento 10 GB/s.
  • SSD: capacità 100-1000 GB, tempo di accesso 100 microsecondi, velocità di trasferimento < 1 GB/s.
  • Hard Disk: capacità 100-1000 GB, tempo di accesso 10 ms, velocità di trasferimento 0.1 GB/s.
  • Nastri, CD: capacità GB per unità (senza limite di capienza), tempo di accesso 100 ms, velocità di trasferimento 0.01 GB/s.
  • Obiettivo delle memorie centrali: velocità (memorie volatili).
  • Obiettivo delle memorie di massa: capienza (memorie non volatili).

Principio di Località e Cache

  • La memoria cache è meno capiente della RAM (mille volte più piccola).
  • Per migliorare le prestazioni, la cache controlla se un dato è presente al suo interno prima di accedere alla RAM.
  • Il principio di località spaziale afferma che un programma spesso accede ad elementi con indirizzi vicini a quello dell'elemento corrente.
  • Il principio di località temporale afferma che un programma spesso accede allo stesso elemento in un breve intervallo di tempo.
  • Quando la CPU richiede un'istruzione o un dato non presente nella cache, vengono prelevati dalla RAM e trasferiti nella cache insieme alle celle adiacenti.
  • Se la cache è già piena, un nuovo blocco sostituisce un blocco vecchio, solitamente quello meno utilizzato di recente, seguendo una politica di sostituzione LRU (least recently used).
  • La combinazione di cache e RAM offre il vantaggio della capacità elevata e dei bassi costi della RAM e dell'alta velocità della cache.

Memoria Cache (Informazioni Aggiuntive ed Esempi)

  • La memoria cache è suddivisa in blocchi di parole consecutive, ciascuno con una propria etichetta associata.
  • L'etichetta identifica un blocco di parole nella memoria centrale, mentre l'offset identifica la posizione specifica di una parola all'interno del blocco.
  • L'accesso alla cache avviene in base agli indirizzi della memoria RAM.
  • I confronti tra l'indirizzo della RAM e le etichette dei blocchi in cache vengono eseguiti in parallelo.
  • Se un confronto è positivo, il dato è già presente nella cache e l'accesso è rapido.
  • Se tutti i confronti sono negativi, il dato non è presente nella cache e viene prelevato dalla RAM.
  • I caricamenti dalla RAM alla cache non limitano la parola cercata, ma includono anche le celle adiacenti.
  • La velocità degli accessi alla cache è costante grazie all'esecuzione parallela dei confronti e all'accesso diretto alla parola desiderata all'interno del blocco.

Dispositivi per le Memorie di Massa

  • Le memorie di massa devono essere non volatili e avere una grande capacità.
  • Le tecnologie principali per le memorie di massa sono quella magnetica e quella ottica, con le memorie flash che stanno diventando sempre più diffuse.

Dischi e Nastri Magnetici

  • I dispositivi di memorizzazione magnetici utilizzano uno strato sottile di materiale magnetico per memorizzare dati, codificati in base allo stato di magnetizzazione.
  • Le testine di lettura/scrittura rilevano e modificano lo stato di magnetizzazione della superficie.
  • I nastri magnetici erano i primi dispositivi di memoria di massa, ma sono stati sostituiti da altre tecnologie.
  • L'accesso alle informazioni su un nastro è sequenziale, il che significa che per leggere un dato specifico è necessario scorrere attraverso i dati precedenti.
  • I dischi magnetici memorizzano dati su dischi circolari, suddivisi in tracce concentriche, settori e blocchi di dati.
  • Ogni settore contiene un blocco di dati, che rappresenta l'unità minima di trasferimento tra il disco e la RAM.
  • La densità di memorizzazione è maggiore verso il centro del disco rispetto alla periferia.
  • La formattazione organizza la superficie del disco in tracce e settori, identificando la posizione specifica di ogni settore.
  • Il tempo di accesso a un dato sul disco magnetico è composto da tempo di ricerca (seek time), tempo di rotazione (latency time) e tempo di trasferimento effettivo.
  • Gli hard disk moderni sono più veloci e hanno una capacità maggiore rispetto ai modelli precedenti.
  • I floppy disk erano un formato comune negli anni scorsi ma sono stati sostituiti dalle memorie flash.

Dischi Ottici

  • I dischi ottici, come CD e DVD, sono un'alternativa ai dischi magnetici.
  • Hanno una capacità più elevata rispetto ai dischi magnetici, con i CD che offrono circa 600 MB e i DVD fino a 17 GB.
  • I dischi ottici sono stati ampiamente utilizzati per memorizzare grandi quantità di dati, come enciclopedie, legislazioni e sistemi operativi.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Use Quizgecko on...
Browser
Browser