Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Elementi di Informatica, Appunti di Elementi di Informatica

Appunti teoria corso elementi di informatica

Tipologia: Appunti

2023/2024

Caricato il 03/11/2025

leonardo-barelli
leonardo-barelli 🇮🇹

3 documenti

1 / 73

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
INTRODUZIONE
Sistemi di elaborazione di dati
Computer, calcolatore, sistema di elaborazione, dispositivo elettronico, elaboratore
elettronico, macchina da calcolo, cervello elettronico, ordinatore, Device.
In certi contesti sono considerati sinonimi perché si riferiscono a dispositivi elettronici
che condividono alcune funzioni fondamentali:
- L'elaborazione di dati
- L'esecuzione di operazioni informatiche
Nel linguaggio comune, questi termini vengono usati talvolta come sinonimi quando il
contesto non richiede una distinzione specifica ma differiscono nei dettagli tecnici e
negli usi.
L’etimologia della parola Computer deriva dal latino
- cum «insieme»
- putare «tagliare, rendere netto» da cui potare in italiano
Significa: «confrontare», «contare»
Funzione comune: Elaborazione di dati
Tutti questi dispositivi, pur avendo forme e usi diversi, sono progettati per:
Elaborare informazioni: ricevono input, li elaborano secondo specifiche istruzioni
(software) e forniscono output.
Eseguire programmi: sia un computer, un telefono cellulare o un tablet funzionano
grazie a un sistema operativo e alle applicazioni o programmi eseguono compiti
specifici.
Questi dispositivi condividono componenti tecnologici di base:
- Processore (CPU): È il "cervello" che esegue i calcoli e le operazioni.
- Memoria: RAM e archiviazione per i dati temporanei e permanenti.
- Input/Output: Tastiera, touchscreen, microfono o altri strumenti per interagire con
l'utente.
Definizione di Convergenza
- Integrazione: la convergenza unisce diverse tecnologie ed approcci
- Innovazione: crea soluzioni nuove e più potenti
- Versatilità: combina dispositivi, metodi di programmazione e comunicazione.
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49

Anteprima parziale del testo

Scarica Elementi di Informatica e più Appunti in PDF di Elementi di Informatica solo su Docsity!

INTRODUZIONE

Sistemi di elaborazione di dati Computer, calcolatore, sistema di elaborazione, dispositivo elettronico, elaboratore elettronico, macchina da calcolo, cervello elettronico, ordinatore, Device. In certi contesti sono considerati sinonimi perché si riferiscono a dispositivi elettronici che condividono alcune funzioni fondamentali:

  • L'elaborazione di dati
  • L'esecuzione di operazioni informatiche Nel linguaggio comune, questi termini vengono usati talvolta come sinonimi quando il contesto non richiede una distinzione specifica ma differiscono nei dettagli tecnici e negli usi. L’etimologia della parola Computer deriva dal latino
  • cum «insieme»
  • putare «tagliare, rendere netto» da cui potare in italiano Significa: «confrontare», «contare» Funzione comune: Elaborazione di dati Tutti questi dispositivi, pur avendo forme e usi diversi, sono progettati per: Elaborare informazioni: ricevono input, li elaborano secondo specifiche istruzioni (software) e forniscono output. Eseguire programmi: sia un computer, un telefono cellulare o un tablet funzionano grazie a un sistema operativo e alle applicazioni o programmi eseguono compiti specifici. Questi dispositivi condividono componenti tecnologici di base:
  • Processore (CPU): È il "cervello" che esegue i calcoli e le operazioni.
  • Memoria: RAM e archiviazione per i dati temporanei e permanenti.
  • Input/Output: Tastiera, touchscreen, microfono o altri strumenti per interagire con l'utente. Definizione di Convergenza
  • Integrazione: la convergenza unisce diverse tecnologie ed approcci
  • Innovazione: crea soluzioni nuove e più potenti
  • Versatilità: combina dispositivi, metodi di programmazione e comunicazione.

