lezione 5 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università di Pavia (per iniziare…)
lezione 5 quinta lezione: la sintassi del computer vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università di Pavia (continua…)
lezione 5 il calcolatore: una definizione dispositivo elettronicodispositivo elettronico programmabile finalizzato alla gestione delle informazioni hardware tutto quanto non possiamo trasmettere per telefono... (continua…) (per saperne di più clicca sulle parole evidenziate in giallo)
lezione 5 dentro il computer fai click per approfondire... (continua…)
lezione 5 il calcolatore: componenti e funzioni (continua…) (torna indietro…)
lezione 5 il sistema operativo (due viste) dallesterno il sistema operativo fornisce allutente uninterfaccia conveniente dallinterno 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 (continua…) (torna indietro…)
lezione 5 il sistema operativo come intermediario il sistema operativo agisce come un intermediario tra le risorse hardware del computer e gli applicativi software installati sul computer hardware software sistema operativo (continua…) (torna indietro…)
lezione 5 il sistema operativo (continua…) (torna indietro…)
lezione 5 fine quinta lezione quinta lezione la sintassi del computer (lezione 6)
lezione 5 il calcolatore è programmabile... è cioè in grado di eseguire istruzioni operando su dati rappresentati come quantità discrete...istruzioni (per saperne di più clicca sulle parole evidenziate in giallo)
lezione 5 la cpu è 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.programmi (fine excursus) (per saperne di più clicca sulle parole evidenziate in giallo)
lezione 5 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 lesecuzione 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 (continua…) (torna alla lezione 3)
lezione 5 istruzioni di trasferimento: registri RAM ALU R0R0 R1R1 R2R2 LOAD STORE cpu RAM (continua…) (torna indietro…)
lezione 5 formato: codice-op n. registro indirizzo RAM 8 bit 4 bit 20 bit 1 parola (32bit) LOAD STORE Codici: (continua…) (torna indietro…)
lezione 5 funzioni aritmetiche: eseguono somma, differenza, moltiplicazione e divisione usando i registri come operandi ADD FADD SUB FSUB MULT FMULT DIV FDIV RiRi RjRj C Op (continua…) (torna indietro…)
lezione 5 codice-op reg 1 reg 2 8 bit 4 bit 4 bit inutile 1 parola (32 bit) formato: (continua…) (torna indietro…)
lezione 5 STORE R2 X; STOP; R0 R1? STORE R2 Y; STOP; SINO test strutture di controllo: se allora (continua…) (torna indietro…)
lezione 5 permettono di saltare ad unaltra istruzione del programma a seconda del contenuto di RC (cioè a seconda del risultato di un confronto) BRLT BRNE BRLE BRGE BREQ BRGT BRANCH strutture di controllo (continua…) (torna indietro…)
lezione 5 codice-op indirizzo RAM 8 bits inutile 20 bit 1 parola formato: (fine excursus) (torna indietro…) (torna alla lezione 3)
lezione 5 lalgoritmo (fine excursus) (continua…)
lezione 5 lalgoritmo (II) (continua…) (torna indietro…)
lezione 5 proprietà di un algoritmo (continua…) (torna indietro…)
lezione 5 gerarchia di linguaggi linguaggio naturale diagramma a blocchi linguaggio di programmazione (per saperne di più clicca sui blocchi!) (continua…) (torna indietro…)
lezione 5 gerarchia di linguaggi (continua) linguaggio di programmazione (per saperne di più clicca sui blocchi!) traduttore linguaggio assembler (dipende dalla macchina) linguaggio macchina (dipende dalla macchina) assemblatore approfondisci con un click… (fine excursus) (torna indietro…)
lezione 5 diagramma a blocchi inizio leggi a e b c = a - b max = a c > 0 ? fine max = b sì no passo 0 passo 1 passo 2 (continua…)
lezione 5 ciclo o iterazione FMULT R4 R2; SUB R3 R1; NO SI R3 = R0? (fine excursus)
lezione 5 lalgoritmo (fine excursus)
lezione 5 linguaggio di programmazione #include int main(void) { const int a = 3; const int b = 1; if( a > b) puts( ciao mondo!); else return FALSE; return TRUE; } (fine excursus)
lezione 5 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; (continua…)
lezione 5 novità dellassembler 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 (continua…) (torna indietro…)
lezione 5 codice-op mnemonici: trasferimento: LOAD (RAM CPU) e STORE (CPU RAM) aritmetiche: ADD,SUB,DIV,MULT,MOD, FADD,FSUB,FDIV,FMULT input/output: READ (U-INP CPU), WRITE (CPU U-OUT) test: COMP, FCOMP salto: BREQ,BRGT,BRLT, BRGE,BRLE, BRANCH terminazione: STOP (fine excursus) (torna indietro…)
lezione 5 due tipi di traduttori compilatori accettano in ingresso lintero programma e producono in uscita la rappresentazione dellintero 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... (continua…)
lezione 5 due tipi di traduttori (II) compilatori per ogni programma da tradurre, lo schema viene percorso una sola volta prima dellesecuzione. interpreti lo schema viene attraversato tante volte quante sono le istruzioni che compongono il programma; ad ogni attivazione dellinterprete su una particolare istruzione, segue lesecuzione dellistruzione stessa (torna indietro…) (continua…)
lezione 5 due tipi di traduttori (III) compilatori nella compilazione la traduzione avviene una volta per tutte prima dellesecuzione; questo garantisce prestazioni più veloci nella compilazione si possono attuare processi di ottimizzazione delleseguibile dato che il compilatore lavora su tutto leseguibile interpreti ad ogni modifica del programma, la compilazione deve essere ripetuta completamente per rigenerare il codice eseguibile; linteprete consente invece di eseguire il programma non appena il codice sorgente sia stato aggiornato (torna indietro…) (continua…)
lezione 5 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) (torna indietro…)