informatica di base per le discipline umanistiche

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "informatica di base per le discipline umanistiche"

Transcript

1 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università di Pavia (per iniziare )

2 quarta lezione: circuiti, istruzioni e programmi vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università di Pavia

3 il calcolatore: una definizione dispositivo elettronico programmabile finalizzato alla gestione delle informazioni hardware tutto quanto non possiamo trasmettere per telefono... (per saperne di più clicca sulle parole evidenziate in giallo)

4 dentro il computer fai click per approfondire...

5 il calcolatore: componenti e funzioni (torna indietro )

6 (torna indietro ) il sistema operativo (due viste) dall esterno il sistema operativo fornisce all utente un interfaccia conveniente dall interno gestisce tutte le parti di un sistema complesso, allocando in modo ordinato le diverse risorse della macchina: processori, memorie, dischi, interfacce di rete, stampanti e altre periferiche

7 il sistema operativo come intermediario (torna indietro ) il sistema operativo agisce come un intermediario tra le risorse hardware del computer e gli applicativi software installati sul computer software hardware sistema operativo

8 (torna indietro ) il sistema operativo

9 quarta lezione dentro il computer fine quarta lezione (lezione 5)

10 il calcolatore è programmabile... è cioè in grado di eseguire istruzioni operando su dati rappresentati come quantità discrete... (per saperne di più clicca sulle parole evidenziate in giallo)

11 la cpu (fine excursus) è la parte "pensante" di ogni computer, costituita da un sottile cristallo di silicio. Su un processore (p.e. di un cm 2 ) vengono impressi diodi, transistor e circuiti. Esegue le istruzioni ed elabora i dati dei programmi presenti nella memoria RAM e nei registri interni al processore. (per saperne di più clicca sulle parole evidenziate in giallo)

12 (torna alla lezione 3) cos è il linguaggio macchina? leggi il primo valore (a) e ponilo nella cella leggi il secondo valore (b) (cella 17) leggi il terzo valore (c) (cella 18) leggi il quarto valore (d) (cella 19) carica A con il contenuto della cella carica B con il contenuto della cella somma i due valori (il risultato è in A) salva il risultato parziale nella cella carica A con il contenuto della cella carica B con il contenuto della cella somma i due valori (il risultato è in A) carica B con il contenuto della cella moltiplica i due valori (il risultato è in A) salva il risultato nella cella scrivi il contenuto della cella arresta l esecuzione 16 cella riservata ad a 17 cella riservata a b 18 cella riservata a c 19 cella riservata a d 20 cella riservata al risultato parziale celle libere

13 istruzioni di trasferimento: registri RAM (torna indietro ) RAM ALU R 0 R 1 R 2 LOAD STORE cpu

14 formato: (torna indietro ) codice-op n. registro indirizzo parola RAM 8 bit 4 bit 20 bit 1 parola (32bit) Codici: LOAD STORE

15 funzioni aritmetiche: (torna indietro ) eseguono somma, differenza, moltiplicazione e divisione usando i registri come operandi C Op R i R j ADD FADD SUB FSUB MULT FMULT DIV FDIV MOD

16 formato: (torna indietro ) codice-op reg 1 reg 2 8 bit 4 bit 4 bit inutile 1 parola (32 bit)

17 strutture di controllo: se allora (torna indietro ) SI STORE R2 X; STOP; R0 R1? test NO STORE R2 Y; STOP;

18 strutture di controllo (torna indietro ) permettono di saltare ad un altra istruzione del programma a seconda del contenuto di RC (cioè a seconda del risultato di un confronto) BRLT BRNE BRLE BRGE BREQ BRGT BRANCH

19 (torna alla lezione 3) formato: (torna indietro ) codice-op indirizzo RAM 8 bits inutile 20 bit 1 parola (fine excursus)

20 (torna alla lezione 3) un esempio di circuito... (fine excursus)

21 (torna indietro ) la porta NOT per visualizzare lo stesso circuito con i transistor fai click...

22 (torna indietro ) la porta NOT

23 (torna indietro ) la porta OR per visualizzare lo stesso circuito con i transistor fai click...

24 (torna indietro ) la porta OR

25 (torna indietro ) la porta AND per visualizzare lo stesso circuito con i transistor fai click...

26 (torna indietro ) la porta AND

27 (torna alla lezione 3) (torna indietro ) porte digitali... A B and or not A B C

28 (torna indietro ) se, allora... se è bel tempo allora esco A B A B

29 se, allora... se è bel tempo e fa caldo, allora esco bel tempo caldo esco vero aggiungi o togli corrente con un click sugli ingressi del circuito e verifica il flusso della corrente attraverso il circuito

30 se, allora restrittivo... se è bel tempo allora esco A B A B se la premessa è falsa, anche la conclusione deve esserlo

31 se, allora restrittivo... (torna indietro ) se è bel tempo allora esco bel tempo esco

32 (torna alla lezione 3) se, allora restrittivo (II) se è bel tempo e fa caldo, allora esco bel tempo caldo esco (fine excursus)