Definizione dell’Association for Computing Machinery (ACM): “L’informatica è lo studio sistematico degli algoritmi che descrivono e trasformano l’informazione: la loro teoria, analisi, progetto, efficienza, realizzazioni e applicazioni In inglese: COMPUTER SCIENCE ICT (Information and Communication Technologies) Tecnologie riguardanti i sistemi integrati di telecomunicazione (linee di comunicazione cablate e senza fili), i computer, le tecnologie audio-video e relativi software, che permettono agli utenti di creare, immagazzinare e scambiare informazioni. L’era dell’informazione Viviamo nell’era dell’informazione. Negli ultimi decenni la quantità e la varietà di informazioni disponibili sono enormemente aumentate rispetto al passato. Spesso si è portati a credere che la centralità dell’informazione sia un fenomeno solo tecnologico, tipico degli ultimi decenni, ma non è così. Per rendersene conto bisogna adottare una visione più generale e collocarsi in un quadro storico più ampio, non limitandosi a prendere in considerazione avvenimenti che risalgono solo a qualche decennio fa. Informazione L’informazione è un argomento che da sempre ha suscitato l’interesse di persone appartenenti ai campi più disparati: filosofi, artisti, umanisti. La scienza, dedicandosi prevalentemente allo studio di materia ed energia, ha trascurato per secoli il concetto di informazione ma, a partire all’incirca dalla metà del XX secolo, l’attenzione del mondo scientifico su questo argomento è aumentata notevolmente Informatica appartiene ad una grande famiglia di parole che derivano dal verbo latino informare, che significa dare forma, modellare. Non bisogna tuttavia confondere l'informatica con la tecnologia di costruzione dei computers. Infatti, l'informatica è una scienza che usa concetti della ricerca matematica e della logica per elaborare dati Hardware e software Il computer, infatti, è una macchina costituita da due tipi di componenti:

  • quelli fisici, hardware
  • quelli logici, software L'hardware è l'insieme dei componenti meccanici, elettrici, magnetici, elettronici che costituiscono il calcolatore, come la tastiera, il disco rigido o hard disk, la stampante Il software è un insieme di istruzioni che consentono l'elaborazione dei dati all'interno di un sistema.

Esistono due tipi di software: quello applicativo, che chiamiamo comunemente 'programma‘ o ‘app’ E quello residente che è sempre nella memoria del calcolatore e permette di trasferire le istruzioni del software applicativo all'hardware.

INFORMATICA

L’informatica è la scienza che si occupa di:

  • trattare informazioni
  • creare informazioni
  • conservare informazioni
  • modificare informazioni
  • comunicare informazioni
  • elaborare informazioni L’informazione è sempre esistita, comunicare informazioni è un bisogno, una necessità. L’informazione è passato dall’essere un fenomeno individuale al diventare un fenomeno sociale. Qualche millennio fa si utilizzavano i graffiti e la scrittura come strumenti. Qualche secolo fa venne inventata la stampa a caratteri mobili Qualche decennio fa entrarono in gioco il sistema telefonico, la radio e la televisione, il fax, i computer, i satelliti per telecomunicazioni, il telefono cellulare, Internet Ad oggi queste tecnologie stanno rapidamente convergendo In particolare, la combinazione di elaboratori e sistemi di telecomunicazione ha avuto una profonda influenza sull'organizzazione dei sistemi di informazione. La rete cablata è quella consente di collegare diversi dispositivi mediante dei cavi (cables). Questo tipo di reti tendono ad interrompersi con meno frequenza e non sono influenzate di fattori ambientali come i muri e le porte di casa Le comunicazioni wireless In informatica e telecomunicazioni, wireless o senza fili indica una comunicazione tra dispositivi elettronici che non fa uso di cavi. Una connessione wireless sfrutta le onde radio per collegare dei dispositivi elettronici a internet, alla rete aziendale o alle sue applicazioni. Le comunicazioni wireless puntano a conquistare la multimedialità. I telefoni cellulari sono già i terminali più diffusi e hanno il primato nella ricezione di informazioni e per l’intrattenimento, grazie agli standard emergenti per la trasmissione a maggior velocità. Non esiste campo dell'attività umana in cui l'applicazione delle scoperte dell'informatica non abbia prodotto cambiamenti e nuove abitudini. Infatti, l'uso del

