Esame di Sistemi di Elaborazione 7/11/2003 - A

  1. Si scriva un programma in linguaggio assembler che riceva in input un numero N maggiore di 0 (la fase di input dovrà continuare fino a che il numero inserito non sia maggiore di 0); quindi ricevere in input altri N numeri, e stampare l'ultimo di questi. Lo studente supponga di avere già in memoria eventuali costanti necessarie al programma e di avere a disposizione le seguenti istruzioni:
    Arithmetic1xxADD
    2xxSUB
    Data Movement3xxSTORE
    5xxLOAD
    BR6xxJUMP
    BRZ7xxBRANC ON 0
    BRP8xxBRANCH ON +
    Input/Output901INPUT
    902OUTPUT
    Machine Control000HALT

  2. Si mostri il contenuto dei registri IR, MAR, MDR, PC e A (accumulatore ALU) alla fine della esecuzione del seguente programma quando siano dati in input i valori 10,11,12:
    00	INP	901	
    01	STO 99	399
    02	INP	901
    03	STO 98	398
    04	INP	901
    05	STO 97	397
    06	SUB 98	298	
    07	BRP 10	811	
    08	LDA 98	598	
    09	BR 11	611
    10	LDA 97	597	
    11	STO 96	396	
    12	SUB 99	299	
    13	BRP 16	816	
    14	LDA 99	599	
    15	BR 17	617
    16	LDA 96	596
    17	OUT	902
    18	COB	000
    
  3. Si diano motivazioni dell'uso e descrizione del funzionamento dell'accesso in memoria tramite Cache.

  4. Si descriva IN DETTAGLIO la modalita' di gestione delle interruzioni, in presenza di multiple interrupt (polling, vettorizzazione). Fornire quando necessario esempi, disegni, etc.

  5. Si descriva modalita' di funzionamento, accesso, scrittura, lettura e organizzazione delle informazioni su dischi magnetici.

  6. Si descriva il funzionamento e le problematiche dell'architettura Ethernet (CSMA/CD).