33 l algoritmo (fine excursus)

34 (torna indietro ) l algoritmo (II)

35 (torna indietro ) proprietà di un algoritmo

36 (torna indietro ) gerarchia di linguaggi linguaggio di programamzione diagramma a blocchi linguaggio naturale (per saperne di più clicca sui blocchi!)

37 gerarchia di linguaggi (continua) linguaggio macchina (dipende dalla macchina) (torna indietro ) assemblatore linguaggio assembler (dipende dalla macchina) approfondisci con un click traduttore linguaggio di programmazione (per saperne di più clicca sui blocchi!) (fine excursus)

38 diagramma a blocchi inizio leggi a e b passo 0 c = a - b passo 1 sì c > 0? no passo 2 max = a max = b fine

39 ciclo o iterazione (fine excursus) R3 = R0? SI NO FMULT R4 R2; SUB R3 R1;

40 l algoritmo (fine excursus)

41 linguaggio di programmazione #include <stdo.h> int main(void) { const int a = 3; const int b = 1; if( a > b) puts( ciao mondo! ); else return FALSE; return TRUE; } (fine excursus)

42 assembler X: INT 38; Y: INT 8; LOAD R0 X; LOAD R1 Y; LOAD R2 X; ADD R2 R1; COMPARE R0 R1; BRGE pippo; STORE R2 Y; STOP; pippo: STORE R2 X; STOP;

43 (torna indietro ) novità dell assembler codici mnemonici per le operazioni nomi mnemonici (identificatori) al posto degli indirizzi RAM per i dati (e indirizzi RAM delle istruzioni usate nei salti) avanzate: tipi dei dati INT e FLOAT

44 codice-op mnemonici: (torna indietro ) trasferimento: aritmetiche: input/output: test: salto: terminazione: LOAD (RAM CPU) e STORE (CPU RAM) ADD,SUB,DIV,MULT,MOD, FADD,FSUB,FDIV,FMULT READ (U-INP CPU), WRITE (CPU U-OUT) COMP, FCOMP BREQ,BRGT,BRLT, BRGE,BRLE, BRANCH STOP (fine excursus)

45 due tipi di traduttori compilatori accettano in ingresso l intero programma e producono in uscita la rappresentazione dell intero programma in linguaggio macchina ricorda! sono una specie di traduttori letterari : hanno bisogno di leggere il testo intero per ottimizzarne la traduzione... interpreti traducono ed eseguono direttamente ciascuna istruzione del programma sorgente, istruzione per istruzione ricorda! sono una specie di traduttori simultanei : traducono frase per frase ma non sempre nel modo migliore...

46 (torna indietro ) due tipi di traduttori (II) compilatori per ogni programma da tradurre, lo schema viene percorso una sola volta prima dell esecuzione. interpreti lo schema viene attraversato tante volte quante sono le istruzioni che compongono il programma; ad ogni attivazione dell interprete su una particolare istruzione, segue l esecuzione dell istruzione stessa

47 (torna indietro ) due tipi di traduttori (III) compilatori nella compilazione la traduzione avviene una volta per tutte prima dell esecuzione; questo garantisce prestazioni più veloci nella compilazione si possono attuare processi di ottimizzazione dell eseguibile dato che il compilatore lavora su tutto l eseguibile interpreti ad ogni modifica del programma, la compilazione deve essere ripetuta completamente per rigenerare il codice eseguibile; l inteprete consente invece di eseguire il programma non appena il codice sorgente sia stato aggiornato

48 (torna indietro ) due tipi di traduttori (IV) compilatori per programmi che eseguono poche operazioni di input/output rispetto alla mole di elaborazioni effettuate interpreti programmi che eseguono molte operazioni di input/output intervallate da brevi periodi di elaborazione (fine excursus)

informatica di base per le discipline umanistiche

informatica di base per le discipline umanistiche informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università di Pavia (per iniziare ) quinta lezione: la sintassi

Dettagli

Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione

Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione Architettura di un calcolatore e linguaggio macchina Primo modulo Tecniche della programmazione CPU Central Processing Unit, processore Unita logica/aritmetica: elaborazione dati Unita di controllo: coordina

Dettagli

Istruzioni macchina. Dove sono gli operandi? Ciclo della CPU. Elementi di un istruzione macchina. Rappresentazione delle istruzioni

Istruzioni macchina. Dove sono gli operandi? Ciclo della CPU. Elementi di un istruzione macchina. Rappresentazione delle istruzioni Istruzioni macchina Linguaggio macchina Insieme delle istruzioni (instruction set) che la CPU puo eseguire Capitolo 10 1 2 Elementi di un istruzione macchina Codice operativo Specifica l operazione da

Dettagli

CPU. ALU e Registri della CPU. Elementi della CPU. CPU e programmazione (Parte 1) Central Processing Unit, processore