La telefonia tradizionale è analogica perché il segnale elettrico che viene trasmesso sul filo riproduce con continuità la forma dell'onda di pressione che l'apparato vocale di chi parla - polmoni, corde vocali, cavo orale e nasale, lingua, labbra - produce nell'aria. Il concetto di “digitale” viene da DIGIT = cifra, che trasforma l'informazione originale in cifre. Una grandezza viene detta digitale (o discreta) quando due suoi valori consecutivi sono separati da un intervallo che non contiene altri valori validi. Dal latino “digitus” che significa dito. Nel significato tecnologico, è transitato attraverso l’inglese digit cifra numerica. Il concetto di analogico è generalmente contrapposto a quello di digitale o numerico caratterizzato dalla trasmissione di soli numeri che rappresentano generalmente i valori dei segnali a intervalli regolari di tempo. Un orologio a lancette può essere considerato analogico, perché le lancette si spostano con continuità, mentre un orologio a indicazione numerica dell'ora è evidentemente uno strumento digitale. CAMPIONAMENTO La grandezza varia nel tempo e non può essere rappresentata da un solo valore. I valori di riferimento debbono essere rilevati in diversi istanti di tempo (frequenza di campionamento). La quantizzazione deve poi essere ripetuta per ogni valore campionato.  Suono digitale Formato standard per i CD audio: frequenza di campionamento di 44.100 Hz, quantizzazione su 65.536 livelli (un campione viene codificato su 16 bit) Un secondo di musica stereo richiede 44.100 campioni di 16 bit (2 byte) ciascuno per due canali, quindi 176.400 byte. L'errore che si commette nella ricostruzione del segnale sonoro è difficilmente rilevabile da parte di un orecchio umano.  Immagini digitali Per la codifica digitale delle immagini le operazioni di campionamento e quantizzazione si applicano nello spazio invece che nel tempo. Il campionamento consiste nel dividere l'immagine in sottoinsiemi (pixel, cioè picture element), per ognuno dei quali si dovrà prelevare un campione che si considera rappresentativo del colore di tutto il sottoinsieme.

Memoria necessaria per immagini non compresse (bitmap)

  • per un'immagine di 640×480 pixel servono 1.228.800 bytes;
  • per un'immagine di 800×600 pixel servono 1.920.000 bytes;
  • per un'immagine di 1024×768 pixel servono 3.145.728 bytes;
  • per un'immagine di 1280×1024 pixel servono 5.242.880 bytes;
  • per un'immagine di 1600×1200 pixel servono 7.680.000 bytes;  Foto digitali La quantizzazione è la codifica del colore associato a ogni pixel: i formati standard utilizzano 32 bit (4 byte) per pixel: 8 bit per ognuna delle tre componenti fondamentali (RGB: red, green, blue) e altri 8 per gestire le trasparenze. DTT: Digital Terrestrial Television E’ una tecnologia che, grazie ad un decoder, dispositivo elettronico in grado di ricevere il segnale digitale proveniente dall'antenna, ci permette di vedere un maggior numero di canali con la stessa quantità di frequenze. ALGORITMI DI COMPRESSIONE DATI Gli algoritmi di compressione dei dati possono essere distinti in due categorie fondamentali
  • compressione lossless, se non provoca la perdita di informazione
  • compressione lossy, se provoca la perdita di informazioni (gli algoritmi di compressione lossy sono specifici per i diversi domini applicativi) La tecnologia digitale consente una qualità più elevata di quella analogica, per cui in prospettiva le poche tecnologie analogiche oggi ancora presenti verranno progressivamente sostituite dalle corrispondenti tecnologie digitali.

