Linguaggio C

  • Schema dell'algoritmo RSA in linguaggio C: chiave pubblica, chiave privata ed esponenziazione modulare per cifrare e decifrare messaggi

    Crittografia a Chiave Pubblica in C: Implementare RSA dall’Algoritmo al Codice

    .

    Perché implementare RSA in C? La crittografia a chiave pubblica è uno dei pilastri della sicurezza informatica moderna. Ogni volta che effettui un pagamento online, accedi a un sito HTTPS o firmi digitalmente un documento, molto probabilmente stai utilizzando un algoritmo basato su chiavi asimmetriche basato sugli stessi principi che vedremo oggi. Comprendere come funziona a livello…

  • Illustrazione del concetto di crittografia a chiave pubblica e algoritmo RSA

    Come implementare la Crittografia a Chiave Pubblica (RSA) in C – Parte 1

    .

    Nel precedente capitolo abbiamo affrontato l’implementazione della crittografia a chiave privata, nota anche come crittografia simmetrica. Oggi faremo un passo avanti esplorando uno dei concetti più affascinanti e cruciali della sicurezza informatica: la crittografia a chiave pubblica (o asimmetrica). In questo articolo vedremo la teoria alla base di questo sistema e inizieremo a scrivere il codice in C…

  • Schermata di codice in linguaggio C che mostra l'implementazione della crittografia simmetrica a chiave privata e del cifrario di Vigenère.

    Scopri come funziona la Crittografia Simmetrica (a Chiave Privata): spiegazione semplice e implementazione in C

    .

    Oggi ci addentriamo nel cuore della sicurezza informatica e della programmazione affrontando un tema tanto affascinante quanto cruciale: la crittografia simmetrica, conosciuta anche come crittografia a chiave privata. Nel nostro percorso di apprendimento del linguaggio C, ci capita spesso di esplorare concetti informatici generali per poi declinarli a livello pratico scrivendo del codice. Oggi scopriremo cos’è la…

  • CPU virtuale con codice binario che si automodifica, esempio di programmazione avanzata con Simpletron per articolo su tecniche di coding

    Codice automodificante: quando la fantascienza diventa (quasi) realtà

    .

    Codice automodificante: tra miti e realtà Il termine “codice automodificante” evoca subito immagini da film di fantascienza: computer che si riscrivono da soli, virus che mutano per sfuggire agli antivirus, o intelligenze artificiali che evolvono in modo incontrollato. Ma al di là della narrativa, questa tecnica esiste davvero ed è stata usata in contesti molto specifici —…

  • Sviluppo assemblatore per linguaggio SML per simulatore Simpletron

    Assemblatore SML in C: Guida all’Implementazione della Seconda Passata

    .

    Nel percorso di sviluppo del nostro simulatore di CPU Simpletron, uno dei componenti fondamentali è l’assemblatore. Dopo aver completato la prima passata per l’identificazione delle etichette, in questo secondo capitolo ci immergiamo nel cuore della traduzione: la trasformazione del codice mnemonico in linguaggio macchina eseguibile. Mentre la prima passata serve a popolare la Symbol Table con i nomi…

  • Sviluppo assemblatore per linguaggio SML per simulatore Simpletron

    Costruire un assemblatore in C: la prima passata e la Symbol Table

    .

    Nello sviluppo del nostro progetto Simpletron, abbiamo raggiunto una tappa fondamentale. Dopo aver progettato e simulato la CPU, è arrivato il momento di colmare il divario tra il codice leggibile dall’uomo e le istruzioni macchina. Oggi iniziamo lo sviluppo di un assemblatore per il linguaggio SML, scritto interamente in C. Scrivere un assemblatore è uno…

  • Illustrazione 3D di un microprocessore con collegamenti a blocchi fluttuanti che rappresentano ALU, Control Unit e Accumulatore su sfondo scuro

    Dalla Teoria alla Pratica: Costruiamo un Microprocessore Virtuale con il C

    .

    Come programmatori, ogni giorno diamo istruzioni a una macchina che le esegue fedelmente. Ma quanti di noi si sono fermati a pensare a cosa succede davvero in quella “scatola nera” chiamata CPU? Per me, che ho un piede nell’informatica e uno nell’elettronica, questa domanda è sempre stata di estremo interesse. Volevo andare oltre l’astrazione del…

  • Simulazione 3D in ambiente Webots che mostra un labirinto con pareti rosse e un agente sferico blu che naviga verso l’uscita usando l’algoritmo della mano destra scritto in C.

    Uscire da un labirinto con il linguaggio C: l’Algoritmo della Mano Destra

    .

    Spesso, quando si studia la programmazione, ci si imbatte in concetti che sembrano puramente teorici o accademici. Uno di questi è senza dubbio la ricorsione. “A cosa serve richiamare una funzione all’interno di se stessa?”, ci si chiede.
 Beh, nel video di oggi vi mostro un esempio pratico dove la ricorsione non è solo utile,…

  • c27-file-accesso-casuale

    File ad Accesso Casuale nel Linguaggio C

    .

    In questo video concludo la parte sui file in C parlando di accesso casuale, una tecnica che permette di leggere e modificare dati specifici senza dover scorrere l’intero file. Nel video vediamo due approcci fondamentali: i file formattati con  fprintf()  e  fscanf() , e i file a blocchi con  fwrite()  e  fread() . Quest’ultimo metodo è particolarmente…

  • C27 – Soluzione esercizio

    .