CPU. ALU e Registri della CPU. Elementi della CPU. CPU e programmazione (Parte 1) Central Processing Unit, processore CPU CPU e programmazione (Parte 1) La CPU (Central Processing Unit) e` in grado di eseguire dei programmi, cioe` sequenze di istruzioni elementari ( istruzioni macchina ) Idea fondamentale dell'architettura

Dettagli

Parte 3. Linguaggio Macchina e Assembler

Parte 3. Linguaggio Macchina e Assembler Parte 3 Linguaggio Macchina e Assembler LINGUAGGIO MACCHINA Descriveremo una CPU MINIMA dotata di un certo insieme di istruzioni I ciascuna realizzata da un corrispondente circuito C I. Questo insieme

Dettagli

Linguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche

Linguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche 3 tipi di istruzioni macchina Linguaggio macchina e assembler 1) trasferimento tra RAM e registri di calcolo della CPU 2) operazioni aritmetiche: somma, differenza, moltiplicazione e divisione 3) operazioni

Dettagli

Si ringraziano il Dott. Enrico Grisan e il Dott. Fabio Aiolli per il materiale didattico fornito

Si ringraziano il Dott. Enrico Grisan e il Dott. Fabio Aiolli per il materiale didattico fornito Università degli Studi di Padova Corso di Laurea in Matematica A.A. 2008-2009 2009 INTRODUZIONE ALLA PROGRAMMAZIONE Barbara Di Camillo Si ringraziano il Dott. Enrico Grisan e il Dott. Fabio Aiolli per

Dettagli

LINGUAGGIO MACCHINA e ASSEMBLER. Una CPU MINIMA Il linguaggio macchina di MINIMA Il linguaggio Assembler per MINIMA

LINGUAGGIO MACCHINA e ASSEMBLER. Una CPU MINIMA Il linguaggio macchina di MINIMA Il linguaggio Assembler per MINIMA LINGUAGGIO MACCHINA e ASSEMBLER Una CPU MINIMA Il linguaggio macchina di MINIMA Il linguaggio Assembler per MINIMA Nel computer non vengono memorizzati soltanto i dati da elaborare ma anche il programma

Dettagli

Linguaggio macchina. Capitolo 10. Linguaggio macchina. n Insieme delle istruzioni (instruction set) che la CPU può eseguire

Linguaggio macchina. Capitolo 10. Linguaggio macchina. n Insieme delle istruzioni (instruction set) che la CPU può eseguire Linguaggio macchina Capitolo 10 Linguaggio macchina n Insieme delle istruzioni (instruction set) che la CPU può eseguire Elementi di un istruzione macchina n Codice operativo Specifica l operazione da

Dettagli

Il CPU UNITA DI CALCOLI (ALU) UNITA DI CONTROLLO (CU) 1

Il CPU UNITA DI CALCOLI (ALU) UNITA DI CONTROLLO (CU) 1 Il CPU UNITA DI CONTROLLO (CU) UNITA DI CALCOLI (ALU) info@stoianov.it La struttura del Calcolatore UNITA DI CONTROLLO (CU) UNITA DI CALCOLI (ALU) CPU INPUT OUTPUT MEMORIA CENTRALE MEMORIA ESTERNA info@stoianov.it

Dettagli

informatica di base per le discipline umanistiche

informatica di base per le discipline umanistiche informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università di Pavia (per iniziare ) seconda lezione informazioni

Dettagli

PROBLEMI E ALGORITMI

PROBLEMI E ALGORITMI Fondamenti di Informatica PROBLEMI E ALGORITMI Fondamenti di Informatica - D. Talia - UNICAL 1 Specifica di un algoritmo Primo approccio, scrittura diretta del programma: la soluzione coincide con la codifica

Dettagli

Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007

Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Dott.Davide Di Ruscio Dipartimento di Informatica Università degli Studi di L Aquila Lezione del 29/01/07 Nota Questi lucidi sono tratti

Dettagli

Laboratorio di Informatica Ingegneria Clinica Lezione 2/11/2011. Prof. Raffaele Nicolussi

Laboratorio di Informatica Ingegneria Clinica Lezione 2/11/2011. Prof. Raffaele Nicolussi Laboratorio di Informatica Ingegneria Clinica Lezione 2/11/2011 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via del Policlinico, 147-00161 Roma Docente Raffaele Nicolussi rnicolussi@fub.it Lezioni

Dettagli

Introduzione al C. Informatica Generale - Introduzione al C Versione 1.0, aa p.1/17

Introduzione al C. Informatica Generale - Introduzione al C Versione 1.0, aa p.1/17 Introduzione al C Informatica Generale - Introduzione al C Versione 1.0, aa 2005-2006 p.1/17 Linguaggi di programmazione Sono linguaggi che permettono la codifica di algoritmi in modo da renderli eseguibili,

Dettagli

Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) Software (tutto ciò che non e tangibile)

Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) Software (tutto ciò che non e tangibile) Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) La macchina di Von Neumann Le periferiche Software (tutto ciò che non e tangibile) Il sistema operativo I programmi applicativi

Dettagli

