TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE

Похожие документы
Lez. 5 La Programmazione. Prof. Salvatore CUOMO

Concetti Introduttivi. Il Computer

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

FONDAMENTI DI INFORMATICA

Docente: Prof. Marco Patella Tutor: Vincenzo Lomonaco

Programmazione C Massimo Callisto De Donato

Il calcolatore. Architettura di un calcolatore (Hardware)

Introduzione alla programmazione. Walter Didimo

Introduzione al funzionamento di un calcolatore elettronico

Corso Programmazione

Cosa è l Informatica?

Il linguaggio di programmazione Python

Linguaggi di Programmazione

Le aree dell informatica

Linguaggi di programmazione

LINGUAGGI DI ALTO LIVELLO

Laurea triennale - Comunicazione&DAMS - UNICAL. Dr. Marco Manna 1

DAGLI ALGORITMI AI LINGUAGGI. Linguaggi di Programmazione

Linguaggi di alto livello, compilatori e interpreti

Introduzione alla Programmazione. Giselda De Vita

Che cos e l Informatica. Informatica generale. Caratteristiche fondamentali degli algoritmi. Esempi di algoritmi. Introduzione

REGISTRI D'ESAME CODICE ESAME CORSO DI LAUREA NOME DEL CORSO LAUREA CFU

Elementi di Informatica e Programmazione

Linguaggi di programmazione e astrazione

Prof. Massimo Esposito INGEGNERIA MECCANICA (DI-M) UNIVERSITÀ DEGLI STUDI DI NAPOLI FEDERICO II FACOLTÀ DI INGEGNERIA

Compitino di Laboratorio di Informatica CdL in Matematica 13/11/2007 Teoria Compito A

Introduzione al Linguaggio C Corso di Informatica Laurea in Fisica

Fondamenti di Informatica (lettere A-I) A

PROBLEMI ALGORITMI E PROGRAMMAZIONE

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.

FONDAMENTI DI INFORMATICA II

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura

Linguaggi di Programmazione

Algoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema

Fondamenti di Informatica MultiDAMS

Introduzione a Java. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni

APPUNTI PER IL CORSO DI ALFABETIZZAZIONE INFORMATICA

Linee di programmazione

INFORMATICA. Scienza degli elaboratori elettronici (Computer. informazione

UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Introduzione alla programmazione

Il concetto di calcolatore e di algoritmo

LINGUAGGI DI ALTO LIVELLO. Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware

Fondamenti di Informatica II Corso (HA-ZZ) Introduzione al corso

Laboratorio di Programmazione

Introduzione al Calcolo Scientifico

Cosa è cambiato - la parte facile

Lezione 1. Problemi Algoritmi Programmi

Istruzioni Condizionali

CONCETTI FONDAMENTALI

Fondamenti di Informatica

Hardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre

Unità Didattica 2 I Linguaggi di Programmazione

Elementi di Informatica e Programmazione

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.)

Fondamenti di Informatica T. Il Software

Introduzione. Corso di Fondamenti di Informatica

Modulo 1. Concetti base della Tecnologia dell informazione. Prof. Nicolello Cristiano. Modulo 1

Come ragiona il computer. Problemi e algoritmi

INTRODUZIONE ALL INFORMATICA

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica

Fondamenti VBA. Che cos è VBA

Dispensa di Informatica II.1

Algoritmi e Programmi

Lezione 16. Il Software di base

Fondamenti di programmazione!! Parte 2!

Teoria dell Informazione

Dalla prima lezione. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 7 VARIABILI E COSTANTI 28/02/2016. Concetto di algoritmo

INTELLIGENZA ARTIFICIALE (elementi) 6 cfu

Software. Algoritmo. Algoritmo INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

UNIVERSITA' DEGLI STUDI DI MILANO - BICOCCA Facoltà di Scienze Matematiche, Fisiche e Naturali

Corso di Informatica di Base

MATERIALI PER LA DISCUSSIONE

COMPILAZIONE. Tarsformazione di linguaggi

3. Indicare cosa sta a significare la figura geometrica del rombo in un diagramma a blocchi

Obiettivi Cognitivi OBIETTIVI MINIMI U.D.0: INSIEME N conoscere il concetto di numero naturale;

LA CODIFICA DELL INFORMAZIONE. Introduzione ai sistemi informatici D. Sciuto, G. Buonanno, L. Mari, McGraw-Hill Cap.2

Транскрипт:

TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE Riccardo Dondi Dipartimento di Scienze dei linguaggi, della comunicazione e degli studi culturali Università degli Studi di Bergamo

