Estratto del documento

Alice Giussani

Informatica

L’informatica è una scienza “Computer Science” che tramite una metodologia sistematica e

rigorosa si occupa di studiare i fondamenti teorici della memorizzazione, della rappresentazione e

dell’elaborazione dell’informazione , mediante procedure automatizzabili e Le tecniche pratiche per

l’implementazione e per l’applicazione delle metodologie computazionali sviluppate per risolvere i

vari problemi.

Come sono fatti i computer

L’elemento base di un circuito digitale è il transistor ed ogni transistor implementa una porta

logica, inoltre ogni porta logica realizza una determinata operazione tra variabili Booleane. Un

insieme di porte logiche connesse fra di loro costituisce una rete logica, che svolge un determinato

«calcolo» sui valori delle variabili che riceve in input, e restituisce un valore in output (il risultato)

Porta logica AND A,B e C assumono valori booleani (Bit)

 0 o 1

La porta logica AND garantisce che C

riceve un impulso elettrico solo se sia A che B hanno un impulso

elettrico

Porta logica OR A,B e C assumono valori booleani (Bit) 

0 o 1

La porta logica OR garantisce che C

riceve un impulso elettrico solo se o A o

B (o entrambi) hanno un impulso elettrico

Porta logica NOT A e C assumono valori booleani (Bit)  0 o 1

La porta logica NOT garantisce che C riceve un

impulso elettrico solo se A non ha un impulso

elettrico 1

Alice Giussani

Porte logiche NAND e NOR

Così come è possibile comporre le operazioni algebriche (somma, prodotto, ecc.), è possibile

comporre le operazioni logiche booleane

C = (A AND B) OR (NOT B)

Architettura di von Neumann

Sviluppata negli anni 40 del XX secolo, è l’architettura «hardware» su cui è basata la maggior

parte dei computer programmabili Le componenti principali

dell’architettura di von Neumann

(processore, memoria,

periferiche, bus) costituiscono le

componenti fisiche di un

computer e vengono chiamate

hardware

Bus di sistema = Serve per collegare processore e memoria per lo scambio di informazioni e dati

e diverse periferiche possono essere collegate ad un computer attraverso il bus

Hard disk= periferica di memorizzazione persistente ad alta capacità, viene chiamata memoria di

massa o memoria secondaria ed è un tipo di memoria non volatile. Tiene in memoria i programmi e

2

Alice Giussani

i dati quando non sono utilizzati direttamente e Il processo di salvataggio permette di copiare i dati

(in modo permanente) dalla memoria primaria (RAM) all’hard disk durante l’esecuzione di un

programma

Processore = È la parte del computer dedicata all’elaborazione dei dati, ed è coinvolto in tutte le

attività del sistema ed è costituito da due componenti:

• Unità di controllo

• Unità operativa, o unità aritmetico/logica (ALU)

Il processore è composto da circuiti elettronici (AND,OR,NOT….), il suo scopo è quello di eseguire

istruzioni deterministiche  una sola interpretazione, ed elementari . queste istruzioni sono

sequenze di 0 e 1 memorizzate nella memoria primaria sotto forma di sequenze di bit. La memoria

contiene anche i dati su cui le istruzioni operano

Memoria primaria (RAM)= E’ la parte del computer dove si trovano i programmi (istruzioni) e i dati

usati durante l’elaborazione. Questa memoria se no alimentata è volatile.

È organizzata in una sequenza di locazioni ordinate (celle) dove ogni locazione contiene 8 bit= 1

byte e a ciascuna di esse è associato un indirizzo.

Con 1 byte si possono memorizzare un numero limitato di informazioni e per rappresentare dati

che occupano più di un byte in memoria usiamo locazioni consecutive e ci riferiamo a loro usando

l’indice della prima locazione.

La memoria è chiamata RAM= Random Access Memory perché Si può accedere a qualsiasi

elemento in memoria in modo diretto (o casuale), cioè in qualsiasi ordine, senza dover scorrere

tutti gli elementi precedenti.

Ciclo macchina fetch/execute

Il processore per eseguire le istruzioni segue il ciclo macchina

Esempio:

ADD 4000, 2000, 2080

Cosa fa: addiziona il valore contenuto all’indirizzo

2000 con il valore contenuto all’indirizzo 2080 e

mette il risultato all’indirizzo 4000

Concetto chiave: nelle istruzioni sono codificati gli

indirizzi in memoria dei dati su cui eseguire l’istruzione , Si dice che le istruzioni fanno riferimento

ai valori dei dati in modo indiretto (riferimento indiretto).

Lettura istruzioni

Il numero della prossima istruzione da eseguire è memorizzato in un registro nell’unità di controllo

del processore, detto Program Counter (PC) . Il PC viene incrementato automaticamente quando

finisce di interpretare un’istruzione, per passare all’esecuzione della prossima istruzione

1) fetch istruzione

l’istruzione corrente viene spostata nella memoria all’interno dell’unità di controllo 3

Alice Giussani

2) decodifica istruzione

l’istruzione viene esaminata, l’ALU è configurata con l’operazione da eseguire e sono

calcolati gli indirizzi degli operandi sorgente e destinazione

3) fetch dati

gli operandi sono trasferiti dalla memoria all’ALU

4) esecuzione istruzione

all’interno dell’ALU viene calcolato il risultato dell’operazione