Linguaggi di Programmazione

Linguaggi di Programmazione Linguaggi di Programmazione 1 C-Introduzione.tex: Versione 1.0, aa 2005-2006 Linguaggi di programmazione (1) Sono linguaggi che permettono la codifica di algoritmi in modo da renderli eseguibili, direttamente

Dettagli

Laboratorio di Informatica Ingegneria Clinica Lezione 7/11/2011. Prof. Raffaele Nicolussi

Laboratorio di Informatica Ingegneria Clinica Lezione 7/11/2011. Prof. Raffaele Nicolussi Laboratorio di Informatica Ingegneria Clinica Lezione 7/11/2011 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via del Policlinico, 147-00161 Roma Docente Raffaele Nicolussi rnicolussi@fub.it Lezioni

Dettagli

INFORMATICA. L informatica comprende:

INFORMATICA. L informatica comprende: Varie definizioni: INFORMATICA Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Definizione proposta: Scienza della rappresentazione e dell elaborazione dell informazione

Dettagli

Programmazione al livello del CPU

Programmazione al livello del CPU Corsi di Laurea in Biologia e Biologia Molecolare Università di Padova, AA 2012/2013 Programmazione al livello del CPU www.stoianov.it info@stoianov.it 1 Esecuzione condizionale Eseguire blocco A o blocco

Dettagli

Rappresentazione dell informazione

Rappresentazione dell informazione Rappresentazione dell informazione Codifica dei numeri Rappresentazioni in base 2, 8, 10 e 16 Rappresentazioni M+S, C1 e C2 Algoritmi di conversione di base Algoritmi di somma, moltiplicazione e divisione

Dettagli

DAGLI ALGORITMI AI LINGUAGGI. Linguaggi di Programmazione

DAGLI ALGORITMI AI LINGUAGGI. Linguaggi di Programmazione DAGLI ALGORITMI AI LINGUAGGI Linguaggi di Programmazione E` una notazione con cui e` possibile descrivere gli algoritmi. Programma: e` la rappresentazione di un algoritmo in un particolare linguaggio di

Dettagli

Il Software programmabili programma algoritmo

Il Software programmabili programma algoritmo Il Software La proprietà fondamentale dei calcolatori e` quella di essere programmabili cioè in grado di svolgere compiti diversi a seconda delle istruzioni fornite dall utente mediante un programma, ossia

Dettagli

Fondamenti di Informatica A. A / 1 9

Fondamenti di Informatica A. A / 1 9 Fondamenti di Informatica Prof. Marco Lombardi A. A. 2 1 8 / 1 9 Architettura di Von Neumann Architettura di Von Neumann: l Unità di Elaborazione L Unità di Elaborazione L unità di elaborazione (CPU) contiene

Dettagli

Linguaggi di Programmazione

Linguaggi di Programmazione Linguaggi di Programmazione E una notazione con cui e possibile descrivere gli algoritmi. Programma: e la rappresentazione di un algoritmo in un particolare linguaggio di programmazione. In generale, ogni

Dettagli

Settimana n.2. Obiettivi Esecuzione di un programma. Tutorial su CodeBlocks e ambiente di sviluppo.

Settimana n.2. Obiettivi Esecuzione di un programma. Tutorial su CodeBlocks e ambiente di sviluppo. Settimana n.2 Obiettivi Esecuzione di un programma. Tutorial su CodeBlocks e ambiente di sviluppo. Contenuti Linguaggi di programmazione Dati e istruzioni Architettura di un elaboratore Uso del compilatore

Dettagli

Inf matica C.I. Metodologia Scientifica & Linguistica Mario&Pavone& &

Inf matica C.I. Metodologia Scientifica & Linguistica Mario&Pavone& & Programmazione+1+ + Mario&Pavone& & Dipar/mento+di+Matema/ca+ed+Informa/ca+ Università+degli+Studi+di+Catania+ mpavone@dmi.unict.it+ hap://www.dmi.unict.it/mpavone/+ Definizioni Algoritmo: una sequenza

Dettagli

informatica di base per le discipline umanistiche

informatica di base per le discipline umanistiche informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università di Pavia prima lezione introduzione: computer e linguaggio

Dettagli

Architettura dei calcolatori e Software di sistema

Architettura dei calcolatori e Software di sistema Università degli Studi di Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica, Meccanica Lezioni di Informatica di Base per la Facoltà di Lettere e Filosofia Anno Accademico 2012/20103

Dettagli

Il linguaggio di programmazione Python

Il linguaggio di programmazione Python Università Roma Tre Dipartimento di Matematica e Fisica Percorso Abilitante Speciale Classe A048 Matematica Applicata Corso di Informatica Il linguaggio di programmazione Python Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Elaborazione dell informazione

Elaborazione dell informazione Elaborazione dell informazione Primo esempio Ricominciamo dai numeri (45 + 25) è definita rigorosamente Un primo calcolatore (a) Figura 1.1 Configurazione del pallottoliere (a) prima e (b) dopo l esecuzione

Dettagli

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

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza

Dettagli

Architettura del Calcolatore

Architettura del Calcolatore Giuseppe Manco Lezione 3 17 Ottobre 2003 Architettura del calcolatore Il calcolatore è uno strumento programmabile per la rappresentazione, la memorizzazione e l elaborazione delle informazioni un calcolatore

Dettagli

Il linguaggio macchina

Il linguaggio macchina Università degli Studi di Palermo Facoltà di Ingegneria Il linguaggio macchina Edoardo Ardizzone & Ignazio Infantino Appunti per il corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Informatica

Dettagli

Programmazione strutturata

Programmazione strutturata Corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Gestionale (L-Z) 3. (testo di riferimento: Bellini-Guidi) Ing. Michele Ruta 1di 29 Linguaggi di programmazione Un programma è un algoritmo

Dettagli

Istruzioni e linguaggio macchina

Istruzioni e linguaggio macchina Istruzioni e linguaggio macchina I linguaggi macchina sono composti da istruzioni macchina, codificate in binario, con formato ben definito processori diversi hanno linguaggi macchina simili scopo: massimizzare

Dettagli

memoria PSW R1 R2 CPU Struttura logica dell elaboratore unità di controllo ALU unità di ingresso unità organo coordinatore clock di uscita

memoria PSW R1 R2 CPU Struttura logica dell elaboratore unità di controllo ALU unità di ingresso unità organo coordinatore clock di uscita Struttura logica dell elaboratore unità di ingresso memoria AR PC +1 DR OC OA IR unità di uscita PSW organo coordinatore clock SCHEMA COMPLETO R1 R2 ALU unità di controllo CPU 1 Struttura logica dell elaboratore

Dettagli

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L attività di progettare e realizzare un programma è detta programmazione

Dettagli

Linguaggi, compilatori e interpreti

Linguaggi, compilatori e interpreti Linguaggi, compilatori e interpreti 1 Il codice macchina Ciascun calcolatore ha un ampio insieme di istruzioni che è in grado di eseguire. Le istruzioni vengono rappresentate mediante sequenze di bit 001000100011

Dettagli

Accumulatore Vettori. Preparazione per l'esame. Corsi di Laurea in Biologia e Biologia Molecolare Università di Padova, AA 2012/2013

Accumulatore Vettori. Preparazione per l'esame.   Corsi di Laurea in Biologia e Biologia Molecolare Università di Padova, AA 2012/2013 Corsi di Laurea in Biologia e Biologia Molecolare Università di Padova, AA 2012/2013 Accumulatore Vettori Preparazione per l'esame www.stoianov.it info@stoianov.it 1 ACCUMULATORE Se abbiamo istruzioni

Dettagli

o Introduzione agli algoritmi o Rappresentazione delle Informazioni o Architettura del calcolatore o Reti di Calcolatori

o Introduzione agli algoritmi o Rappresentazione delle Informazioni o Architettura del calcolatore o Reti di Calcolatori Programma del corso o Introduzione agli algoritmi o Rappresentazione delle Informazioni o Architettura del calcolatore o Reti di Calcolatori o Elementi di Programmazione Algoritmi e programmi o Algoritmo

Dettagli

Linguaggi, compilatori e interpreti

Linguaggi, compilatori e interpreti Linguaggi, compilatori e interpreti Il codice macchina Ciascun calcolatore ha un ampio insieme di istruzioni che è in grado di eseguire. Le istruzioni vengono rappresentate mediante sequenze di bit 000101

Dettagli

Lezione 20. della CPU MIPS. Prof. Federico Pedersini Dipartimento di Informatica Università degli Studi di Milano

Lezione 20. della CPU MIPS. Prof. Federico Pedersini Dipartimento di Informatica Università degli Studi di Milano Architettura degli Elaboratori Lezione 20 ISA (Instruction Set Architecture) della CPU MIPS Prof. Federico Pedersini Dipartimento di Informatica Università degli Studi di Milano L16-20 1/29 Linguaggio

Dettagli

Architettura di Von Neumann. Architettura di Von Neumann. Architettura di Von Neumann INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

Architettura di Von Neumann. Architettura di Von Neumann. Architettura di Von Neumann INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042) INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042) Computer elaboratore di informazione riceve informazione in ingresso (input) elabora questa informazione restituisce informazione ottenuta elaborando

Dettagli

LEZIONE 4. Hardware (periferiche) Software (algoritmi)

LEZIONE 4. Hardware (periferiche) Software (algoritmi) LEZIONE 4 Hardware (periferiche) Software (algoritmi) Prof. Valle Prof. Folgieri Lez4 Hardware e Software 1 PERIFERICHE DI INPUT E DI OUTPUT Periferiche di INPUT: Tastiera Mouse Trackball, touch pad, joystick

Dettagli

Pag. 1. Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni. Architettura del calcolatore (parte II)

