Domande d'esame VERIFICATO

Domande d'esame: Laboratorio di Informatica

Università degli Studi di MILANO-BICOCCA fisica 2020
14 visualizzazioni
22 download
Nessun voto ancora
Condividi: WhatsApp Telegram
Anteprima pagina 1 — Domande d'esame: Laboratorio di Informatica Anteprima pagina 2 — Domande d'esame: Laboratorio di Informatica Anteprima pagina 3 — Domande d'esame: Laboratorio di Informatica

Di cosa parla

  • Variabili: Elementi fondamentali con nome, tipo e valore, occupano spazio in RAM.
  • Funzioni: Sezioni di codice per compiti specifici, accettano argomenti e producono un risultato o un effetto. In C, includono un'intestazione (tipo di ritorno, nome) e un corpo (istruzioni). Gestiscono argomenti formali e reali, e hanno variabili con scope locale.
  • Record di Attivazione e Stack: Durante la chiamata di una funzione, viene creato un "record di attivazione" nello stack di memoria, gestito con politiche LIFO (Last In, First Out) tramite operazioni di push e pop.
  • Vettori (Array) e Matrici: Sequenze di elementi dello stesso tipo, indicizzati da 0. Le matrici sono vettori di vettori.
  • Strutture Record (Struct): Permettono di raggruppare dati di tipo diverso sotto un unico nome, con campi specifici. Possono essere annidate e manipolate come unità.
  • Allocazione Dinamica della Memoria e Puntatori: I puntatori memorizzano indirizzi di altre variabili, consentendo l'allocazione dinamica di memoria (es. con malloc) e la modifica di variabili esterne alle funzioni.
  • Liste Concatenate: Strutture dati dinamiche dove ogni elemento (nodo) contiene un puntatore al successivo, con NULL che indica la fine della lista.
  • Funzioni Ricorsive: Funzioni che chiamano sé stesse, risolvendo problemi suddividendoli in casi più semplici fino a raggiungere un caso base.
  • Strutture di Controllo (Cicli):
    • While: Esegue un blocco di istruzioni finché una condizione è vera.
    • For: Ciclo più conciso che integra inizializzazione, condizione e incremento in un'unica istruzione.
  • Generazione Numeri Casuali: Le funzioni rand() e srand() (con time.h) permettono di generare sequenze di numeri pseudo-casuali.
  • Parametri da Riga di Comando: argc (numero di argomenti) e argv (array di stringhe) consentono ai programmi C di interagire con la riga di comando.
  • Costanti Simboliche: Direttive del preprocessore (es. #define) per associare valori fissi a simboli.
  • Architettura del Calcolatore: Concetti chiave come CPU (unità di elaborazione), RAM (memoria di lavoro), BUS (canale di comunicazione), CLOCK (sincronizzazione) e unità di I/O.
  • Bit e Byte: Il bit è la più piccola unità di informazione (0 o 1); il byte è una sequenza di 8 bit.
  • Sistema Operativo: Un insieme di programmi che gestisce le risorse hardware e software, agendo da intermediario tra utente e calcolatore. Funzioni principali includono la gestione dei processi, della memoria, dell'I/O e del filesystem.
  • Algoritmi: Procedimenti finiti, chiari e non ambigui per risolvere problemi. Concetti di costo computazionale (tempo e spazio) e correttezza. Esempi includono mergesort (ordinamento) e ricerca binaria.
  • Rappresentazione Numerica: Interi e reali sono rappresentati in binario, con i numeri reali che utilizzano una notazione in virgola mobile (mantissa ed esponente).
  • Pseudocodice: Notazione intermedia tra linguaggio naturale e linguaggio di programmazione, usata per abbozzare algoritmi.
  • Macchina di Turing: Un modello teorico astratto di calcolo, fondamentale per la teoria dell'informatica e i limiti della computabilità.
  • Standard Input/Output: Canali predefiniti per l'interazione del programma (input da tastiera, output su schermo).

Altri appunti di LABORATORIO DI INFORMATICA I

Condividi questi appunti

WhatsApp Telegram