Teoria pt. 2 Flashcards

(10 cards)

1
Q

Cosa sono il tempo di vita e lo scope di una variabile?

A

Il tempo di vita di una variabile si riferisce all’intervallo di tempo durante il quale l’associazione tra il nome della variabile e il suo indirizzo fisico in memoria rimane valida. Lo scope di una variabile, invece, si riferisce alla parte del programma in cui la variabile è visibile e può essere manipolata.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Cosa è la Control Unit e a quali operazione è preposta?

A

La Control Unit (CU) controlla e coordina l’attività della CPU. In particolare, controlla il trasferimento dei dati tra memoria e registri e la decodifica e l’esecuzione delle istruzioni.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Cosa avviene esattamente quando si utilizza la direttiva #include?

A

La direttiva #include del linguaggio C aggiunge all’inizio del codice sorgente del programma un file esterno, detto header, e generalmente è una libreria di funzioni.
<>= File di sistema
““=File creato da utente

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Qual è la differenza tra processo computazionale ricorsivo e iterativo?

A

Un processo computazionale ricorsivo è caratterizzato da una catena di operazioni posticipate, il cui risultato è disponibile solo dopo che l’ultimo anello della catena si è concluso. Un processo computazionale iterativo, invece, ad ogni passo è disponibile un risultato parziale.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Cosa si intende per environment e binding?

A

Per environment si intende l’insieme di variabili e funzioni definite in un programma e il loro stato corrente. Binding si riferisce all’associazione di un valore a una variabile o a un nome di funzione.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Quanti bit mi servono per rappresentare 2000 numeri? Perché?

A

Per rappresentare 2000 numeri interi distinti sono necessari almeno 11 bit. Questo perchè 2^11=2048, il che significa che con 11 bit si possono rappresentare fino a 2048 numeri distinti. Con meno di 11 bit non sarebbe possibile rappresentare tutti i 2000 numeri distinti.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Cos’è un file system?

A

Un file system è un sistema che gestisce l’organizzazione dei file su un dispositivo di memorizzazione. Il file system si occupa di gestire lo spazio libero sul dispositivo, di organizzare i file in directory e di fornire meccanismi per l’accesso ai file.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Si dia la definizione di linguaggio macchina e linguaggio ad alto livello

A

Il linguaggio macchina è un linguaggio di programmazione a basso livello che consiste in istruzioni eseguibili direttamente dalla CPU del computer. Un linguaggio ad alto livello, invece, è un linguaggio di programmazione che fornisce un alto livello di astrazione dal codice macchina sottostante, permettendo al programmatore di concentrarsi sulla logica del programma senza dover preoccuparsi dell’hardware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Cosa accade se si modifica un parametro passato per valore?

A

In linguaggio C, quando si modifica un parametro passato per valore all’interno di una funzione, la modifica non ha effetto sulla variabile originale passata per valore. Questo perché il parametro passato per valore è una copia della variabile originale e qualsiasi modifica viene effettuata sulla copia non sull’originale.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Cosa si intende per algoritmo e qual è il procedimento per passare dalla specifica di un problema al programma che lo risolve?

A

Un algoritmo è una sequenza finita di passi ben definiti per risolvere un problema. Per passare dalla specifica di un problema al programma che lo risolve si deve:
-individuare un procedimento risolutivo, partendo dai dati
-scomporre il procedimento in un insieme ordinato di azioni che lavorano sui dati (Algoritmo)
-rappresentazione dei dati e dell’algoritmo attraverso un formalismo comprensibile dal calcolatore (Linguaggio di programmazione)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly