Gloria Bordogna CNR IDPA Via Pasubio 5, c/o POINT, Dalmine (BG)

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Gloria Bordogna CNR IDPA Via Pasubio 5, c/o POINT, Dalmine (BG) e-mail: gloria.bordogna@idpa.cnr.it"

Transcript

1 Strutture dati per sistemi di INFORMATION RETRIEVAL Gloria Bordogna CNR IDPA Via Pasubio 5, c/o POINT, Dalmine (BG)

2 Creazione di una struttura dati struttura dati per organizzare gli indici Scopo (efficienza): velocizzare la ricerca di indici Compattare la matrice sparsa di correlazione termini documenti l indice viene costruito off-line prima di permette la ricerca ottimizzare la ricerca per query costituite da un singolo termine

3 Creazione di un Indice a file inverso Calcolo significatività indici Regole di parsing Costruzione dell indice Parser dizionario Inverted index Posting file Stop list tokenizer documents Stemmer Regole di stemming

4 Struttura dati a file inverso Indipendente dal modello di retrieval che il sistema di IR adotta. Informazioni associate ad ogni termine indice (nel dizionario) : puntatore alla lista di documenti che lo contengono (nel posting file). Per ogni documento puntato: la frequenza del termine nel documento (tf) la posizione nel documento di ogni occorrenza del termine (opzionale, solo per abilitare query con contesto). le sue occorrenze nella collezione df per il calcolo della IDF e per ottimizzare la valutazione di query Booleane)

5 Struttura dati a file inverso Il dizionario contiene per ogni indice: termine, frequenza globale, puntatore alla lista di posting nel posting file La lista di posting contiene per ogni elemento 1. l identificatore univoco del documento (DOCID) che in File Text è associato a un nome file o locazione URL. 2. Frequenza del termine nel documento (tf). 3. Posizione nel documento di ogni occorrenza del termine espressa come numero di parola dall inizio del documento, num. Byte dall inizio del documento, num. di sezione, paragrafo, frase, numero di parola nella frase File Dizionario File di Posting D1: nome_file1.doc, ms_word D2: nome_file2.txt, wordpad D3: nome_file3, acrobat_reader File text contenente l elenco ordinato dei DOCID

6 Occupazione in memoria della Struttura dati a File Inverso Lo spazio richiesto per memorizzare il dizionario (indice) è piuttosto ridotto. Il vocabolario cresce come O(N β ) (legge di Heap) dove N è lo spazio occupato dal testo dei documenti e β è una costante tra 0.4 e 0.6. Es: N = 1Gb dizionario circa 5 Mb. D altra parte le occorrenze richiedono molto più spazio. Poiché ogni parola che compare nel testo di un documento è riferita una volta nella struttura dati, lo spazio cresce come O(N).

7 Ottimizzazione del posting file Si applicano tecniche di compressione a: nomi dei termini nel dizionario identificatori dei documenti e occorrenze dei termini Tecnica di compressione dei DOCID con indirizzo relativo term (d 1,tf 1 ), (d 2,tf 2 ),... (d n,tf n ) sfrutta l ordinamento crescente dei DOCID nel posting file ogni DOCID i è sostituito dall intervallo DOCID i -DOCID i-1 I numeri sono codificati usando meno bit L indice viene ridotto del 10-15% Es: Term1 (200,10), (350,3), (550,5), (600,1), uso 2 byte per DOCID assoluto (200,10), (150,3), (200,5), (50,1) uso 1 byte per DOCID relativo Lo stesso criterio si può usare per le occorrenze del termine in ogni documento nel posting file

8 Ottimizzazione del posting file INDIRIZZAMENTO A BLOCCHI: Le occorrenze di un termine nel posting file puntano a blocchi di documenti o ogni documento viene diviso in blocchi. dove compare la parola 17 Vantaggi: il numero di bit del puntatore è più piccolo rispetto a quello che memorizza le occorrenze nella posizione precisa nel testo. Tutte le occorrenze di una parola dentro un singolo blocco hanno lo stesso riferimento. Svantaggi: Le ricerche per contesto richiedono più operazioni.

9 RICERCA in un file Inverso : Accesso al file dizionario e ricerca dei termini nella query Reperimento della lista di posting associata a ogni termine trovato nel dizionario Filtraggio dei risultati: se la query contiene più termini connessi da operatori le liste parziali dei risultati vanno fuse (operazione di merge) in una lista globale. Se gli operatori sono di prossimità o adiacenza e il file inverso adotta un indirizzamento a blocchi è necessario scandire i blocchi per ottenere l offset delle occorrenze nel blocco dei termini.

10 File di Posting con Skip Pointers : Per ottimizzare le ricerche si introducono nelle liste di posting dei termini dei puntatori di skip (che saltano un certo numero di occorrenze) DIZIONARIO POSTING FILE t1 d1, d2, d9, d11, d25, d26, d71, d80, d t2 d4, d6, d79, d111, d125, d226, d271, d290

11 File Inverso: ottimizzazione Inversione completa (full inversion) memorizzazione della posizione precisa delle occorrenze delle parole ( O(n) overhead circa 40%) Indirizzamento a blocchi nei documenti ogni termine nel dizionario punta a blocchi nei documenti (la dim. del puntatore varia da 1 a 3 byte a seconda della dim. dei documenti della collezione) (overhead del 5%) (limite 256 blocchi in documenti di 200Mb) Indirizzamento a blocchi di documenti si punta a 256 o 64K blocchi di documenti (ciò richiede 1 o 2 byte per puntatore) indipendentemente dalle dimensioni della collezione 17

12 Indice Inverso: aggiornamento AGGIUNTA DI NUOVI DOCUMENTI: Aggiornamento del dizionario e del posting file CANCELLAZIONE: gestione mediante FLAG associato ad ogni documento nel file TEXT. File Dizionario 17 File di Posting DOCID File text contenente l elenco ordinato dei DOCID D1: nome_file1.doc, 1 D2: nome_file2.txt, 0 D3: nome_file3, 1 FLAG

13 Indice Lineare Termine Puntatore alla lista inversa di postings ant bee cat dog elk fox gnu hog Algoritmo ricorsivo di ricerca binaria: trova l'elemento a metà fra l'inizio e la Lista fine del dizionario; se è uguale a quello da Inverted cercare, restituisci true; se è maggiore, cerca solo nella prima metà; altrimenti, cerca solo nella seconda metà; 16 Il dizionario può essere tenuto in memoria (a pezzi) durante il retrieval

