Estratto del documento

Capitolo 1: Macchina di Von Neumann

E' l'architettura di calcolatore "general purpose" (quindi di applicabilità generale), ideata intorno al 1940, basata sull'ipotesi fondamentale che i dati e le istruzioni operanti su di esso siano codificabili in uno stesso formato. Il programma non è più quindi una parte hardware del sistema ma diventa software conferendo una grande versatilità a questa nuova architettura.

Sottosistemi di un calcolatore

Essa si compone di tre sottosistemi (+ il sistema d’interconnessione):

  • Sottosistema di memorizzazione: memorizza istruzioni e dati. Si compone dell'Hard Disk (memoria di archiviazione) e della RAM;
  • Sottosistema di elaborazione: esegue in modo sequenziale tutte le istruzioni passando dall'una all'altra. Esso si compone della CPU (Central Processing Unit);
  • Sottosistema di interfaccia: gestisce l'input dei dati verso il calcolatore (mediante mouse, tastiera, microfono) e l'output dei risultati dell'elaborazione verso gli utenti (con monitor, casse audio, stampante). Permette inoltre di trasmettere e ricevere informazioni anche da altri calcolatori e di acquisire informazioni dall'ambiente (con dei sensori) e operare sull'ambiente (con attuatori);

Modi d'uso del calcolatore

Le funzioni del calcolatore sono andate via via modificandosi; infatti, inizialmente esso era adibito unicamente al calcolo, mentre ora è lo strumento prediletto per l'elaborazione e la trasmissione di informazione. Si è passati così alla confluenza di due settori inizialmente separati, ossia l'IT (Information Technology) e le telecomunicazioni, nell'ICT (Information and Communication Technology), la cui importanza è evidenziata dal successo del World Wide Web.

Ci sono tre tipi di utilizzo di un calcolatore:

  • Interazione utente – calcolatore = il PC viene utilizzato per la risoluzione di un problema grazie ad un programma o per il semplice accesso ad un archivio salvato in locale;
  • Interazione utente – calcolatore – calcolatore remoto = il proprio PC viene utilizzato per accedere ad un secondo calcolatore in rete col primo per la risoluzione remota di un problema (es. Word attraverso internet) o per l'accesso ad archivi remoti (es. Wikipedia);
  • Interazione utente – calcolatore – calcolatore remoto – altro utente = scambio di documentazione (mail) o risoluzione cooperata di un problema. Essa può essere sincrona (chat) o asincrona (e-mail);

Informazione e supporto

Informatica = scienza della rappresentazione e dell'elaborazione dell'informazione;

L'informazione esiste solamente se esiste un supporto sul quale essere trasmessa (ci può essere l'inchiostro ma se non ho dove scrivere non posso "informare"). Non bisogna confondere l'informazione col supporto in quanto esso è solo lo strumento attraverso cui l'informazione può passare. Va inoltre detto che la stessa informazione può essere trasmessa su supporti diversi (10 scritto su un foglio, 10 palline, 10 tacche su una scala graduata) così come uno stesso supporto può portare informazioni diverse.

Un supporto per poter portare informazione deve poter assumere almeno due configurazioni e per interpretare tali configurazioni è necessario conoscere un codice che permetta di decodificare l'informazione. Senza la conoscenza del codice una stessa configurazione può portare diversi significati (come . nel codice Morse dove li posso interpretare come 1) punto, 2) linea, 3) lettera A; 3) messaggio corrispondente alla lettera A, ad esempio attuare piano A).

Il ruolo di "unità elementare" d’informazione prende il nome di bit (binary unit).

  • Codifica = operazione con cui l'informazione viene scritta su un supporto;
  • Decodifica = operazione con cui l'informazione viene recepita dall'utente;

La codifica binaria: introduzione

Per non incorrere in ambiguità di linguaggio l'alfabeto utilizzato dai calcolatori (Linguaggio macchina) si compone di due simboli 0 e 1 (visti come simboli, non numeri, infatti possono significare qualsiasi cosa), alfabeto che prende il nome di binario, composto da bit (8 bit = 1 byte).

  • Algoritmo = descrizione della soluzione di un problema, ossia sequenza finita d’istruzioni operante su dati;
  • Programma = algoritmo scritto in modo da poter essere eseguito da un calcolatore (linguaggio macchina);

k = [log S]

Dato il numero di elementi da identificare, per conoscere il numero di bit richiesti all’operazione si ha: con 2k = n° bit ed "S" = n° elementi da identificare. Le *+ indicano l'intero maggiore o uguale ad S.

Es. Ho 10 elementi, quanti bit mi occorrono? k = [log 10] = [3,32] = 4

Da base qualsiasi (BQ) a base 10

Esempio: Da base 2 a base 10

5 4 3 2 1 0
1 0 1 1 0 0

0101100 = 1 x 25 + 0 x 24 + 1 x 23 + 1 x 22 + 0 x 21 + 0 x 20 = 32 + 0 + 8 + 4 + 0 + 0 = 44 dieci

Esempio: Da base 4 a base 10

3 2 1 0
2 3 0 2

2302 = 2 x 43 + 3 x 42 + 0 x 41 + 2 x 40 = 128 + 48 + 0 + 2 = 178 dieci

Esempio: Da base 16 a base 10

2 1 0
F 2 B

F2B = F x 162 + 2 x 161 + B x 160 = 3840 + 32 + 11 = 3883 dieci

Da base 10 a base 2

Numero in base dieci Divendo in base dieci

Quoziente in base dieci Resto in base due

143 : 2 71 1 143 = 100011112

Regola generale:

Si continua a dividere segnando il quoziente e il resto a parte. Infine si leggono i resti dal basso verso l'alto.

Codifica binaria dei numeri interi (insieme Z)

I numeri interi, appartenenti quindi all'insieme Z, si possono rappresentare:

  • Codifica modulo e segno: Utilizza il primo bit della successione per il segno (1 negativo; 0 positivo) e i restanti per la rappresentazione del modulo. Questa codifica permette di rappresentare i numeri compresi fra -2n-1 + 1 e 2n-1 – 1. Tale codifica ha però un problema: rappresenta il numero 0 in due modi, +0 e -0, come se essi fossero diversi.
  • Codifica in complemento a due: il numero x è rappresentato dal valore binario naturale corrispondente a 2n + x, dove n è il numero esatto di bit utilizzati per la codifica. Questa codifica permette di rappresentare numeri compresi fra -2n-1 e 2n-1 – 1. Tale codifica risolve così il problema della doppia rappresentazione del numero 0. La codifica in complemento a due ha due caratteristiche da tenere bene a mente: 1) quando viene aggiunto uno o più bit per configurare, mi basta aggiungere uno 0 se il primo numero da sinistra è uno 0 oppure un 1 se il primo numero è un 1; 2) Se io ho la codifica in complemento a due per un numero positivo (o negativo), per trovare il negativo (o positivo) di quel valore mi basta procedere da destra verso sinistra, tenere fisso il primo 1 e cambiare tutte le cifre successive (1 ⟶ 0; 0 ⟶ 1).

Esempi: Guardo pagina 34 del libro per chiarimenti con tabella esempio

+1 = 001 = 0001 -1 = Non Esiste in base due = 1001A) dieci

Anteprima
Vedrai una selezione di 3 pagine su 7
Informatica - Appunti Pag. 1 Informatica - Appunti Pag. 2
Anteprima di 3 pagg. su 7.
Scarica il documento per vederlo tutto.
Informatica - Appunti Pag. 6
1 su 7
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 Ma_fack di informazioni apprese con la frequenza delle lezioni 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à "Carlo Cattaneo" (LIUC) o del prof Buonanno Giacomo.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community