Pag. 1. Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni. Architettura del calcolatore (parte II) 1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione Informatica a.a. 2012/13 La inserita nella architettura dell elaboratore Informatica Facoltà di Medicina Veterinaria a.a.

Dettagli

Architettura del calcolatore

Architettura del calcolatore Architettura del calcolatore Il calcolatore è: Uno strumento programmabile per rappresentare, memorizzare ed elaborare informazioni Un sistema, costituito da molte componenti Studiare l architettura di

Dettagli

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter Informatica B a.a 2005/06 (Meccanici 4 squadra) Scaglione: da PO a ZZZZ PhD. Ing. Michele Folgheraiter Funzionamento macchina di von Neumann clock Memoria Centrale: Tutta l informazione prima di essere

Dettagli

Architettura del calcolatore (Prima parte)

Architettura del calcolatore (Prima parte) Architettura del calcolatore (Prima parte) Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Calcolatore astratto e reale Concetto astratto di calcolatore:

Dettagli

C++ Barriera di astrazione. Barriera di astrazione. Basic. Basic. Lisp. Lisp. Pascal. Prolog. Pascal. Prolog. Cobol. Fortran IMPERATIVI FUNZIONALI

C++ Barriera di astrazione. Barriera di astrazione. Basic. Basic. Lisp. Lisp. Pascal. Prolog. Pascal. Prolog. Cobol. Fortran IMPERATIVI FUNZIONALI Linguaggi di alto livello Barriera di astrazione C Fortran Cobol Modula-2 Basic Pascal Algol Ada Lisp Smalltalk Simula67 Scheme C++ Prolog ML AN - 1995 Linguaggi di alto livello IMPERATIVI C Fortran Modula-2

Dettagli

Linguaggi di alto livello. Barriera di astrazione. Pascal. Cobol. Fortran. Basic. Modula-2. Lisp. Simula67 Scheme. Smalltalk C++ Prolog AN

Linguaggi di alto livello. Barriera di astrazione. Pascal. Cobol. Fortran. Basic. Modula-2. Lisp. Simula67 Scheme. Smalltalk C++ Prolog AN Linguaggi di alto livello Barriera di astrazione C Fortran Modula-2 Cobol Basic Pascal Algol Ada Lisp Smalltalk Simula67 Scheme C++ Prolog ML AN - 1995 Linguaggi di alto livello IMPERATIVI Fortran Cobol

Dettagli

Lezione 17 Il Set di Istruzioni (3)

