1 2 3 ELEMENTI DI INFORMATICA 4 Corsi di Laurea in Ingegneria dell’Informazione 5 21 Gennaio 2008 LIFI Matricola: ___________ INF ELN Cognome: ____________________________________ 1 (Piccolo) (A-Coc) TLC T Caselle riservate al docente altro (specificare) __________ Nome: __________________________________ 2 (Laface) (Cod-Lag) 3 (Squillero) (Lah-Pir) 4 (Quer) (Pis-Z) IMPORTANTE: il presente foglio deve essere compilato a cura dello studente e riconsegnato comunque al docente. Per le risposte, si utilizzi lo spazio bianco sotto ad ogni domanda, includendo anche i passaggi principali. L'ordine sarà oggetto di valutazione. Non si possono consultare testi e appunti e non è consentito l’uso della calcolatrice. Tempo a disposizione: 1 ora e 30 minuti. 1. Si effettuino le seguenti conversioni di base utilizzando l’algoritmo più adatto. La conversione richiesta deve avere il numero di cifre strettamente necessario per non superare la precisione della rappresentazione nella base di partenza. Valore E8AF.12(16) 2.14(8) 3.62(6) Convertire in base 8 4 3 Rappresentazione finale 1 Algoritmo utilizzato 2. Siano dati i numeri decimali X1 e X2 riportati in tabella. Rappresentarli nel formato in complemento a due su otto bit ed effettuare, nella stessa rappresentazione, le operazioni indicate in tabella, segnalando eventuali overflow. Valore in complemento a due X1 X2 Y1 Y2 = = = = Overflow (si/no) -83 (10) +45 (10) +X1-X2 = -X1-X2 = 3. Nel formato IEEE P754 quanti numeri sono rappresentati tra 8 e 16.75 compresi? Quale è l’intervallo tra una rappresentazione e la successiva? Giustificare la risposta. 2 4. Occorre progettare un dispositivo che riceve in ingresso un numero in binario puro su 3 bit a2 , a1 , a0 e genera un numero in uscita una rappresentazione b2 , b1 , b0 che corrisponda al doppio del numero rappresentato. In caso di overflow il risultato sia imposto a 0 0 0. Si riporti la tabella di verità del circuito e si forniscano le funzioni booleane di b2 , b1 , b0 . Non occorre minimizzare le funzioni. Risposta: 3 5. Scrivere un programma in linguaggio C che: legga da tastiera le dimensioni di una matrice (m x n) (max m = 20, max n=20) la riempia con valori interi positivi (controllare che max valore positivo non superi 50). esamini la matrice, e verifichi se i numeri inseriti nella matrice, compaiono esattamente lo stesso numero di volte. Stampi la frase “I numeri inseriti nella matrice non compaiono lo stesso numero di volte”, oppure elenchi i numeri presenti nella matrice e quante volte essi appaiono. Esempio (in grassetto l’input): 3 4 1 5 3 2 3 14 1 2 6 5 14 6 Output: 1 2 3 5 14 compaiono 2 volte nella matrice 4