INFORMAZIONE

Il concetto di informazione si riferisce a qualsiasi dato o messaggio che riduce l'incertezza o fornisce conoscenza su un determinato argomento. Può essere trasmesso, ricevuto, elaborato e interpretato. In termini semplici, l'informazione è ciò che permette di prendere decisioni più consapevoli. Ad esempio, sapere che domani pioverà è un'informazione utile per decidere di portare un ombrello. I dati in un archivio sono informazioni, così anche la configurazione degli atomi di un gas può venire considerata informazione. L’informazione può essere quindi misurata come le altre entità fisiche ed è sempre esistita, anche se la sua importanza è stata riconosciuta solo nel secolo scorso.

Tipo Carta da gioco = {Picche, Quadri, Cuori, Fiori} Tipo Giorno Settimana = {lu, ma, me, gio, ve, sa, do} Tipo intero = {j/ j numero intero, -k< j< k} Nell'universo esistono infiniti TIPI. Un ambiente di elaborazione è caratterizzato da un numero finito e definito di TIPI. Un TIPO si caratterizza per le operazioni che possono essere fatte sulle informazioni che ne fanno parte. Sistemi di numerazione Un sistema di numerazione è una struttura matematica (codice) che permette di rappresentare i numeri attraverso dei simboli e delle regole. I sistemi di numerazione ci permettono di contare, misurare e rappresentare quantità. Sistemi additivi Ogni simbolo rappresenta un valore specifico, e i numeri sono formati sommando i valori dei simboli.

Limitazioni: i sistemi additivi possono diventare complessi per numeri grandi,

richiedendo molti simboli. Esempi di Sistemi Additivi nella Storia Romano Egizio Cinese I = 1, V = 5, X = 10, L = 50, C = Simboli per 1, 10, 100, 1000, Simboli per 1, 10, 100, 1000, 100, D = 500, M = 1000 10.000, 100.000 e 1.000.000. e multipli di 10.000. Sistemi posizionali : concetto e meccanismo

Valore Posizionale: ogni cifra ha un valore che dipende dalla sua posizione nel numero

Base del sistema: il sistema è basato su una base, che determina il numero di cifre

utilizzate

Potenze della base: ogni cifra rappresenta una potenza della base, moltiplicata per il

suo valore Confronto tra Sistemi Additivi e Posizionali

Additivi: simboli rappresentano valori fissi, i numeri sono sommati.

Posizionali: valori delle cifre variano in base alla posizione, base del sistema determina

il numero di cifre.

Importanza dei sistemi posizionali nel mondo matematico

  • Efficienza
  • Rappresentazione concisa dei numeri grandi
  • Calcolo semplificato
  • Operazioni aritmetiche più facili da eseguire.
  • Sviluppo Matematico
  • Fondamento per l'algebra, la geometria e altre branche della matematica L'evoluzione dei sistemi di numerazione ha portato a un progresso significativo nella matematica e nella tecnologia. La comprensione dei sistemi additivi e posizionali è fondamentale per comprendere il mondo dei numeri e il suo impatto sulla nostra vita. Molte informazioni sono quantitative, quindi esprimibili in forma numerica I sistemi di numerazione additivi: un simbolo rappresenta un numero Esempio (numeri romani)
  • M rappresenta il numero 1000
  • D rappresenta il numero 500
  • C rappresenta il numero 100
  • L rappresenta il numero 50
  • X rappresenta il numero 10
  • V rappresenta il numero 5
  • I rappresenta il numero 1