Lezione 17 Il Set di Istruzioni (3) Lezione 17 Il Set di Istruzioni (3) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Organizzazione della lezione Un richiamo su: Operazioni aritmetiche (add

Dettagli

Esecuzione di Programmi Esercitazione

Esecuzione di Programmi Esercitazione Alfonso Miola Esecuzione di Programmi Esercitazione Dispensa B-03-E Settembre 2005 1 Calcolatori e programmazione Abbiamo detto che un calcolatore è una macchina per eseguire programmi Programmi che qualcuno

Dettagli

Architettura dei calcolatori e sistemi operativi. Architettura MIPS e set istruzioni Capitolo 2 P&H

Architettura dei calcolatori e sistemi operativi. Architettura MIPS e set istruzioni Capitolo 2 P&H Architettura dei calcolatori e sistemi operativi Architettura MIPS e set istruzioni Capitolo 2 P&H Instruction Set Architecture ISA Linguaggio assemblatore e linguaggio macchina ISA processore MIPS Modello

Dettagli

Un quadro della situazione. Lezione 15 Il Set di Istruzioni (3) Dove siamo nel corso. Organizzazione della lezione. Cosa abbiamo fatto

Un quadro della situazione. Lezione 15 Il Set di Istruzioni (3) Dove siamo nel corso. Organizzazione della lezione. Cosa abbiamo fatto Un quadro della situazione Lezione 15 Il Set di Istruzioni (3) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Input/Output Sistema di Interconnessione Registri

Dettagli

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni Componenti principali Componenti e connessioni Capitolo 3 CPU (Unita Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro 1 2 Architettura di Von Neumann Dati e instruzioni in memoria

Dettagli

LINGUAGGI DI ALTO LIVELLO

LINGUAGGI DI ALTO LIVELLO LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware Linguaggi di alto livello Barriera di astrazione C Fortran Modula-2 Cobol Algol Basic Ada

Dettagli

Architettura di un Sistema Informatico

Architettura di un Sistema Informatico Architettura di un Sistema Informatico Informatica B AA 2013 / 2014 6 Ottobre 2014 Giacomo Boracchi giacomo.boracchi@polimi.it Cos è l Informatica? Scienza della rappresentazione e dell elaborazione dell

Dettagli

Fondamenti Teorici e Programmazione Modulo A. Architettura dei calcolatori Ioanna Miliou, Ph.D.

Fondamenti Teorici e Programmazione Modulo A. Architettura dei calcolatori Ioanna Miliou, Ph.D. Fondamenti Teorici e Programmazione Modulo A Architettura dei calcolatori Ioanna Miliou, Ph.D. Architettura dei calcolatori In un computer possiamo dis8nguere qua;ro unità funzionali: il processore (CPU)

Dettagli

Fondamenti di Algoritmi

Fondamenti di Algoritmi Fondamenti di Algoritmi Corsi di Informatica Grafica Prof. Manuel Roveri Dipartimento di Elettronica e Informazione roveri@elet.polimi.it Indice Algoritmi: Definizione Diagrammi di Flusso Esempi ed esercizi

Dettagli

Architettura di Von Neumann

Architettura di Von Neumann Architettura del calcolatore Architettura di Von Neumann L architettura è ancora quella classica sviluppata da Von Neumann nel 1947. L architettura di Von Neumann riflette le funzionalità richieste da

Dettagli

Microelettronica Corso introduttivo di progettazione di sistemi embedded

Microelettronica Corso introduttivo di progettazione di sistemi embedded Microelettronica Corso introduttivo di progettazione di sistemi embedded Architettura dei sistemi a microprocessore prof. Stefano Salvatori A.A. 2014/2015 Eccetto dove diversamente specificato, i contenuti

Dettagli

Lezione 20. della CPU MIPS. Prof. Federico Pedersini Dipartimento di Informatica Università degli Studi di Milano

Lezione 20. della CPU MIPS. Prof. Federico Pedersini Dipartimento di Informatica Università degli Studi di Milano Architettura degli Elaboratori Lezione 20 ISA (Instruction Set Architecture) della CPU MIPS Prof. Federico Pedersini Dipartimento di Informatica Università degli Studi di Milano L16-20 1/29 Linguaggio

Dettagli

Componenti principali

Componenti principali Componenti e connessioni Capitolo 3 Componenti principali n CPU (Unità Centrale di Elaborazione) n Memoria n Sistemi di I/O n Connessioni tra loro Architettura di Von Neumann n Dati e instruzioni in memoria

Dettagli

Componenti e connessioni. Capitolo 3

Componenti e connessioni. Capitolo 3 Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Università Degli Studi di Ferrara Corso di Laurea in Scienze della Comunicazione - A.A. 2017-2018 Fondamenti di Informatica Lez. 01 - Concetti Hardware e Software Fondamenti di Informatica - Docente: Giacomo

Dettagli

Informatica. Dipartimento di Economia. Ing. Cristiano Gregnanin. 20 ottobre Corso di laurea in Economia

Informatica. Dipartimento di Economia. Ing. Cristiano Gregnanin. 20 ottobre Corso di laurea in Economia Informatica Dipartimento di Economia Ing. Cristiano Gregnanin Corso di laurea in Economia 20 ottobre 2016 1 / 19 Linguaggi 2 / 19 Linguaggi 3 / 19 Linguaggi di alto livello Si basano su una macchina virtuale

Dettagli

Architettura del. Calcolatori (1) Calcolatori (2) L architettura di Von Neumann. CPU RAM Memoria I/O. secondaria. bus

Architettura del. Calcolatori (1) Calcolatori (2) L architettura di Von Neumann. CPU RAM Memoria I/O. secondaria. bus Architettura del calcolatore Calcolatori (1) Introdotti all'inizio degli anni 1940 Costruiti assemblano componenti elettronici elementari per memorizzare informazioni ed eseguire programmi informazioni

Dettagli

Architettura degli Elaboratori

Architettura degli Elaboratori Architettura degli Elaboratori Linguaggio macchina e assembler (caso di studio: processore MIPS) slide a cura di Salvatore Orlando, Marta Simeoni, Andrea Torsello Architettura degli Elaboratori 1 1 Istruzioni

Dettagli

Informatica Teorica. Macchine a registri

Informatica Teorica. Macchine a registri Informatica Teorica Macchine a registri 1 Macchine a registri RAM (Random Access Machine) astrazione ragionevole di un calcolatore nastro di ingresso nastro di uscita unità centrale in grado di eseguire

Dettagli

Linguaggio Assembly e linguaggio macchina

Linguaggio Assembly e linguaggio macchina Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Architettura hardware

Architettura hardware Architettura hardware la parte che si può prendere a calci Architettura dell elaboratore Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

Dettagli

Linguaggi di alto livello, compilatori e interpreti

Linguaggi di alto livello, compilatori e interpreti Linguaggi di alto livello, compilatori e interpreti Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Limiti del linguaggio assembler Esempio: gestione

Dettagli

Microelettronica Corso introduttivo di progettazione di sistemi embedded

Microelettronica Corso introduttivo di progettazione di sistemi embedded Microelettronica Corso introduttivo di progettazione di sistemi embedded Architettura dei sistemi a microprocessore prof. Stefano Salvatori A.A. 2017/2018 Eccetto dove diversamente specificato, i contenuti

Dettagli

Sistemi a microprocessore

Sistemi a microprocessore Sistemi a microprocessore Programma: Segnali analogici e digitali Uso di segnali digitali per la rappresentazione dei numeri interi La memoria e la CPU I programmi in linguaggio macchina La connessione

Dettagli

Linguaggio Assembly e linguaggio macchina

Linguaggio Assembly e linguaggio macchina Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Note sull architettura del calcolatore

Note sull architettura del calcolatore Note sull architettura del calcolatore 1 Algoritmo Problema Preparazione di una torta Programmazione del VCR MCD tra due numeri Algoritmo Sequenza ordinata di istruzioni che risolve il problema specifico

Dettagli

Laboratorio di Architettura degli Elaboratori LabArch 2006 Secondo Quadimestre, a.a Docente: H. Muccini

Laboratorio di Architettura degli Elaboratori LabArch 2006 Secondo Quadimestre, a.a Docente: H. Muccini [http://www.di.univaq.it/muccini/labarch] Laboratorio di Architettura degli Elaboratori LabArch 2006 Secondo Quadimestre, a.a. 2005-2006 Docente: H. Muccini Lecture 2: Prime Istruzioni -Concetti Fondamentali

Dettagli

I linguaggi di programmazione

I linguaggi di programmazione I linguaggi di programmazione 1 Lessico, sintassi e semantica Lessico: l insieme di regole formali per la scrittura di parole in un linguaggio Sintassi: l insieme di regole formali per la scrittura di

Dettagli

Mari, Buonanno, Sciuto Informatica e cultura dell informazione McGraw-Hill 3/2/2010

Mari, Buonanno, Sciuto Informatica e cultura dell informazione McGraw-Hill 3/2/2010 Unità Centrale di Elaborazione Unità di Unità aritmetico logica () centrale Terminale Dispositivi di I/O Unità disco Stampante 02/03/2010 Informatica e cultura dell informazione capitolo 1 Il sistema di

Dettagli

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti. Proff. A. Borghese, F. Pedersini

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti. Proff. A. Borghese, F. Pedersini Architettura degli Elaboratori e delle Reti Lezione 8 CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 8 /33 Sommario! La

Dettagli

Istruzioni e linguaggio macchina

Istruzioni e linguaggio macchina Istruzioni e linguaggio macchina I linguaggi macchina sono composti da istruzioni macchina, codificate in binario, con formato ben definito processori diversi hanno linguaggi macchina simili scopo: massimizzare

Dettagli

Fondamenti di Informatica T. Il Software

Fondamenti di Informatica T. Il Software Il Software TECNOLOGIA DIGITALE CPU, memoria centrale e dispositivi sono realizzati con tecnologia elettronica digitale. Dati ed operazioni vengono codificati a partire da due valori distinti di grandezze

Dettagli

Linguaggio Assembly e linguaggio macchina

Linguaggio Assembly e linguaggio macchina Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Computer. Capitolo 2. 05/04/2012 continuazione 1

Computer. Capitolo 2. 05/04/2012 continuazione 1 Computer Capitolo 2 05/04/2012 continuazione 1 Le prestazioni del computer Velocità delle cpu, ossia numero d istruzioni eseguite nell unità di tempo; Dimensione delle RAM; Capacità e velocità in scrittura/

Dettagli

Il modello di von Neumann

Il modello di von Neumann 1 Organizzazione di (quasi) tutti gli elaboratori moderni: personal computer, workstation, portatili, smartphone,... CPU memoria Control Unit I/O ALU 2 Il cuore è la CPU (Control Processing Unit): esegue

Dettagli

Lezione n. 2i Informatica e tecnologia informatica Sistema di elaborazione Algoritmo Linguaggi di programmazione Realizzazione di un programma

Lezione n. 2i Informatica e tecnologia informatica Sistema di elaborazione Algoritmo Linguaggi di programmazione Realizzazione di un programma Lezione2i Lezione n. 2i Informatica e tecnologia informatica Sistema di elaborazione Algoritmo Linguaggi di programmazione Realizzazione di un programma Informatica e tecnologia informatica Il termine

Dettagli

La macchina di Von Neumann. UNIVERSITÀ DEGLI STUDI DEL SANNIO Benevento DING DIPARTIMENTO DI INGEGNERIA CORSO DI "PROGRAMMAZIONE I"

La macchina di Von Neumann. UNIVERSITÀ DEGLI STUDI DEL SANNIO Benevento DING DIPARTIMENTO DI INGEGNERIA CORSO DI PROGRAMMAZIONE I 23/11/218 UNIVERSITÀ DEGLI STUDI DEL SANNIO Benevento DING DIPARTIMENTO DI INGEGNERIA La macchina di Von Neumann Unità periferiche Memoria Centrale CPU CORSO DI "PROGRAMMAZIONE I" Bus Dati Bus Indirizzi

Dettagli

ciclo di vita della soluzione (informatica) d un problema

ciclo di vita della soluzione (informatica) d un problema ciclo di vita della soluzione (informatica) d un problema errori run-time errori sintattici codice editor codice C++ compilatore esegui eseguibile OK risultati scorretti ma prima di arrivare a questo 1.

Dettagli