14 Indice Lineare Vantaggi Può essere acceduto velocemente, es., con una ricerca binaria, O(log n) E adatto per la valuazione sequenziale, es., comp* Occupazione economica dello spazio di memoria 17 Svantaggi Difficile l aggiornamento incrementale: Gli indici devono essere ricostruiti se si inseriscono nuovi termini

15 Indice a B-tree Catalog, hardware network Review, synonym Apparatus, biomedicine morpheme Number, paper Enciclopedia, grammar publication B-tree di ordine d: Ogni nodo memorizza più termini La radice contiene tra 1 e d termini. Ogni nodo intermedio contiene tra d/2 e d termini Se k i èl iesimo termine in un nodo intermedio tutti i termini nell (i-1) esimo figlio sono lessicograficamente più piccoli di k i tutti i termini nell (i+1) esimo figlio sono lessicograficamente più 18 grandi di k i Tutte le foglie hanno la stessa profondità (bilanciamento)

16 Indice a B-tree Vantaggi Può essere acceduto velocemente (visita ricorsiva i nodi) numero massimo di accessi a un B tree di ordine d: O(log d n) dove n è il numero di livelli (altezza del B tree) e d il numero di elementi per nodo Conveniente per l aggiornamento Semplice aggiunta di nuovi termini Utilizzo economico dello spazio di memoria Svantaggi Inefficiente per la ricerca sequenziale, comp* Tende a diventare sbilanciato dopo diversi aggiornamenti (n cresce) Se l indice è tenuto su disco ogni nodo può richiedere un accesso al disco separato.

17 INDICE a (Suffix- Tree/Arrays) Generalizza i file inverted Utilità database genetici (i testi sono stringhe senza parole) ricerche complesse ad esempio per frasi e ricerca sequenziale (prefissi) O(m) indipendente dalla lunghezza N dell indice Nozioni di Base Tratta il testo di un documento come un unica stringa ogni posizione nel testo fino alla fine del testo è un suffisso ogni suffisso è univocamente identificato dalla posizione iniziale ove appare nel documento dal testo vengono selezionati dei punti indice che possono essere reperiti I puntatori ai suffissi sono memorizzati nelle foglie dell albero (suffix-tree) Le parti comuni ai suffissi sono memorizzate solo una volta

18 INDICE a Suffix-Tree This is a text. A text has many words. Words are made from letters Punti indice suffissi text. A text has many words. Words are made from letters text has many words. Words are made from letters many words. Words are made from letters words. Words are made from letters Words are made from letters made from letters letters Suffix-tree Ordine lessicografico : 1 visita in ordine dall alto al basso O(m) m lunghezza chiave di ricerca 60 letters ma text words de from ny words Ha tanti nodi figlio quanti sono i suffissi Ogni nodo ha almeno 2 figli Ogni arco è una sottostringa del suffisso has many A text has. Words are made.. 40 are made from 33

19 Suffix-Array This is a text. A text has many words. Words are made from letters. Punti indice text. A text has many words. Words are made from letters suffissi Suffix-array text has many words. Words are made from letters many words. Words are made from letters words. Words are made from letters Words are made from letters made from letters letters Let tex wor Ordine lessicografico delle posizioni dei suffissi ricerca binaria Ottimizzazione numero accessi sopra indice: campionamento del suffix-array con passo 4 e suffix=3

20 INDICE a (Suffix- Tree/Array) Vantaggi Adatti a ricerche complesse ad esempio per frasi e ricerca sequenziale (prefissi) comp* Svantaggi processo di costruzione costoso alto overhead (dal 120% al 240% della dimensione della collezione)

21 INDICE a Signature (maschera di bit) Diversamente da un file inverso la struttura dati a signature usa hash tables. si suddivide il documento (testo o immagine) in blocchi di lunghezza fissa (es. misurata in numero di indici contenuti o num di pixels) si assegna ogni blocco a una signature (di dimensione fissa), che viene usata per ricercare il documento effettuando un matching con la signature che viene associata alla query. La signature associata al blocco si ottiene attraverso OR delle stringhe di bit associate a ciascun termine nel blocco da una funzione di hashing

22 INDICE a Signature This is a text. A text has many words. Words are made from letters OR b=2 indici per blocco signature h(text) = h(many) = h(words) = h(made) = h(letters) = h = funzione di hash m=2 bit settati a 1 in modo casuale nella maschera di lunghezza B=6 (lunghezza della signature)

23 INDICE a Signature Consideriamo il testo d= text retrieval and information retrieval : H(information) = H(text) = H(data) = H(retrieval) = B=6, b=2, m=2 La signature dei due blocchi del documento d (dopo aver rimosso le stopwords) è: Rappresentazione a signature del documento d B1(d) = ottenuta H(text) = OR H(retrieval) = B2(d) = ottenuta H(information) = OR H(retrieval) =

24 INDICE a Signature - Ricerca B1(d) = ottenuta H(text) = OR H(retrieval) = B2(d) = ottenuta H(text) = OR H(retrieval) = Per cercare un dato termine si confronta la stringa di bit associata dalla funzione di hash al termine di ricerca verificando se è inclusa nelle signatures del documento. Es: ricercando text in d H(text) = che è contenuta in B1(d) e B2(d) text text reperisce d Consideriamo ora di ricercare data H(data)= è contenuta nelle stringhe B1(d) e B2(d) Data reperisce d ma in questo caso abbiamo un errore Le strutture dati a signature possono dare origine a risultati falsi

25 Probabilità di avere dei False Drop Un False Drop è la probabilità che una signature di un blocco soddisfi una query semplice anche se il blocco non contiene il termine cercato Tale probabilità aumenta se ci sono troppi bit a 1 nella signature dei blocchi Questa è la ragione della scelta di indicizzare a blocchi i documenti I false drop si minimizzano scegliendo B grande (signature lunga), b piccolo (blocchi piccoli) e m piccolo (pochi bit = 1) costo grande overhead 2% prob. False drop 10% overhead 0.046% prob. False drop 20% overhead

26 INDICE a Signature Vantaggi Bassa occupazione di memoria (dal 10% al 20% della dimensione della collezione) adatta per testi non troppo grossi Adatti per indicizzare dati multimediali (associando a sottoparti di immagine una maschera di bit) Svantaggi ricerca sequenziale (per prefissi) sulle signature eventualità di False drop l indice a file inverso è migliore nella maggior parte delle applicazioni rispetto all indice a signature

27 p strutturati Estensione del file posting inclusione dell ID delle sezioni o campi (Zone, o field) information: doc1.{sez1, sez2, sez3, } retrieval: doc1.{sez1, sez3, } Permette di valutare Vincoli strutturali Esistenza della sezione S Vincolidiinclusione A in sezione S A nella stessa sezione di B I termini A e B devono co-occorrere in una sezione comune