5) restituzione risultato

il valore del risultato è trasferito all’ALU dall’ indirizzo di destinazione e il PC viene

incrementato di 4 byte con l’istruzione successiva

Istruzioni eseguite dal processore

Istruzioni aritmetiche: ADD, MULT, DIV • Istruzioni logiche: AND, OR • Shift: spostamento di bit

verso destra o sinistra • Istruzioni di controllo del flusso: salti (goto) • Spostamento di dati tra

aree di memoria • Ricezione di segnali dai dispositivi (periferiche)

Linguaggio macchina

Un programma è una serie di istruzioni elementari codificate in linguaggio macchina , La serie è

molto lunga (anche milioni di righe di codice) e prende il nome di codice oggetto (o codice

binario)

E’ possibile scrivere istruzioni più semplici usando un linguaggio «primitivo», detto assembly.

Ognuna di queste istruzioni viene poi trasformata in un’istruzione in linguaggio macchina: Il

programma che effettua la trasformazione in linguaggio macchina si chiama assembler.

I linguaggi di programmazione di alto livello permettono di specificare istruzioni in linguaggi più

semplici per l’uomo e Il compilatore trasforma ogni istruzione di un programma di alto livello in

una o più istruzioni elementari

Quando un computer è in esecuzione, esegue dei programmi: Insiemi di istruzioni finalizzate a

risolvere un problema. I programmi sono le componenti software di un computer 4

Alice Giussani

Classificazione del software

software applicativo software di sistema

permette agli utenti di svolgere i loro compiti permette di gestire il computer:

Effettua la fase di avvio (booting) – Controlla la

memoria – Gestisce le periferiche – Gestisce il

multitasking– Gestisce il file system

Rappresentazione dell’informazione

Rappresentazione dei numeri

Numero: concetto astratto utilizzato per descrivere una quantità

Rappresentazione: Formalismo utilizzato per rappresentare i numeri. Ogni numero corrisponde

ad una configurazione univoca dei simboli (cifre) usate per la sua rappresentazione

NOTAZIONE ADDITIVA NOTAZIONE POSIZIONALE

x --> un oggetto se cambiamo la se cambio la

posizione di x il 516 ≠651 posizione il numero

xx --> due oggetti numero non cambia

cambia 5

Alice Giussani

la memoria utilizza sequenze di bit  numerazione in base 2 che come quella in base 10 è

posizionale n

2

In generale, con n bit possiamo rappresentare valori diversi

Da base 2 a base 10 Da base 10 a base 2

Per i numeri interi con segno si usa la notazione in complemento a due: un bit viene assegnato per

il segno (1 se negativo e 0 se positivo).

Rappresentazione del testo

Per la memorizzazione di un testo senza formattazione possiamo associare ad ogni carattere un

numero in in binario.

Esistono diverse codifiche : ASCII, ASCII esteso, Unicode

Il codice ASCII esteso utilizza 8 bit per ogni Il codice Unicode utilizza 4 byte per ogni

carattere  256 caratteri 32

2

carattere caratteri

Rappresentazione testo con formattazione

La formattazione E’ l’aggiunta di informazioni su come deve essere mostrato il testo

Lo spazio necessario per la memorizzazione di queste informazioni dipende dalla codifica

utilizzata, generalmente per risparmiare spazio vengono usate delle marcature (caratteri speciali)

per indicare la formattazione del testo che lo segue

Rappresentazione dell’informazione multimediale

L’immagine digitale è una rappresentazione di un’immagine (bidimensionale) tramite un’opportuna

serie di valori, in un immagine bitmap i valori formano una matrice di punti, ogni punto (=pixel)

indica le caratteristiche dell’immagine da rappresentare

• il pixel è l’elemento unitario dello schermo del computer

• Il computer visualizza ogni pixel nel colore dell’immagine da rappresentare  maggiore

numero di pixel maggiore è la risoluzione. 6

Alice Giussani

Immagini in bianco e nero Dividiamo l’immagine in pixel numerandoli, successivamente

usiamo 0 per il bianco e 1 per il nero  1 bit per ogni pixel

Immagini in scala di grigio Non basta più un bit per rappresentare le varie sfumature di grigio 

il numero di bit necessari per rappresentare un pixel viene

chiamato profondità del colore ( es. 256 tipi di grigio = 8 bit)

Immagini a colori

Per rappresentare i colori, si usano le combinazioni

di tre componenti: RGB (Red Green Blue).

I colori percepiti dal nostro occhio sono dovuti alla

l

Anteprima
Vedrai una selezione di 6 pagine su 21
Informatica per biotecnologia Pag. 1 Informatica per biotecnologia Pag. 2
Anteprima di 6 pagg. su 21.
Scarica il documento per vederlo tutto.
Informatica per biotecnologia Pag. 6
Anteprima di 6 pagg. su 21.
Scarica il documento per vederlo tutto.
Informatica per biotecnologia Pag. 11
Anteprima di 6 pagg. su 21.
Scarica il documento per vederlo tutto.
Informatica per biotecnologia Pag. 16
Anteprima di 6 pagg. su 21.
Scarica il documento per vederlo tutto.
Informatica per biotecnologia Pag. 21
1 su 21
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher Alicegi di informazioni apprese con la frequenza delle lezioni di Fondamenti di informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Milano - Bicocca o del prof Besozzi Daniela.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community