Limitazioni dei sistemi additivi

  • Scalabilità: La rappresentazione di numeri molto grandi diventa ingombrante e poco pratica.
  • Operazioni aritmetiche complesse: Eseguire operazioni come addizione, sottrazione, moltiplicazione e divisione è più complicato rispetto ai sistemi posizionali. A causa di queste limitazioni, i sistemi di numerazione additivi sono stati in gran parte sostituiti dai sistemi posizionali, che offrono una rappresentazione più efficiente e facilitano le operazioni aritmetiche.

Il computer deve codificare l'informazione in un sistema semplificato. Il sistema binario è la forma più efficace per elaborare l'informazione. numero decimale 123 rappresentato in binario come 1 1 1 1 0 1 1 Il sistema ottale Il sistema numerico ottale è un sistema numerico posizionale in base 8, cioè che utilizza solo 8 simboli invece dei 10 del sistema numerico decimale usato comunemente. Per la composizione di un numero il sistema ottale utilizza le cifre 0, 1, 2, 3, 4, 5, 6, 7. Il sistema esadecimale Il sistema numerico esadecimale è un sistema numerico posizionale in base 16, cioè che utilizza 16 simboli invece dei 10 del sistema numerico decimale tradizionale. Per la composizione di un numero il sistema esadecimale utilizza le cifre 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F Conversione da binario a decimale Basta scrivere il numero secondo la notazione posizionale utilizzando già il sistema decimale Conversione da decimale a binario Si calcolano i resti delle divisioni per due A causa del minor numero di simboli (2) del sistema binario rispetto a quello decimale (10), un numero codificato in notazione binaria richiede più cifre (simboli) rispetto a quelle impiegate in notazione decimale. Algebra booleana L'algebra booleana venne ideata dal matematico inglese George Boole nel XIX secolo. L'algebra booleana è un sistema di logica matematica a due stati, dove le variabili (dette variabili booleane) possono assumere solo due stati: vero (1) o falso (0) Le operazioni booleane :

  • somma logica di due valori booleani è 1 se almeno uno dei due fattori è uguale a 1
  • prodotto logico di due valori booleani è 1 solo se entrambi gli addendi sono uguali a 1
  • complemento logico è l'operazione di negazione del valore booleano. (E' indicato con un trattino sopra la variabile)  x = 0, x = 1 Porte logiche :

Numeri binari (operazioni)

  • operazioni di somma di numeri binari naturali. Con gli 8 bit utilizzati negli esempi qui riportati si possono rappresentare i numeri naturali fino a 255(10).
  • operazioni che producono un risultato maggiore provocano il superamento della capacità di rappresentazione (indicato in gergo dal termine inglese overflow) 0 0 0 1 1 0 0 1due + 2 5dieci + 0 0 1 0 1 1 0 0due + 4 4dieci + 0 0 1 1 1 1 0 0due = 6 0dieci = 0 1 0 0 1 1 1 0due = 7 8dieci = 0 1 0 1 0 1 0 1due 8 5dieci 0 1 1 1 1 0 1 0due 1 2 2dieci Per la codifica dei numeri naturali (interi positivi) si utilizzano abitualmente successioni di 32 bit (4 bytes) con cui si possono rappresentare i numeri compresi tra 0 e 232– 1 = 4.294.967.295. Aumentando la lunghezza delle successioni il massimo numero rappresentabile cresce esponenzialmente: passando da 32 a 64 bit il massimo numero rappresentabile diventa 264– 1 Codifica Binaria Quanti oggetti posso codificare con k bit:
  • 1 bit ⇒ 2 stati (0, 1) ⇒ 2 oggetti (e.g. Vero/Falso)
  • 2 bit ⇒ 4 stati (00, 01, 10, 11) ⇒ 4 oggetti
  • 3 bit ⇒ 8 stati (000, 001, …, 111) ⇒ 8 oggetti
  • k bit ⇒ 2^k stati ⇒ 2^k oggetti Quanti bit mi servono per codificare N oggetti: N ≤ 2^k ⇒ k ≥ log2N ⇒ k = (log2N) (intero superiore) Attenzione: ipotesi implicita che i codici abbiano tutti la stessa lunghezza Byte