28 Indice per documenti strutturati Estensione dei termini nel dizionario Estensione dizionario degli indici con campi DIZIONARIO Fusion.abstract Fusion.title d1, d2 POSTING d1, d3, d4

29 Conclusioni -Velocità di accesso e di Retrieval Signature file << Suffix array << file inverso (a destra il più veloce) - Capacità di Memoria File inverso >> suffix array>> Signature file (a destra il più compatto)

30 Ricerca sequenziale di stringhe Se non c è un indice o se c è un indice a blocchi è necessario effettuare una ricerca sequenziale nel testo del documento o nel blocco per trovare una stringa (pattern) Problema: Dato un pattern P di lunghezza n e un testo T di lunghezza m (m >> n) trova tutte le posizioni di P in T Ci sono diversi algoritmi Alcuni per la ricerca esatta di P in T Altri per la ricerca di una stringa in T simile a P (ciò permette di tener conto di possibili errori di stampa nella formulazione di query

31 Ricerca Knuth Morris-Pratt Si utilizzano le informazioni sul confronto nella finestra precedente per riposizionare la finestra ottimizzando la ricerca O(m) Esempio TEXTURE OFA TEXT IS NOT TEXTUAL E la query TEXT La finestra è di 5 caratteri TEXTURE OFA TEXT IS NOT TEXTUAL A questo punto non c è un matching e quindi la finestra viene riposizionata TEXTURE OFA TEXT IS NOT TEXTUAL TEXTURE OFA TEXT IS NOT TEXTUAL TEXTURE OFA TEXT IS NOT TEXTUAL (trovato!) 11111

32 Tolleranza di Errori fuzzy pattern matching di stringhe Obbiettivo: rimediare a errori possibili di stampa nel testo dei documenti o nelle query; Metodo: Pattern matching di stringhe isolate: Per ogni parola nella query si esegue un confronto parziale tra stringhe e termini indice nel dizionario; tale confronto è basato sulla misura della similarità tra stringhe. Pattern matching contestuale di stringhe; come sopra poi si selezionano le coppie di stringhe con più alta co-occorrenza nei documenti della collezione Flight flew Milano London

33 Misure di Similarità tra stringhe Determinare la similarità tra due oggetti Longest Common Subsequence (LCS) (similarità) Caratteristiche: t i Τ, sim(t i, t i )= 1 t i, t j Τ, sim(t i, t j )= 0 se t i e t j sono completamente diverse t i, t j, t k Τ, sim(t i, t j )<sim(t i, t k ) se t i è più simile a t k che a t j Fornisce la lunghezza della sequenza più lunga di caratteri comuni alle due stringhe. Una sequenza di una stringa si ottiene cancellando zero o più caratteri. Esempio: misspell <---> mispell LCS= 7 misspelled <----> misinterpretted LCS= 7

34 Distanza tra stringhe Alternativamente si può usare una distanza per misurare la differenza tra stringhe. Distanza di Hamming Applicabile a stringhe di uguale lunghezza Calcola il numero minimo di caratteri che devono venire cambiati per trasformare una stringa nell altra: Siano v = (v 1,... v n ) e w = (w 1,... w n ) due parole (rappresentate come vettori di V). h(v,w) = { j: v j w j } ESEMPIO v=distribuire w=contribuito { D, I, S, R, E} = h(w,v)=h(v,w)=5 Si può normalizzare rispetto alla lunghezza della stringa N h(v,w)/ N 5/11 similarità(v,w) = 1- h(v,w)/ N = 6/11

35 Distanza Edit o di Levenshtein Generalizzazione della distanza di Hamming Stima il costo in termini di numero minimo di trasformazioni necessarie per convertire una stringa nell altra. Le stringhe possono avere lunghezze diverse Transformazioni (costo differente): Substitute: Sostituisce il carattere corrente nella stringa di input con quello corrente nella stringa target Delete : cancella il carattere corrente nella stringa di input Insert : Inserisce il carattere corrente della stringa target nella stringa di input ESEMPIO w = GATTACA y = TATATA GATTACA ATTACA TTACA TATACA TATATA (1 ins, 2 del, 1 sub) GATTACA TATTACA TATACA TATATA (0 ins, 1 del, 2 sub) Edit distance = 3

36 1 capron 2 crapron 3 craron 4 craon 5 crayon input Distanza Edit target Edit distance = 5

37 Ricerca nell INDICE di una stringa con tolleranza di errori Ottimizzare la Valutazione esaustiva e costosa della distanza di Edit con tutti I termni nel dizionario Approccio euristico 1. Restringe il calcolo a stringhe che iniziano con lo stesso carattere 2. Utilizza l indice permuterm considerando tutte le rotazioni r della stringa query q Es: q=maro rotazioni r=maro$ aro$m ro$ma o$mar Trovo nell INDICE permuterm le parole che iniziano con ogni rotazione r (omettendo un suffisso esempio di lunghezza es. L=1 ) ->cerco nell Indice permuterm mar* aro* ro$* o$m* Mar* -> mare, marchio Aro* - > aroma, ro$* -> moro, foro o$m* -> moro

38 Ricerca di una stringa nel dizionario 2 Approccio euristico con min distanza Edit Utilizzo di un indice K-grammi e seleziono i termini t nel dizionario che hanno un minimo numero # di kgrammi in comune con q Coeff. Di Jaccard:= t q / t q Regola: Coeff Jaccard> 0.5 ca caserma canestro mecca casse->casseruola as asso masso casse tasse casseruola se casse tasse caserma sentiero casseruola Es: q=case seleziono casse # di 2grams in q=case=3 # di 2grams di casseruola=9 # di 2grams di casseruola case=3 Coeff. Di Jaccard:= t q / t q =3/(3+9-3)=3/9=1/3 2grams di q=case=3 2grams di q=casse=4 2grams di casse case=3 Coeff. Di Jaccard:= t q / t q =3/(3+4-3)=3/4

39 Ricerca di una stringa con errori di battitura fonetici L utente ha digitato una parola che ha un suono simile a quello di un altra (tipico errore nello spelling dei nomi propri) Si generara un Soundex tabella FONETICA Phonetic hash Parole con suono simile hanno lo stesso codice in Soundex Algoritmo: Trasforma ogni indice in una stringa di 4 caratteri (Ci sono diverse conversioni): 1) mantieni la prima consonante 2) trasforma le vocali e H W Y 0 3) trasforma consonanti con stesso suono nello stesso digit: Es B F P V 1 C G J K Q S X Z 2 D T 3 M N 5 R 6 Elimina digit consecutivi, elimina 0, e mette 0 in testa, e conserva le prime 4 posizioni Trasforma il termine nella query q in sound Cerca q in Soundex

