---++ Secondo Progetto di Assembler - AA 2001 ---+++ Gestione dell'input tramite Interrupt Modificate il codice da voi realizzato per il PrimoEsercizioAssembler2001 in modo che: * sia definita un'area di memoria di nome *buffer* sufficiente a contenere 4 bytes * all'inizio vi chieda (tramite syscall) una password di 4 caratteri che dovete inserire in un'altra zona di memoria di nome *password* * se battete piu' di 4 caratteri dovete considerarne solo i primi 4 * dopo la fase che calcola e che stampa la matrice di Tartaglia e prima della fase che manipola le half-words * cicla finche' nell'area di memoria *buffer* non appaiono (magicamente :-) ) esattamente i 4 bytes della password (sara' l'interrupt-handler a metterceli) * se la password e' giusta si procede alla manipolazione della seconda matrice ed alla sua stampa Modificate il *trap.handler* di Spim in modo che: * sia abilitata la ricezione degli interrupts * sia abilitata la generazione degli interrupt da tastiera * in corrispondenza della pressione di un tasto: * l'interrupt handler distingua che si tratta di un interrupt e non di una eccezione * il carattere premuto sia inserito nella zona *buffer* in modo che *buffer* contenga sempre gli ultimi 4 caratteri battuti (nell'ordine) Ricordatevi di settare l'opzione *memory-mapped-io* nel pannello di controllo di Spim Links utili: Sul sito del <A HREF="http://www.disco.unimib.it/architettura1/">Dipartimento di Informatica Sistemistica e Comunicazione</A> dell'Università di Milano e' disponibile una bellissima <A HREF="http://www.disco.unimib.it/architettura1/arch00/laboratorio/Esercizio8.html">esercitazione</A> sul trap-handler di Spim e sulla <A HREF="http://www.disco.unimib.it/architettura1/arch00/laboratorio/GestioneIngressoUscita.html">gestione dell'input-output tramite interrupts</A>. Il materiale è gentilmente messo a disposizione dai docenti del corso: D. G. Sorrenti, S. Ruocco, U. Jocher. -- Users.AndreaSterbini - 07 May 2001 <br> <!-- * Set ALLOWTOPICCHANGE = Users.DocentiArcGroup -->
This topic: Architetture2/MZ
>
SecondoEsercizioAssembler2001
Topic revision: r5 - 2001-05-10 - AndreaSterbini
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback