Guida utente AE Suite AE Suite è una piccola collezione di strumenti multi-piattaforma contenente: * Calcolatrice binaria * Codice di Hamming * Codifica XOR * SOODLE (non più utilizzabile per la dismissione del server Moodle del DMI) * VirtuASM (beta) # Calcolatrice Binaria Permette di effettuare somma, sottrazione, moltiplicazione e divisione di numeri binari a lunghezza variabile. La calcolatrice supporta solo numeri interi. Dispone di due modalità: signed (con segno) e unsigned (senza segno). Nel campo Numero bit è possibile inserire la lunghezza del risultato dell'operazione, troncando o estendendo il numero ottenuto. L'opzione Complemento a due permette di effettuare il complemento degli operandi velocemente. Ogni cambiamento delle opzioni è applicato immediatamente, gli operandi e il risultato sono aggiornati di conseguenza. # Codice di Hamming Permette di codificare una stringa binaria data in input tramite la codifica di Hamming. L'output consiste della stringa codificata ed una tabella che mostra graficamente il ruolo di ogni bit codificato. # Codifica XOR Una piccola applicazione per codificare stringhe tramite la codifica XOR. L'opzione Visualizzazione stringa permette di passare dalla visualizzazione della stringa originale a quella codificata. Per codificare una stringa è necessario fornire un'ulteriore stringa, da usare come chiave per la codifica, nel campo Chiave di codifica. L'opzione Step by Step mostra come la stringa venga codificata/decodificata tramite una piccola animazione, la cui velocità può essere impostata nel campo Velocità. Il valore della velocità è in secondi e rappresenta il tempo necessario ad effettuare un singolo XOR nella stringa. Il valore massimo è 2.0, il più lento, il valore 1.0 è solitamente preferibile. Il campo Num. bit permette di impostare il numero di bit che deve occupare ogni singolo carattere della stringa # SOODLE SOODLE ti permette di testare la tua preparazione in Architettura degli elaboratori generando 8 domande casuali tra quelle presenti nel Moodle. Ogni domanda apparterrà ad un capitolo diverso, così come avviene in una prova d'esame ;), tranne il caso in cui non sono ancora presenti 8 capitoli. SOODLE richiede un account Moodle per funzionare e sincronizzare le domande, ma nessun dato viene salvato da SOODLE o AE Suite. Dopo aver effettuato il login è possibile selezionare l'anno accademico, e nel caso in cui l'account non fosse abilitato per quell'anno accademico, SOODLE chiederà la chiave per l'iscrizione fornita dal professore. Il pulsante Refresh sincronizza SOODLE con il Moodle e crea un file di cache, per cui non sarà necessario risincronizzare ad ogni avvio. Verrà sincronizzato solo l'anno accademico selezionato. La sincronizzazione può richiedere un paio di minuti. Sarà invece necessario effettuare un refresh se nel Moodle vengono caricate nuove domande. Il pulsante Genera caricherà le domande dalla cache, se esistente, altrimenti avvierà la sincronizzazione automaticamente. # VirtuASM VirtuASM è un emulatore ARM molto basilare. VirtuASM fa riferimento alla documentazione ARM Developer Suite v1.2 (DUI0068) - http://infocenter.arm.com/help/topic/com.arm.doc.dui0068b/DUI0068.pdf Le estensioni supportate sono: .vasm, .s, .S. VirtuASM presenta una sidebar a destra in cui sono mostrate informazioni sui registri, le flag dell'ALU ed i cicli CPU. Cliccando su di un registro è possibile visionare la storia dei valori, mentre il pulsante a destra permette di cambiare la visualizzazione del valore tra Hex, Bin e Dec. Il pulsante Memoria mostra il contenuto della memoria ed eventuali label associati agli indirizzi. VirtuASM supporta le seguenti istruzioni: ADD ADC SUB SBC RSB RSC MOV MOVS MVN LDR LDRB STR STRB MUL AND ORR EOR BIC CLZ NOP e le seguenti direttive: ORIGIN - Imposta l'indirizzo di partenza, es. ORIGIN 0x200 END - Termina l'esecuzione EQU - definisce una costante numerica DCD - Precarica valori in memoria, singoli o separati da virgola. es. MIOLABEL DCD 1,2,3 La direttiva DCD supporta operazioni aritmetiche tra numeri e labels, ma il risultato sarà troncato per difetto poichè VirtuASM supporta solo numeri interi. VirtuASM rispetta l'ordine di precedenza degli operatori e le operazioni possono contenere parentesi tonde e quadre. Ad esempio le seguenti direttive sono valide: MYLABEL2 DCD 3*2+(1/6) MYLABEL3 DCD 4*MYLABEL2+1 Gli operandi immediati possono essere rappresentati in decimale, binario o esadecimale e vanno preceduti dal simbolo #. Esempi: MOV R4, #20 | ADD R1, R1, #2 I numeri in binario devono essere preceduti dal prefisso 0b. I numeri in esadecimale devono essere preceduti dal prefisso 0x oppure &.