40 Ricerca di Pattern semplici Prefissi: Pattern che identificano l inizio di parole. anti --> antiquity, antibody, ecc. Suffissi: Pattern che identificano la fine di parole: ix --> fix, matrix, ecc. Sottostringhe: Pattern che identificano sottosequenze arbitrarie di caratteri. rapt --> enrapture, velociraptor ecc. Intervalli: coppie di stringhe che identificano una qualunque parola lessicograficamente intermedia tin to tix --> tip, tire, title, ecc.

41 Valutazione di query con wildcard * Costose: necessitano di strutture dati apposite INDICE PERMUTERM: è un sopraindice che contiene ordinate lessicograficamente tutte le rotazioni dei termini indice nel dizionario Indice permuterm Dizionario asa$c a$cas casa$ sa$ca Casa a$cos cosa$ osa$c sa$co Cosa Si inserisce il carattere $ di fine stringa Data la query q= c*sa q= c*sa$ la ruoto fino a portare * alla fine q=sa$c* e cerco nell indice permuterm INDICE Kgrammi: ^ =inizio di un termine Dizionario 3grams Sa$ ^ca q= c*sa ^c and sa$ Dizionario casa, cosa, causa, pausa, casa,castello, causa,

Indicizzazione terza parte e modello booleano

Indicizzazione terza parte e modello booleano Reperimento dell informazione (IR) - aa 2014-2015 Indicizzazione terza parte e modello booleano Gruppo di ricerca su Sistemi di Gestione delle Informazioni (IMS) Dipartimento di Ingegneria dell Informazione

Dettagli

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File

Dettagli

Esercizi per il corso di Algoritmi e Strutture Dati

Esercizi per il corso di Algoritmi e Strutture Dati 1 Esercizi per il corso di Algoritmi e Strutture Dati Esercizi sulla Tecnica Divide et Impera N.B. Tutti gli algoritmi vanno scritti in pseudocodice (non in Java, né in C++, etc. ). Di tutti gli algoritmi

Dettagli

Introduzione ad Access

Introduzione ad Access Introduzione ad Access Luca Bortolussi Dipartimento di Matematica e Informatica Università degli studi di Trieste Access E un programma di gestione di database (DBMS) Access offre: un supporto transazionale

Dettagli

Esercizi Capitolo 5 - Alberi

Esercizi Capitolo 5 - Alberi Esercizi Capitolo 5 - Alberi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione.

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione. Grafi ed Alberi Pag. /26 Grafi ed Alberi In questo capitolo richiameremo i principali concetti di due ADT che ricorreranno puntualmente nel corso della nostra trattazione: i grafi e gli alberi. Naturale

Dettagli

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Rappresentazione concreta di insiemi e Hash table

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Rappresentazione concreta di insiemi e Hash table Universita' di Ferrara Dipartimento di Matematica e Informatica Algoritmi e Strutture Dati Rappresentazione concreta di insiemi e Hash table Copyright 2006-2015 by Claudio Salati. Lez. 9a 1 Rappresentazione

Dettagli

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine

Dettagli

Semplici Algoritmi di Ordinamento

Semplici Algoritmi di Ordinamento Fondamenti di Informatica Semplici Algoritmi di Ordinamento Fondamenti di Informatica - D. Talia - UNICAL 1 Ordinamento di una sequenza di elementi Esistono molti algoritmi di ordinamento. Tutti ricevono

Dettagli

Codifica dei numeri negativi

Codifica dei numeri negativi E. Calabrese: Fondamenti di Informatica Rappresentazione numerica-1 Rappresentazione in complemento a 2 Codifica dei numeri negativi Per rappresentare numeri interi negativi si usa la cosiddetta rappresentazione

Dettagli

Alberi binari. Ilaria Castelli castelli@dii.unisi.it A.A. 2009/2010. Università degli Studi di Siena Dipartimento di Ingegneria dell Informazione

Alberi binari. Ilaria Castelli castelli@dii.unisi.it A.A. 2009/2010. Università degli Studi di Siena Dipartimento di Ingegneria dell Informazione Alberi binari Ilaria Castelli castelli@dii.unisi.it Università degli Studi di Siena Dipartimento di Ingegneria dell Informazione A.A. 2009/2010 I. Castelli Alberi binari, A.A. 2009/2010 1/20 Alberi binari

Dettagli

PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI

PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI PROBLEMA DELLA RICERCA in termini generali: Dati in input un insieme S di elementi (numeri, caratteri, stringhe, ) e un elemento

Dettagli

Guida rapida all uso di ECM Titanium

Guida rapida all uso di ECM Titanium Guida rapida all uso di ECM Titanium Introduzione Questa guida contiene una spiegazione semplificata del funzionamento del software per Chiputilizzare al meglio il Tuning ECM Titanium ed include tutte

Dettagli

Verifica che una grammatica sia Context Free nel GrammaReader

Verifica che una grammatica sia Context Free nel GrammaReader Verifica che una grammatica sia Context Free nel GrammaReader Sommario Dispensa di Linguaggi di Programmazione Corrado Mencar Pasquale Lops In questa dispensa si descrivono alcune soluzioni per verificare

Dettagli

Introduzione a MySQL

Introduzione a MySQL Introduzione a MySQL Cinzia Cappiello Alessandro Raffio Politecnico di Milano Prima di iniziare qualche dettaglio su MySQL MySQL è un sistema di gestione di basi di dati relazionali (RDBMS) composto da

Dettagli

Scrivere uno script php che, dato un array associativo PERSONE le cui chiavi sono i

Scrivere uno script php che, dato un array associativo PERSONE le cui chiavi sono i Esercizi PHP 1. Scrivere uno script PHP che produca in output: 1. La tabellina del 5 2. La tavola Pitagorica contenuta in una tabella 3. La tabellina di un numero ricevuto in input tramite un modulo. Lo

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 1.1 Che cos è un algoritmo CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 Gli algoritmi sono metodi per la soluzione di problemi. Possiamo caratterizzare un problema mediante i dati di cui si dispone all inizio

Dettagli

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Lezione 1 Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Definizione di utente e di programmatore L utente è qualsiasi persona che usa il computer anche se non è in grado di programmarlo

Dettagli

Import Dati Release 4.0

Import Dati Release 4.0 Piattaforma Applicativa Gestionale Import Dati Release 4.0 COPYRIGHT 2000-2005 by ZUCCHETTI S.p.A. Tutti i diritti sono riservati.questa pubblicazione contiene informazioni protette da copyright. Nessuna

Dettagli

Architettura dei Calcolatori