Informazione sul corso Modalità d esame: orale Come contattarmi Ufficio: piazza Vecchia 8, II piano, stanza 24 (laboratorio di Geografia) Orario di ricevimento: mercoledì 14.00-15.30 Libri di testo consigliati: lucidi Sawyer, Williams Tecnologie dell informazione e della comunicazione, McGraw-Hill Per approfondimenti: Sciutto, Buonanno, Fornaciari, Mari Introduzione ai sistemi informatici, McGraw-Hill Sito web del corso Indirizzo mail: riccardo.dondi@unibg.it

Tecnologia dei computer Un computer può essere utilizzato in modi differenti: Utilizzo di programmi specifici (foglio elettronico, programmi di videoscrittura, browser, etc ) Sviluppare nuovi programmi Un computer è un dispositivo programmabile: può eseguire programmi differenti senza che la sua struttura venga cambiata Accetta dati in ingresso, li elabora per produrre informazioni utili. La potenza di calcolo di un computer accelera la risoluzione dei problemi e migliora la produttività

Discipline all interno dell informatica L informatica è composta da diverse discipline: Algoritmi e struttura dati Programmazione Architettura dei calcolatori Reti di calcolatori Sistemi operativi Ingegneria del software Basi di dati Intelligenza artificiale Teoria dell informazione

Algoritmi e Strutture Dati Un algoritmo è definito come una sequenza finita di operazioni elementari per la risoluzione di un problema Dato un insieme di dati in ingresso (input) un algoritmo produce una soluzione al problema (output) Es. Somma di due numeri. Input: due numeri x e y Output: la somma di x e y L algoritmo riceve (legge) x e y, calcola x + y e restituisce x + y

Complessità di un algoritmo Esistono problemi semplici (somma di due numeri) e problemi complessi (problema del commesso viaggiatore) Problema del commesso viaggiatore: un commesso viaggiatore deve partire dalla propria città, visitare tutte le città dove ha dei clienti e deve tornare alla propria città percorrendo il viaggio di lunghezza minima. Un commesso viaggiatore può avere migliaia di clienti sparsi in migliaia di città

Algoritmo Gli algoritmi rappresentano soluzioni teoriche Perché un algoritmo sia utilizzabile deve essere implementato: deve essere scritto un programma che compie le operazioni descritte dall algoritmo

Programmazione Studio dei programmi: algoritmi espressi in un linguaggio comprensibile al calcolatore Il linguaggio formale impiegato per descrivere un programma è detto linguaggio di programmazione Nell algoritmo non sono considerati in dettaglio alcuni aspetti della risoluzione di un problema: codifica dei dati interazione con esseri umani Caratteristiche dell elaboratore che si sta utilizzando: costi lettura/scrittura dati, velocità di calcolo, limiti nella dimensioni di dati rappresentabili

Linguaggio di programmazione L elaboratore ha un proprio linguaggio (linguaggio macchina), difficilmente comprensibile e programmabile dagli esseri umani Linguaggi di programmazione di alto livello: consentono la descrizione dei problemi ad un livello astratto Meno astratto rispetto agli algoritmi: deve rispettare delle regole precise Più astratto rispetto al linguaggio macchina: più semplice per la descrizione

Linguaggio di programmazione Un programma in un linguaggio di alto livello è una successione di istruzioni che devono essere lette e trasformate in istruzioni del linguaggio macchina da un opportuno programma di traduzione Importanza dei linguaggi di alto livello: su macchine differenti cambiano i programmi di traduzioni ma le istruzioni di alto livello dovrebbero restare invariate Diversi linguaggi: Fortran, Cobol, Basic, Pascal, C, Perl, C++, Java

Linguaggio di programmazione Due caratteristiche fondamentali dei linguaggi di programmazione: Sintassi: l insieme delle regole che il linguaggio deve seguire. Un programma corretto devo rispettare tale sintassi. Semantica: significato di ogni istruzione. Un programma può anche essere corretto sintatticamente ma non fare quello per cui è stato creato. Es.: scrivo un programma sintatticamente corretto che invece di calcolare il prodotto tra due numeri calcola la somma tra due numeri

Compilatore e Interprete Due tipi di traduttori da linguaggio di alto livello a linguaggio macchina: compilatore e interprete Entrambi controllano la sintassi del programma Compilatore: traduttore che converte le istruzioni del programma ad alto livello in codice macchina. Il codice macchina può quindi essere eseguito (Cobol, Fortran, Pascal, C). Interprete: traduttore che converte ogni istruzione di alto livello in codice macchina e poi la esegue (Basic, Perl).