È stata una decision dell'ultimo momento darlo, perkè voglio vedere se riesco a togliermene un altro. Vi faccio un esempio di traccia

Esercizio 1
1.1 Si scriva una subroutine assembly intersezioneElementi che riceve in ingresso due array A e B di numeri interi e stampa su video la stringa “Intersezione Vuota” se nessun elemento di A è presente anche in B, altrimenti stampa in sequenza gli elementi in comune. Ad esempio, se A = [4, -11, 5, 7, 4, 8] e B = [3, 2, 5, 10, 9, 4], il metodo stamperà 5 e 4.
1.2 Scrivere quindi un programma che invochi intersezioneElementi, e provveda a passare come parametri gli indirizzi di A e B alla subroutine.
1.3 Si richiede infine di disegnare lo stato dello stack (record di attivazione) durante l’esecuzione di intersezioneElementi.

Esercizio 2
2.1 Dato il valore modulo e segno -45, fornirne la codifica binaria in complemento a due, utilizzando il minor numero possibile di bit, ipotizzando che il valore fornito (-45) sia espresso rispettivamente nelle basi (a) 8, (b) 10 e (c) 16
2.2 Sommare i numeri 11101001c2 e 00101001c2 (complemento a 2 con 8 bit) e convertire il risultato in decimale.
2.3 Fornire il valore in base 10 completo di segno, del numero binario 10101010 interpretandolo rispettivamente come: (a) numero intero assoluto; (b) numero intero relativo, in modulo e segno; (c) numero intero relativo in complemento a due.
2.4 Si esegua l’operazione: BC2A – D7A0 trasformando i numeri dalla base 16 in binario (complemento a 2).
2.5 Dato il numero reale in base 10:
-21,333
lo si converta in base 2, scrivendone la corrispondente rappresentazione nella notazione standard IEEE 754 floating point singola precisione a 32 bit (1 bit per il segno, 8 bit per l’esponente polarizzato e 23 bit per la parte frazionale della mantissa normalizzata).
Si scriva infine la stringa di 32 bit ottenuta come sequenza di cifre esadecimali (base 16).