Architettura dei Calcolatori Architettura dei Calcolatori Sistema di memoria parte prima Ing. dell Automazione A.A. 2011/12 Gabriele Cecchetti Sistema di memoria parte prima Sommario: Banco di registri Generalità sulla memoria Tecnologie

Dettagli

Inidirizzi IP e Nomi di Dominio. Domain Name System. Spazio dei Nomi Piatto. Gestione dello Spazio dei Nomi

Inidirizzi IP e Nomi di Dominio. Domain Name System. Spazio dei Nomi Piatto. Gestione dello Spazio dei Nomi I semestre 03/04 Inidirizzi IP e Nomi di Dominio Domain Name System Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica

Dettagli

Le variabili. Olga Scotti

Le variabili. Olga Scotti Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.

Dettagli

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni Funzioni Le funzioni Con il termine funzione si intende, in generale, un operatore che, applicato a un insieme di operandi, consente di calcolare un risultato, come avviene anche per una funzione matematica

Dettagli

I.Stat Guida utente Versione 1.7 Dicembre 2010

I.Stat Guida utente Versione 1.7 Dicembre 2010 I.Stat Guida utente Versione 1.7 Dicembre 2010 1 Sommario INTRODUZIONE 3 I concetti principali di I.Stat 4 Organizzazione dei dati 4 Ricerca 5 GUIDA UTENTE 6 Per iniziare 6 Selezione della lingua 7 Individuazione

Dettagli

Semantica operazionale dei linguaggi di Programmazione

Semantica operazionale dei linguaggi di Programmazione Semantica operazionale dei linguaggi di Programmazione Oggetti sintattici e oggetti semantici Rosario Culmone, Luca Tesei Lucidi tratti dalla dispensa Elementi di Semantica Operazionale R. Barbuti, P.

Dettagli

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

Informatica Applicata

Informatica Applicata Ing. Irina Trubitsyna Concetti Introduttivi Programma del corso Obiettivi: Il corso di illustra i principi fondamentali della programmazione con riferimento al linguaggio C. In particolare privilegia gli

Dettagli

RefWorks Guida all utente Versione 4.0

RefWorks Guida all utente Versione 4.0 Accesso a RefWorks per utenti registrati RefWorks Guida all utente Versione 4.0 Dalla pagina web www.refworks.com/refworks Inserire il proprio username (indirizzo e-mail) e password NB: Agli utenti remoti

Dettagli

Un ripasso di aritmetica: Conversione dalla base 10 alla base 16

Un ripasso di aritmetica: Conversione dalla base 10 alla base 16 Un ripasso di aritmetica: Conversione dalla base 1 alla base 16 Dato un numero N rappresentato in base dieci, la sua rappresentazione in base sedici sarà del tipo: c m c m-1... c 1 c (le c i sono cifre

Dettagli

1. Si consideri uno spazio di indirizzamento logico di otto pagine di 1024 parole ognuna, mappate su una memoria fisica di 32 frame.

1. Si consideri uno spazio di indirizzamento logico di otto pagine di 1024 parole ognuna, mappate su una memoria fisica di 32 frame. 1. Si consideri uno spazio di indirizzamento logico di otto pagine di 1024 parole ognuna, mappate su una memoria fisica di 32 frame. (a) Da quanti bit è costituito l indirizzo logico? (b) Da quanti bit

Dettagli

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate.

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate. Comandi filtro: sed Il nome del comando sed sta per Stream EDitor e la sua funzione è quella di permettere di editare il testo passato da un comando ad un altro in una pipeline. Ciò è molto utile perché

Dettagli

INFORMATIVA FINANZIARIA

INFORMATIVA FINANZIARIA Capitolo 10 INFORMATIVA FINANZIARIA In questa sezione sono riportate le quotazioni e le informazioni relative ai titoli inseriti nella SELEZIONE PERSONALE attiva.tramite la funzione RICERCA TITOLI è possibile

Dettagli

Web of Science SM QUICK REFERENCE GUIDE IN COSA CONSISTE WEB OF SCIENCE? General Search

Web of Science SM QUICK REFERENCE GUIDE IN COSA CONSISTE WEB OF SCIENCE? General Search T TMTMTt QUICK REFERENCE GUIDE Web of Science SM IN COSA CONSISTE WEB OF SCIENCE? Consente di effettuare ricerche in oltre 12.000 riviste e 148.000 atti di convegni nel campo delle scienze, delle scienze

Dettagli

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) System Overview di Mattia Bargellini 1 CAPITOLO 1 1.1 Introduzione Il seguente progetto intende estendere

Dettagli

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone SQL: il DDL Parti del linguaggio SQL Definizione di basi di dati (Data Definition Language DDL) Linguaggio per modificare

Dettagli

Gli algoritmi. Gli algoritmi. Analisi e programmazione

Gli algoritmi. Gli algoritmi. Analisi e programmazione Gli algoritmi Analisi e programmazione Gli algoritmi Proprietà ed esempi Costanti e variabili, assegnazione, istruzioni, proposizioni e predicati Vettori e matrici I diagrammi a blocchi Analisi strutturata

Dettagli

Nella prima lezione... Che cos è il Digitale. Prima parte: Che cos è il Digitale. Che cos è il Digitale. Che cos è il Digitale

Nella prima lezione... Che cos è il Digitale. Prima parte: Che cos è il Digitale. Che cos è il Digitale. Che cos è il Digitale !"$#%!" #% Nella prima lezione... Definizione di Informatica Cosa è una soluzione algoritmica Esempi di algoritmi cicalese@dia.unisa.it 2 Prima parte: Società dell informazione Ma cosa vuol dire società

Dettagli

Gestione dei File in C

Gestione dei File in C Gestione dei File in C Maurizio Palesi DIIT Università di Catania Viale Andrea Doria 6, 95125 Catania mpalesi@diit.unict.it http://www.diit.unict.it/users/mpalesi Sommario In questo documento saranno introdotte

Dettagli

I file di dati. Unità didattica D1 1

I file di dati. Unità didattica D1 1 I file di dati Unità didattica D1 1 1) I file sequenziali Utili per la memorizzazione di informazioni testuali Si tratta di strutture organizzate per righe e non per record Non sono adatte per grandi quantità

Dettagli

I FILTRI SED, GREP (e AWK) Tratto da http://www.pluto.it/files/ildp/guide/abs/textproc.html SED

I FILTRI SED, GREP (e AWK) Tratto da http://www.pluto.it/files/ildp/guide/abs/textproc.html SED I FILTRI SED, GREP (e AWK) Tratto da http://www.pluto.it/files/ildp/guide/abs/textproc.html SED SED è un programma in grado di eseguire delle trasformazioni elementari in un flusso di dati di ingresso,