E’ una codifica dei caratteri Unicode in sequenze di lunghezza variabile di byte. UTF-8 usa da 1 a 4 byte per rappresentare un carattere Unicode. Con la diffusione su scala planetaria dei computer, si è imposta la necessità di memorizzare ulteriori tipologie di simboli e caratteri: quelli cinesi, giapponesi, arabi… e la necessità di nuove codifiche che potessero memorizzare più caratteri. Nell’Unicode sono supportati tutti i caratteri delle lingue esistenti, ma anche di lingue morte (utili a linguisti) come ad esempio: l’Etrusco e il Fenicio. La più completa è la codifica UNICODE in cui vengono usati 32 bit per memorizzare ogni carattere, quindi si possono memorizzare più di 4 miliardi di caratteri diversi, per la precisione esattamente 4.294.967.296 caratteri. Per avere una informazione serve una terna di «oggetti» {TIPO, ATTRIBUTO, VALORE} TIPO E’ l’insieme nel quale si effettua la scelta dell'informazione. Essendo un insieme lo possiamo definire per enumerazione o attraverso le proprietà caratteristiche dei suoi elementi. Tipo Colore Semaforo = { rosso, giallo, verde } Tipo Colore Carta = { Picche, Quadri, Cuori, Fiori } Tipo Giorno Settimana = { lu, ma, me, gio, ve, sa, do } Tipo intero = { j/ j numero intero, -k< j< k } Un tipo si dice ordinato se fra gli elementi che lo compongono esiste una relazione d’ordine tipo lettera = { a< b< c<.........< z } tipo cifra = { 0< 1< 2<.........< 9 } VALORE è lo specifico elemento scelto dall'insieme Tipo ATTRIBUTO (o variabile o categoria) è un nome mnemonico abbreviato del Tipo. Definisce il significato dell'informazione. E’ definito da una frase. L’attributo spesso assume anche il ruolo di "contenitore del valore corrente" dell’informazione. In matematica il nome che rappresenta una informazione diventa una variabile a cui si assegna un valore che può essere modificato.

Esempio:

“Colore del semaforo” Un tipo è anche caratterizzato dalle operazioni che si possono fare sui valori che lo compongono:

  • operazioni interne
  • operazioni esterne Una operazione di confronto fra i valori di due informazioni numeriche dello stesso tipo è esterna al tipo. Una operazione di moltiplicazione è invece interna al tipo. Il tipo di una informazione è definito dall’ambiente di lavoro ed elaborazione in cui vive. In informatica (ad esempio nella memoria centrale di un elaboratore) l'attributo di una informazione coincide esattamente col contenitore del suo valore (registri di memoria) I registri Come tutti i contenitori, anche i registri hanno una capacità, naturalmente in bit. Poiché è impossibile costruire contenitori infiniti, si capisce perché i TIPI delle informazioni debbano avere cardinalità finita. La memoria centrale di un elaboratore ha un numero finito di registri a capacità finita. Esempio 256KB Sistema di rappresentazione In generale, una rappresentazione (codice) non basta, ma occorre un SISTEMA DI RAPPRESENTAZIONE per realizzare tutte le operazioni caratteristiche del tipo.

Int Numeri interi

Float Numeri in virgola mobile (Floating Point)

Char Caratteri alfanumerici

Boolean Dati logici dell'algebra di Boole

Una variabile dichiarata di un tipo predefinito è un contenitore per quel singolo valore. Per definire situazioni più complesse i linguaggi di programmazione mettono a disposizione la possibilità di definire delle variabili strutturate che consentono di riferirsi a più variabili reciprocamente correlate come se fossero una unica variabile. Esempi di variabili strutturate: i vettori (array); le matrici (array multidimensionali) Strutture di dati complesse: le strutture (structure), gli archivi (file) Una informazione si dice strutturata se è decomponibile in altre informazioni. La comunicazione