Dettagli

if t>=0 x=1; else x=0; end fornisce, nella variabile x, il valore della funzione gradino a tempi continui, calcolata in t.

if t>=0 x=1; else x=0; end fornisce, nella variabile x, il valore della funzione gradino a tempi continui, calcolata in t. Il programma MATLAB In queste pagine si introduce in maniera molto breve il programma di simulazione MAT- LAB (una abbreviazione di MATrix LABoratory). Introduzione MATLAB è un programma interattivo di

Dettagli

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico 1996-1997

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico 1996-1997 1 RAPPRESENTAZIONE BINARIA DEI NUMERI Andrea Bobbio Anno Accademico 1996-1997 Numeri Binari 2 Sistemi di Numerazione Il valore di un numero può essere espresso con diverse rappresentazioni. non posizionali:

Dettagli

SubnetMask: come funzionano e come si calcolano le sottoreti (SpySystem.it)

SubnetMask: come funzionano e come si calcolano le sottoreti (SpySystem.it) SubnetMask: come funzionano e come si calcolano le sottoreti (SpySystem.it) In una rete TCP/IP, se un computer (A) deve inoltrare una richiesta ad un altro computer (B) attraverso la rete locale, lo dovrà

Dettagli

Così come le macchine meccaniche trasformano

Così come le macchine meccaniche trasformano DENTRO LA SCATOLA Rubrica a cura di Fabio A. Schreiber Il Consiglio Scientifico della rivista ha pensato di attuare un iniziativa culturalmente utile presentando in ogni numero di Mondo Digitale un argomento

Dettagli

Rapida Introduzione all uso del Matlab Ottobre 2002

Rapida Introduzione all uso del Matlab Ottobre 2002 Rapida Introduzione all uso del Matlab Ottobre 2002 Tutti i tipi di dato utilizzati dal Matlab sono in forma di array. I vettori sono array monodimensionali, e così possono essere viste le serie temporali,

Dettagli

Le Stringhe. Un introduzione operativa. Luigi Palopoli

Le Stringhe. Un introduzione operativa. Luigi Palopoli Le Stringhe p.1/19 Le Stringhe Un introduzione operativa Luigi Palopoli ReTiS Lab - Scuola Superiore S. Anna Viale Rinaldo Piaggio 34 Pontedera - Pisa Tel. 050-883444 Email: palopoli@sssup.it URL: http://feanor.sssup.it/

Dettagli

Elementi di semantica denotazionale ed operazionale

Elementi di semantica denotazionale ed operazionale Elementi di semantica denotazionale ed operazionale 1 Contenuti! sintassi astratta e domini sintattici " un frammento di linguaggio imperativo! semantica denotazionale " domini semantici: valori e stato

Dettagli

Esempi di algoritmi. Lezione III

Esempi di algoritmi. Lezione III Esempi di algoritmi Lezione III Scopo della lezione Implementare da zero algoritmi di media complessità. Verificare la correttezza di un algoritmo eseguendolo a mano. Imparare a valutare le prestazioni

Dettagli

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1 DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica

Dettagli

Seconda Prova di Ricerca Operativa. Cognome Nome Numero Matricola A 1/12 A 2/12

Seconda Prova di Ricerca Operativa. Cognome Nome Numero Matricola A 1/12 A 2/12 A / A / Seconda Prova di Ricerca Operativa Cognome Nome Numero Matricola Nota: LA RISOLUZIONE CORRETTA DEGLI ESERCIZI CONTRADDISTINTI DA UN ASTERISCO È CONDIZIONE NECESSARIA PER IL RAGGIUNGIMENTO DELLA

Dettagli

MODBUS-RTU per. Specifiche protocollo di comunicazione MODBUS-RTU per controllo in rete dispositivi serie. Expert NANO 2ZN

MODBUS-RTU per. Specifiche protocollo di comunicazione MODBUS-RTU per controllo in rete dispositivi serie. Expert NANO 2ZN per Expert NANO 2ZN Specifiche protocollo di comunicazione MODBUS-RTU per controllo in rete dispositivi serie Expert NANO 2ZN Nome documento: MODBUS-RTU_NANO_2ZN_01-12_ITA Software installato: NANO_2ZN.hex

Dettagli

1) Le Espressioni regolari

1) Le Espressioni regolari ESPRESSIONI REGOLARI e FILTRI SED, GREP e AWK 1) Le Espressioni regolari Un'espressione regolare è un modello che descrive un insieme di stringhe. Le espressioni regolari sono costruite, in maniera analoga

Dettagli

Text mining ed analisi di dati codificati in linguaggio naturale. Analisi esplorative di dati testualilezione

Text mining ed analisi di dati codificati in linguaggio naturale. Analisi esplorative di dati testualilezione Text mining ed analisi di dati codificati in linguaggio naturale Analisi esplorative di dati testualilezione 2 Le principali tecniche di analisi testuale Facendo riferimento alle tecniche di data mining,

Dettagli

Middleware Laboratory. Dai sistemi concorrenti ai sistemi distribuiti

Middleware Laboratory. Dai sistemi concorrenti ai sistemi distribuiti Dai sistemi concorrenti ai sistemi distribuiti Problemi nei sistemi concorrenti e distribuiti I sistemi concorrenti e distribuiti hanno in comune l ovvio problema di coordinare le varie attività dei differenti

Dettagli

Lezione n.19 Processori RISC e CISC

Lezione n.19 Processori RISC e CISC Lezione n.19 Processori RISC e CISC 1 Processori RISC e Superscalari Motivazioni che hanno portato alla realizzazione di queste architetture Sommario: Confronto tra le architetture CISC e RISC Prestazioni

Dettagli

l Editor vi vi (visual editor) è stato scritto per essere utilizzabile con qualsiasi tipo di terminale.

l Editor vi vi (visual editor) è stato scritto per essere utilizzabile con qualsiasi tipo di terminale. l Editor vi Negli ambienti Unix esistono molti editor di testo diversi; tuttavia vi è l unico che siamo sicuri di trovare in qualsiasi variante di Unix. vi (visual editor) è stato scritto per essere utilizzabile

Dettagli

Inizializzazione degli Host. BOOTP e DHCP

Inizializzazione degli Host. BOOTP e DHCP BOOTP e DHCP a.a. 2002/03 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Università degli studi di Salerno Laurea e Diploma in Informatica 1 Inizializzazione degli Host Un

Dettagli

2. GESTIONE DOCUMENTI NON SBN

2. GESTIONE DOCUMENTI NON SBN Istituto centrale per il catalogo unico delle biblioteche italiane e per le informazioni bibliografiche APPLICATIVO SBN-UNIX IN ARCHITETTURA CLIENT/SERVER 2. GESTIONE DOCUMENTI NON SBN Manuale d uso (Versione

Dettagli

Cos è una stringa (1) Stringhe. Leggere e scrivere stringhe (1) Cos è una stringa (2) DD Cap. 8 pp. 305-341 KP Cap. 6 pp. 241-247

Cos è una stringa (1) Stringhe. Leggere e scrivere stringhe (1) Cos è una stringa (2) DD Cap. 8 pp. 305-341 KP Cap. 6 pp. 241-247 Cos è una stringa (1) Stringhe DD Cap. 8 pp. 305-341 KP Cap. 6 pp. 241-247 Una stringa è una serie di caratteri trattati come una singola unità. Essa potrà includere lettere, cifre, simboli e caratteri

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri Rappresentazione dei numeri nei calcolatori rappresentazioni finalizzate ad algoritmi efficienti per le operazioni

Dettagli

SIMATIC. SCL per S7-300/400 Programmazione di blocchi. Prefazione, Contenuto. Parte 1: Sviluppo di programmi. Parte 2: Uso e test

SIMATIC. SCL per S7-300/400 Programmazione di blocchi. Prefazione, Contenuto. Parte 1: Sviluppo di programmi. Parte 2: Uso e test Prefazione, Contenuto Parte 1: Sviluppo di programmi Parte 2: Uso e test SIMATIC Parte 3: Descrizione del linguaggio Programmazione di blocchi Appendici Glossario, Indice analitico Manuale Numero di ordinazione

Dettagli

FUNZIONI AVANZATE DI EXCEL

FUNZIONI AVANZATE DI EXCEL FUNZIONI AVANZATE DI EXCEL Inserire una funzione dalla barra dei menu Clicca sulla scheda "Formule" e clicca su "Fx" (Inserisci Funzione). Dalla finestra di dialogo "Inserisci Funzione" clicca sulla categoria

Dettagli

Marco Giorgi. Palazzo di Giustizia di Torino 30 marzo 2012

Marco Giorgi. Palazzo di Giustizia di Torino 30 marzo 2012 Marco Giorgi Palazzo di Giustizia di Torino 30 marzo 2012 Post mortem (Dopo lo spegnimento del sistema) Si smonta il dispositivo e lo si collega ad un PC dedicato all'acquisizione Live forensics (Direttamente

Dettagli

Le funzioni in C. I programmi C sono costituiti da definizioni di variabili e funzioni.

Le funzioni in C. I programmi C sono costituiti da definizioni di variabili e funzioni. Le funzioni in C I programmi C sono costituiti da definizioni di variabili e funzioni. Una definizione di funzione ha il seguente formato: tipo-ritornato nome-funzione(lista-parametri) { dichiarazioni

Dettagli

Ricerca Operativa Branch-and-Bound per problemi di Programmazione Lineare Intera

Ricerca Operativa Branch-and-Bound per problemi di Programmazione Lineare Intera Ricerca Operativa Branch-and-Bound per problemi di Programmazione Lineare Intera L. De Giovanni AVVERTENZA: le note presentate di seguito non hanno alcuna pretesa di completezza, né hanno lo scopo di sostituirsi

Dettagli

Esercitazione 7. Procedure e Funzioni

Esercitazione 7. Procedure e Funzioni Esercitazione 7 Procedure e Funzioni Esercizio Scrivere un programma che memorizza in un array di elementi di tipo double le temperature relative al mese corrente e ne determina la temperatura massima,

Dettagli

Altri cifrari a blocchi

Altri cifrari a blocchi Altri cifrari a blocchi Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci RC2 [1989] IDEA (International

Dettagli

Editor vi. Editor vi

Editor vi. Editor vi Editor vi vi 1 Editor vi Il vi è l editor di testo standard per UNIX, è presente in tutte le versioni base e funziona con qualsiasi terminale a caratteri Permette di visualizzare una schermata alla volta

Dettagli

Minimo sottografo ricoprente. Minimo sottografo ricoprente. Minimo albero ricoprente. Minimo albero ricoprente

Minimo sottografo ricoprente. Minimo sottografo ricoprente. Minimo albero ricoprente. Minimo albero ricoprente Minimo sottografo ricoprente Minimo sottografo ricoprente Dato un grafo connesso G = (V, E) con costi positivi sugli archi c e, un minimo sottografo ricoprente è un insieme di archi E E tale che: G = (V,

Dettagli

Introduzione al linguaggio C Gli array

Introduzione al linguaggio C Gli array Introduzione al linguaggio C Gli array Vettori nome del vettore (tutti gli elementi hanno lo stesso nome, c) Vettore (Array) Gruppo di posizioni (o locazioni di memoria) consecutive Hanno lo stesso nome

Dettagli

Guida all utilizzo del dispositivo USB

Guida all utilizzo del dispositivo USB Guida all utilizzo del dispositivo USB 30/04/2013 Sommario - Limitazioni di responsabilità e uso del manuale... 3 1. Glossario... 3 2. Guida all utilizzo del dispositivo USB... 4 2.1 Funzionamento del

Dettagli

Rappresentazione dei numeri in un calcolatore

Rappresentazione dei numeri in un calcolatore Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri in un calcolatore Lezione 2 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione dei numeri

Dettagli

Ambienti di sviluppo integrato

Ambienti di sviluppo integrato Ambienti di sviluppo integrato Un ambiente di sviluppo integrato (IDE - Integrated Development Environment) è un ambiente software che assiste i programmatori nello sviluppo di programmi Esso è normalmente

Dettagli

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1)

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1) Strutture Strutture e Unioni DD cap.10 pp.379-391, 405-406 KP cap. 9 pp.361-379 Strutture Collezioni di variabili correlate (aggregati) sotto un unico nome Possono contenere variabili con diversi nomi

Dettagli

Routing (instradamento) in Internet. Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi:

Routing (instradamento) in Internet. Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi: Routing (instradamento) in Internet Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi: Stub AS: istituzione piccola Multihomed AS: grande istituzione (nessun ( transito Transit AS: provider

Dettagli

Architetture CISC e RISC

Architetture CISC e RISC FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Architetture CISC e RISC 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n.

Dettagli

ALGORITMI 1 a Parte. di Ippolito Perlasca. Algoritmo:

ALGORITMI 1 a Parte. di Ippolito Perlasca. Algoritmo: ALGORITMI 1 a Parte di Ippolito Perlasca Algoritmo: Insieme di regole che forniscono una sequenza di operazioni atte a risolvere un particolare problema (De Mauro) Procedimento che consente di ottenere

Dettagli

IL SAMPLE AND HOLD UNIVERSITÀ DEGLI STUDI DI MILANO. Progetto di Fondamenti di Automatica. PROF.: M. Lazzaroni

IL SAMPLE AND HOLD UNIVERSITÀ DEGLI STUDI DI MILANO. Progetto di Fondamenti di Automatica. PROF.: M. Lazzaroni UNIVERSITÀ DEGLI STUDI DI MILANO FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI Corso di Laurea in Informatica IL SAMPLE AND HOLD Progetto di Fondamenti di Automatica PROF.: M. Lazzaroni Anno Accademico

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

Il Sistema Operativo: il File System

Il Sistema Operativo: il File System Il Sistema Operativo: il File System Il File System è quella parte del S.O. che si occupa di gestire e strutturare le informazioni memorizzate su supporti permanenti (memoria secondaria) I file vengono

Dettagli

Gest ione di list e in C

Gest ione di list e in C Gest ione di list e in C Politecnico di Milano Sede di Cremona Gianpaolo Cugola Dipartimento di Elettronica e Informazione cugola@elet.polimi.it http://www.elet.polimi.it/~cugola Strutture dinamiche Gli

Dettagli

Cos è Excel. Uno spreadsheet : un foglio elettronico. è una lavagna di lavoro, suddivisa in celle, cosciente del contenuto delle celle stesse

Cos è Excel. Uno spreadsheet : un foglio elettronico. è una lavagna di lavoro, suddivisa in celle, cosciente del contenuto delle celle stesse Cos è Excel Uno spreadsheet : un foglio elettronico è una lavagna di lavoro, suddivisa in celle, cosciente del contenuto delle celle stesse I dati contenuti nelle celle possono essere elaborati ponendo

Dettagli

Dati importati/esportati

Dati importati/esportati Dati importati/esportati Dati importati Al workspace MATLAB script Dati esportati file 1 File di testo (.txt) Spreadsheet Database Altro Elaborazione dati Grafici File di testo Relazioni Codice Database

Dettagli

Minimizzazione di Reti Logiche Combinatorie Multi-livello

Minimizzazione di Reti Logiche Combinatorie Multi-livello Minimizzazione di Reti Logiche Combinatorie Multi-livello Maurizio Palesi Maurizio Palesi 1 Introduzione Obiettivo della sintesi logica: ottimizzazione delle cifre di merito area e prestazioni Prestazioni:

Dettagli

Il problema del massimo flusso. Preflow-push e augmenting path: un approccio unificante

Il problema del massimo flusso. Preflow-push e augmenting path: un approccio unificante Introduzione Il problema del massimo flusso. Preflow-push e augmenting path: un approccio unificante Il problema del massimo flusso è uno dei fondamentali problemi nell ottimizzazione su rete. Esso è presente

Dettagli

Flops. Ad esempio nel caso del prodotto classico tra matrici, vengono eseguite 2*N 3 operazioni, quindi ad esempio:

Flops. Ad esempio nel caso del prodotto classico tra matrici, vengono eseguite 2*N 3 operazioni, quindi ad esempio: Flops FLOPS e' un'abbreviazione di Floating Point Operations Per Second e indica il numero di operazioni in virgola mobile eseguite in un secondo dalla CPU. (Top500 e il BlueGene) Ad esempio nel caso del

Dettagli

Test di comunicazione tra due LOGO! 0BA7: Master - Master

Test di comunicazione tra due LOGO! 0BA7: Master - Master Industry Test di comunicazione tra due LOGO! 0BA7: Master - Master Dispositivi utilizzati: - 2 LOGO! 0BA7 (6ED1 052-1MD00-0AB7) - Scalance X-208 LOGO! 0BA7 Client IP: 192.168.0.1 LOGO! 0BA7 Server IP:

Dettagli

Da una a più variabili: derivate

Da una a più variabili: derivate Da una a più variabili: derivate ( ) 5 gennaio 2011 Scopo di questo articolo è di evidenziare le analogie e le differenze, relativamente al calcolo differenziale, fra le funzioni di una variabile reale

Dettagli

Prof. Caterina Rizzi Dipartimento di Ingegneria Industriale

Prof. Caterina Rizzi Dipartimento di Ingegneria Industriale RUOLO DELLA MODELLAZIONE GEOMETRICA E LIVELLI DI MODELLAZIONE PARTE 2 Prof. Caterina Rizzi... IN QUESTA LEZIONE Modelli 2D/3D Modelli 3D/3D Dimensione delle primitive di modellazione Dimensione dell oggettoy

Dettagli

Data warehouse.stat Guida utente

Data warehouse.stat Guida utente Data warehouse.stat Guida utente Versione 3.0 Giugno 2013 1 Sommario INTRODUZIONE 3 I concetti principali 4 Organizzazione dei dati 4 Ricerca 5 Il browser 5 GUIDA UTENTE 6 Per iniziare 6 Selezione della

Dettagli

PRESENTAZIONE DI UN SMS AL GATEWAY

PRESENTAZIONE DI UN SMS AL GATEWAY Interfaccia Full Ascii Con questa interfaccia è possibile inviare i dati al Server utilizzando solo caratteri Ascii rappresentabili e solo i valori che cambiano tra un sms e l altro, mantenendo la connessione

Dettagli

Lezione 9: Strutture e allocazione dinamica della memoria

Lezione 9: Strutture e allocazione dinamica della memoria Lezione 9: Strutture e allocazione dinamica della memoria Laboratorio di Elementi di Architettura e Sistemi Operativi 9 Maggio 2012 Allocazione dinamica della memoria Memoria dinamica È possibile creare

Dettagli

Flusso a costo minimo e simplesso su reti

Flusso a costo minimo e simplesso su reti Flusso a costo minimo e simplesso su reti La particolare struttura di alcuni problemi di PL può essere talvolta utilizzata per la progettazione di tecniche risolutive molto più efficienti dell algoritmo

Dettagli

Data Alignment and (Geo)Referencing (sometimes Registration process)

Data Alignment and (Geo)Referencing (sometimes Registration process) Data Alignment and (Geo)Referencing (sometimes Registration process) All data aquired from a scan position are refered to an intrinsic reference system (even if more than one scan has been performed) Data

Dettagli

Accuratezza di uno strumento

Accuratezza di uno strumento Accuratezza di uno strumento Come abbiamo già accennato la volta scora, il risultato della misurazione di una grandezza fisica, qualsiasi sia lo strumento utilizzato, non è mai un valore numerico X univocamente

Dettagli

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof.

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof. Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record

Dettagli