Si parla di comunicazione unidirezionale quando la comunicazione avviene in una sola direzione (per esempio la pubblicità dei mass media). Comunicazione bidirezionale Si parla di comunicazione bidirezionale quando sia il destinatario del messaggio sia il mittente cambiano ruolo per creare una conversazione bidirezionale. La comunicazione sincrona e asincrona La differenza principale tra la comunicazione sincrona e asincrona in informatica è che la prima avviene in tempo reale, mentre la seconda no Nella comunicazione sincrona, i partecipanti interagiscono nello stesso momento in cui ha luogo la comunicazione, mentre nella comunicazione asincrona questa interazione non è immediata e può avvenire in diversi momenti. Comunicazione sincrona Comunicazione caratterizzata dalla simultaneità fra due utenti collegati a distanza. E' una comunicazione che avviene tra persone che sono collegate nello stesso tempo anche da luoghi differenti. Comunicazione asincrona Comunicazione caratterizzata da un certo lasso di tempo fra quando un messaggio è trasmesso e quando è ricevuto (per esempio, posta elettronica e messaggi). Il trasmettitore e il ricevente non comunicano nello stesso tempo. Modi di comunicare

  • Uno a uno  In comunicazione, è l’atto di un individuo che comunica con solo un altro individuo. Nel contesto di Internet, è un tipo di comunicazione che può essere prodotto ad esempio attraverso i messaggi di posta elettronica o programmi di chat Sincrona: phone (fisso e mobile) | Asincrona: posta, fax, SMS, e-mail
  • Uno a molti  Il modello one to many (uno a molti) comporta la presenza di un unico mittente e più riceventi Sincrona: radio, televisione | Asincrona: giornali, Web
  • Molti a uno  Comporta la presenza di più mittenti e di un unico ricevente Sincrona: motori di ricerca, ARTIFICIAL INTELLIGENCE (AI)
  • Molti a molti  Il modello più recente e interattivo è quello many to many Il flusso di comunicazione in questo caso vede coinvolte più persone che si scambiano informazioni. Sincrona: video conferenza | Asincrona: social, newsgroups, blog

Nella teoria dei sistemi, un modello black box è un sistema che è descrivibile essenzialmente nel suo comportamento esterno ovvero solo per come reagisce in uscita (output) a una determinata sollecitazione in ingresso (input), ma il cui funzionamento interno non è visibile o ignoto. Ogni problema di elaborazione di informazione è caratterizzato da un insieme di dati di partenza e da un risultato cercato Ogni soluzione è una procedura che genera il risultato (corretto) sulla base dei dati indicati Distinguiamo tra:

  • conoscenza di come si risolve un problema
  • analisi del problema
  • identificazione di una soluzione
  • descrizione della soluzione
  • effettiva capacità di risolvere un problema
  • interpretazione della soluzione
  • attuazione della soluzione (sviluppo di un programma) Per la descrizione della soluzione si utilizzano:
  • linguaggi naturali (linguaggi ambigui): italiano, inglese, ecc.
  • linguaggi formali (linguaggi non ambigui): formalismo matematico, pseudo-codice, diagramma di flusso (flow-chart), linguaggio di programmazione, codice macchina Linguaggio dipendente dal contesto Un linguaggio dipendente dal contesto (o anche sensibile al contesto, vincolato al contesto, o contestuale) è un linguaggio formale che può essere definito da una grammatica dipendente dal contesto. Un linguaggio libero dal contesto (o non contestuale, o context-free) è un linguaggio formale generato da una grammatica che sia, appunto, non contestuale, ovvero tale che le cui regole agiscono su simboli non terminali a prescindere dal contesto in cui essi appaiono. Questa classe di linguaggi è di particolare interesse nell'informatica teorica ed in particolare nella teoria dei linguaggi di programmazione e della loro implementazione. Un linguaggio è costituito da:
  • un vocabolario