Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Un Personal Computer ( PC ) è progettato per avere più funzioni “general purpose”, può infatti
caricare più informazioni ed è utilizzabile per scopi differenti ( dispositivo generale ), inoltre
gestisce dati o programmi in modo omogeneo, a differenza dei soliti elaboratori elettronici. Il
suo funzionamento è basato su 2 elementi fondamentali:
Istruzioni da eseguire;
Dati da elaborare
2. Memoria centrale: è la memoria volatile RAM, contiene dati e istruzioni (programmi) poi
presi uno per volta e portati nella CPU
3. Interfacce delle periferiche: modulo che permette lo scambio di informazioni con il mondo
esterno senza specificare qual è la periferica ( es. stampante, tastiera, mouse, rete,
schermo...). Si considerano le interfacce delle periferiche invece delle periferiche stesse
perché ogni modello di interfaccia può essere utilizzato da più periferiche
Funzionamento:
Il processore estrae le istruzioni dalla memoria e le esegue, possono essere
manipolazione/operazioni di dati o trasferimento di dati
Durante ogni intervallo di tempo l’unità di controllo ( parte del processore ) stabilisce la
funzione da svolgere
Architettura di un calcolatore:
3 bus differenti che compongono il bus di sistema: bus indirizzi (specifica indirizzo su cui si
deve lavorare), bus dati (trasferisce i dati da CPU alla RAM, e viceversa), bus di controllo
(specifica se è una lettura o una scrittura)
MEMORIA CENTRALE MM
La memoria centrale è organizzata in righe e colonne composte da 32 BIT. Ogni riga è una cella
dove sono organizzate le informazioni. L’accesso a tutte le info della RAM è identico in quanto a
tempo, però devo accedere ad ogni cella in modo indipendente quindi ogni cella ha un suo
indirizzo. Le informazioni sono lette per cella: il numero di BIT usato nell’indirizzo è lo spazio di
indirizzamento. Se ho k BIT, 2k è lo spazio di indirizzamento, insieme di tutti gli indirizzi
presenti. Ho un numero finito di indirizzi che posso gestire. Quindi ho due tipo di registri:
- dei dati H BIT, danno la dimensione della quantità di informazioni,
- degli indirizzi K BIT, contiene un indirizzo di memoria
L’indirizzo mette a disposizione la posizione della cella al cui interno ci sono i dati. MM
collezione di parole di memoria (dimensione della cella), informazione contenuta in un
determinato indirizzo. Le parole di memoria hanno tutte le medesime dimensioni, ovvero 32
BIT. Ogni parola è indirizzata ad un particolare indice.
RAM : concretizzazione tecnologica della MM, di tipo volatile (ogni volta che spengo il PC
perdo tutto ciò che non ho salvato), ad accesso casuale, mi consente di leggere e
scrivere memoria:
ROM: memoria in sola lettura, salva le info che riguardano il calcolatore che non devono
essere modificate nemmeno in modo accidentale ( info che riguardano il boot,
accensione, potrei fare una modifica e il pc potrebbe non partire più ).
E’ il cuore del calcolatore, estrae istruzioni dalle memoria centrale, le interpreta e le esegue. E’
formato da:
Operazioni
aritmetiche e
logiche
La CPU dice di voler lavorare su un determinato indirizzo attraverso il bus di indirizzi alla
memoria centrale specificando con il bus di controllo l’operazione di lettura che la RAM deve
effettuare. La RAM accede alla cella e attraverso il bus dati il dato della cella viene propagato e
arriva alla CPU che lo mette nel registro dati. La RAM dice di aver finito attraverso il bus di
controllo e solo a quel punto la CPU può accedere al registro dati e leggere.
SCRITTURA
La CPU fornisce attraverso il bus indirizzi alla RAM l’indirizzo su cui voglio lavorare e il dato già
presente nel registro dati che voglio salvare a quel determinato indirizzo. La RAM salva quindi il
dato presente inizialmente nel registro dati nella cella corrispondente all’indirizzo richiesto.
Attraverso il bus di controllo la RAM dice di aver terminato la scrittura e solo a quel punto può
iniziare l’operazione successiva.
Ad esempio, nel registro dati di CPU è già presente il dato 70 che la RAM va a sostituire nella
cella che corrisponde all’indirizzo inviato dal bus degli indirizzi il cui dato è 123.
Solitamente periferiche come tastiera, mouse, stampante e monitor sono dispositivi esterni, si
trovano quindi fisicamente all’esterno del cabinet che racchiude il PC. Periferiche invece come
Floppy Disk e Hard Disk sono dispositivi interni. Le porte rappresentano le interfacce
periferiche.
Il cabinet detto anche chassis o case è il contenitore del computer. Può essere principalmente
di tre tipi:
- Il desktop, si sviluppa in orizzontale e si posiziona generalmente sotto il monitor
- Il tower, si sviluppa in verticale e può essere posto al di sotto della scrivania
- Il laptop
ARCHITETTURA DI UN PC
Si tratta di un grande circuito stampato sul quale ci sono vari alloggiamento/spazio per i
componenti elettronici (contenitore della macchina di Von Neumann ). E’ modulare e
modulabile, posso infatti aumentare la RAM inserendo i blocchi di giga di cui voglio aumentare
la memoria negli appositi alloggiamenti arancioni (devo avere uno slot libero per poterlo fare).
La batteria a bottone tiene attiva una parte di elettronica che tiene conto del tempo che passa
(anche se il PC si spegne, quando lo riaccendo il PC sa sempre che ore sono e quanto tempo è
passato ). E’ molto piccola e quindi consuma molto poco ma come ogni batteria è destinata a
scaricarsi e quando questa finisce il PC continua ad accendersi ma non sa più che ore sono.
MICROPROCESSORE CPU
MEMORIA
Banco di memoria RAM presenta una parte metallica con i connettori che vanno infilati nei
vari alloggiamenti. La CPU interagisce con la memoria per leggere e scrivere. E’ fisicamente
posto dove sono conservate tutte le informazioni su cui si sta lavorando. Serve per contenere i
dati elaborati dai programmi e le istruzioni che costituiscono i programmi stessi. Solo la CPU è
in grado di distinguere se le istruzioni memorizzate indicano un’operazione da svolgere, oppure
sono dati su cui il programma deve agire.
Memoria di Cache consente sia la lettura che la scrittura. È un tipo di memoria RAM che
permette un accesso ai dati più veloce rispetto alla RAM stessa, perché in incorporata nel chip
della CPU quindi più vicina al processore velocizzando lo scambio dei dati. Ha ordine di
memoria di qualche k o mega, mentre la RAM ha ordine di memoria di GB. Nella Cache si ha un
sottoinsieme dei dati e delle istruzioni. Quindi CPU prima controlla se il dato è in Cache e se
non è presente accede ai dati della RAM. I dati nella Cache sono più aggiornati e
successivamente vengono aggiornati sulla RAM.
ROM memoria in sola lettura, non può essere scritta. Contiene informazioni che non devono
mai essere modificate come l’accensione e la corretta manutenzione dell’unità di
elaborazzione. I livelli 1 e 0 che costituiscono i dati binari sono "incisi" durante il processo di
produzione del componente e non possono essere cambiati.
FORMATTAZIONE un hard disk è formato in modo tale da registrare dati su cilindri, tracce e
settori. I settori sono dei cerchi concentrici, le tracce sono una suddivisone dei settori stessi
mentre i cilindri sono dei gruppi di settori. Per poter utilizzare un hard disk è necessario
formattarlo, ma prima di questo è indispensabile partizionarlo e scrivere su di lesso le
informazione della/e partizione/i e del boot sector (informazioni riguardanti l’accensione).
Queste operazioni vengono gestite dal sistema operativo e in particolare da una parte del SO: il
file system. Il file system è diverso in base al tipo di sistema operativo che viene utilizzato.
Una volta formattati i dischi, il sistema operativo tiene traccia del posizionamento di ogni
singolo cluster di dati sulle tracce dei dischi e guida il movimento delle testine di lettura e
scrittura, avanti e indietro sulle varie tracce, mentre il disco è in rotazione in modo che possano
accedere rapidamente ad ogni singolo file. Comunque l’Hard Disk non potrebbe sostituire la
RAM per il ritardo causato dallo spostamento meccanico dei bracci delle testine che leggono i
dischi. Il numero dei settori e delle tracce in cui è suddiviso un disco rigido ne determina la
capacità. La combinazione di due o più settori su un’unica traccia costituisce un cluster .
La presenza di informazioni disordinate nel disco diminuisce le prestazione del computer e in
queste occasioni è necessario deframmentarlo per riordinare le varie informazioni ed evitare
che le testine debbano spostarsi in continuazione per leggere file.
DVD ( Digital Video Disk ) disco di plastica di aspetto simile a un CD. Utilizza un Laser
infrarosso a semiconduttore ( brucia il materiale ) capace di incidere e di leggere sulla
superficie del disco dei fori di dimensioni più piccole e su tracce più ravvicinate. A
seconda del ritorno di luce leggo 0 o 1 ( binario ) ed è per questo che quando segno la
parte trasparente di un CD o di un DVD non riesco più a leggere il contenuto: vado
infatti a perturbare la riflessione e la lettura sarà sbagliata. Generalmente si utilizzano
DVD double layer ( 2 strati sovrapposti di informazioni con letture diverse, raddoppiando
così la memoria ) double face, mentre inizialmente si utilizzavano DVD a singolo strato e
a singola faccia, i quali avevano 4,7 GB di memoria, a differenza di quelli utilizzati
adesso i quali, consentendo di scrivere informazioni diverse su 2 differenti facce, hanno
il doppio della memoria, 9,4 GB.
MONITOR
Capire come codificare numeri attraverso una rappresentazione binaria, alla base di altre
codifiche. Se so identificare numeri allora potrò tradurre anche numeri che in realtà
rappresentano altro. Es. considero l’insieme delle lettere, ogni lettera è associata ad un
numero. Faccio rappresentazione binaria di un numero quindi implicitamente ho una
rappresentazione binaria alla lettera associata a quel numero. La rappresentazione numerica è
una rappresentazione intermedia per altre tipi di informazioni come caratteri, suoni e immagini.
CARATTERI E TESTI
Trovare modo per codificare (rappresentazione binaria) dei dati. Per scrivere un programma
che descriva un logaritmo è necessario rappresentare istruzioni e dati utilizzando un formato
che il calcolatore sia in grado di:
- memorizzare
- elaborare
- trasmettere
1. Alfabeto dei simboli insieme di simboli ammissibili, come dei numeri interi o dei numeri
decimali con segno positivo e negativo. I simboli mi servono per costruire delle parole he
avranno una sintassi e una semantica.
TIPOLOGIE DI CODIFICHE
- CODIFICA BINARIA
Il calcolatore utilizza un alfabeto binario, di solito si usano dispositivi elettronici digitali in grado
di assumere due solo stati come on/off, 1/0, V/F. Questo però non limita le funzionalità di un
calcolatore, posso perdere alcune informazioni nel passaggio al binario/digitale ma questo mi
permette comunque l’utilizzo del calcolatore. Il simbolo o cifra binaria si indica con BIT ed è la
più piccola quantità di informazione che posso memorizzare, si ottiene selezionando una
configurazione da un insieme che ne contiene due. Un bit di informazione è dato da 0 oppure 1.
Il calcolatore tratta diversi tipi di dati (numeri, caratteri, ...) tutti rappresentati con la codifica
binaria. Quindi il problema è assegnare un codice univoco a tutti gli oggetti compresi in un
insieme predefinito.
Quanti oggetti diversi posso codificare con parole binarie composte da k bit?
Per definire un codice devo identificare due insiemi, insieme delle configurazioni ammissibili e
insieme degli oggetti da rappresentare, e associare gli elementi dei due insiemi.
Es. Associare una codifica binaria ai giorni della settimana. Ho 7 oggetti diversi quindi K =
log27 = 3. L’insieme delle configurazioni ammissibili è dato da 2 3 stati. L’insieme degli oggetti
da codificare sono i 7 giorni della settimana. N(7) <= 2 K = 8, rispetto questa regola. Ora posso
associare ogni codice (tranne uno) ad un giorno della settimana.
-Codice ASCII (American Standard Code for Information Interchange) utilizza 7 BIT, 7 BIT: 2 7 =
128 caratteri detti ASCII standard;
-Codice ASCII esteso utilizza 8 BIT (1 Byte) : 28 = 256 caratteri detti ASCII estesi. Comprende a
caratteri ASCII standard e alcuni caratteri semigrafici.
- Codice UNICODE utilizza 16 BIT (2 Byte) : 216 = 65 536 caratteri. Utile nel caso di alfabeti
particolarmente complessi come ad esempio quello cinese.
NUMERI
NUMERI NATURALI
Le codifiche più usate sono: esadecimale (sedici), ottale (otto), binaria (due).
La codifica binaria è alla base della codifica all’interna del calcolatore, usate per tutte le
informazioni.
B = due, A = (0,1), BIT è l’unità elementare di informazione.
La sequenza di bit bi (cifre binarie) bn bn−1 ... b1, avendosi bi ∈ {0, 1} rappresenta in base 2 il
valore:
n −1 n−2 0
bn×2 + bn−1×2 + ... + b1×2
Si calcolano i resti della divisione per 2 finché il risultato di una divisione diventa zero:
23 : 2 = 11. resto R0 = b0 = 1
11 : 2 = 5 resto R1 = b1 = 1
5:2=2 resto R2 = b2 = 1
2:2=1 resto R3 = b3 = 0
1:2=0 resto R4 = b4 = 1
2310 = 101112
Con una sequenza di n bit si possono rappresentare 2n numeri interi assoluti da 0 a 2n-1. La
lunghezza delle sequenze di bit adottate stabilisce il massimo numero che può essere
rappresentato.
Con 1 Byte (cioè una sequenza di 8 bit):
00000000bin = 0dec
3
00001000bin = 1 × 2 = 8dec
5 3 1 0
00101011bin=1×2 +1×2 +1×2 +1×2 =43dec
n −1
11111111bin = Σn = 1,2,3,4,5,6,7,8 1 × 2 = 255dec
Aumento dei BIT metto davanti in modo progressivo un bit 0 a sinistra, il valore del numero
non muta. Riduzione dei BIT cancello davanti in modo progressivo un bit 0 a sinistra, il valore
del numero non muta, ma bisogna arrestarsi quando si trova un bit 1.
Il primo BIT a sinistra rappresenta il segno del numero (BIT di segno), i bit rimanenti
rappresentano il valore del modulo che vado a codificare in decimale. Se il primo BIT è 0, il
segno è positivo, se il primo BIT è 1, il segno è negativo. Quindi il BIT di segno è applicato al
numero rappresentato, ma non fa propriamente parte del numero (non ha significato
numerico).
Questa codifica non è realmente utilizzato perché non è efficacie, ho due diverse
interpretazione di 0 così che 000…0 = 100…0, non rispettando la proprietà di unicità.
All’interno del calcolatore viene utilizzata la codifica del Complemento a 2 (C 2).
COMPLEMENTO A 2
Il C2 è un sistema binario, ma il primo BIT (quello a sinistra) ha sempre peso negativo (chiamato
BIT di segno), tutti gli altri BIT hanno peso positivo. La sequenza di bit: bn bn−1 ... b1
n−1 n−2 0
rappresenta in C il valore: b ×(−2 )+ b ×2 + ... + b ×2
2 n n−1 1
Conversione da decimale a C2
Se D ≥ 0:
dec
-Converti Ddec in binario naturale
-Premetti il bit 0 alla sequenza di bit ottenuta
Se D < 0:
dec
-Trascura il segno e converti Ddec in binario naturale
-Premetti il bit 0 alla sequenza di bit ottenuta
-Calcola l’opposto del numero così ottenuto, secondo la procedura di inversione in C2
-Il segno è incorporato nel numero rappresentato in C2, non è semplicemente applicato (come
in modulo e segno)
-Il bit più significativo rivela il segno: 0 per numero positivo, 1 per numero negativo (il numero
zero è considerato positivo), ma...
-Se il numero è negativo, NON si può distaccare il bit più significativo e dire che i bit rimanenti
rappresentano il valore assoluto del numero
Intervalli di rappresentazione:
n
-Binario naturale a n ≥ 1 BIT → [0, 2 )
n−1 n−1
-Modulo e segno a n ≥ 2 BIT → (−2 ,2 )
n−1 n−1
-C2 a n ≥ 2 BIT → [−2 ,2 )
La rappresentazione in virgola mobile (o floating point) è usata spesso in base 10 (si chiama
allora notazione scientifica):
0,137x108notazione scientifica per intendere 13.700.000dec
La rappresentazione binaria si basa sulla relazione Rvirgolamobile = M x 2E con M la mantissa 137
SUONI
Il suono è un’informazione continua nello spazio e nel tempo tradotta in una rappresentazione
digitlae, discreta, attraverso rappresentazione binaria.
CODIFICA AUDIO
Campionamento
Si misura l’ampiezza del segnale analogo a intervalli regolari, ogni T secondi detto periodo di
campionamento. La frequenza di campionamento F è data dall’inverso di T data in Hz.
Per segnali audio di tipo vocale la frequenza di campionamento è di 8 kHz. Maggiore è la
frequenza di campionamento maggiore sarà la quantità di instanti di tempo che devo andare a
considerare e quindi maggiore la quantità di dati che devo associare in quel segnale
digitalizzato.
Quantizzazione
I campioni estratti con la quantizzazione rappresentano le ampiezze con precisione arbitraria.
Per poter essere rappresentato da un calcolatore, il valore dell’ampiezza deve essere espresso
tramite un numero finito di BIT. La quantizzazione suddivide l’intervallo dei valori ammissibili in
2k BIT, dove k è il numero di BIT per campione. Più ho BIT maggiore è il numero delle differenti
configurazioni delle ampiezze che posso utilizzare quindi la dimensione di ogni singolo
intervallo sarà più piccola. Quando si approssima attraverso la quantizzazione si introduce un
errore chiamato errore di quantizzazione, che va a diminuire al crescere del numero dei BIT
così da avere un segnale più aderente rispetto al segnale audio originale. Da qua ho lo stesso
problema del campionamento, perché ho un grande numero di dati che si deve trasmettere
alla memoria.
Dopo avere discreto nel tempo e nello spazio un segnale, associo ad ogni campione una
particolare configurazione di BIT che mi permette di determinare un determinato segnale
audio.
Anche per i suoni si possono utilizzare tecniche (lossless o lossy) di compressione per
migliorare l’occupazione di memoria della sequenza di campioni, minimizzando la quantità di
informazione che vado a perdere. Le tecniche più efficaci (lossy) sfruttano le “debolezze”
dell’orecchio umano. Es. MPEG-1/2 Layer 3, detto anche MP3, perdono informazione sulla fase
di compressione. Le tecniche lossless dopo la compressione posso riottenere il file originale
perché non c’è perdita di informazione, però meno efficienti in termini di compressione.
IMMAGINI
IMMAGINI RASTER
Per rendere discreta l’immagini sovrappongo una griglia ad essa, l’insieme di pixel influenzati
dalla presenza del disco diventa la mia nuova informazione. Quindi ora si hanno un insieme di
parti distinte.
La risoluzione dell’immagine è la dimensione della griglia utilizzata per discretizzare
l’immagine. Aumentando la risoluzione (ovvero il numero di pixel) e quindi diminuendo la
dimensione del singolo pixel, la rappresentazione approssima meglio l’immagine originaria. Se i
pixel diventano troppo grossi non ho una buona rappresentazione dell’immagine originale.
All’interno di ogni pixel ho una singola informazione.
Dopo aver discretizzato l’immagine occorre rappresentare ogni pixel con un numero. Tale
numero dovrà rappresentare il colore associato al pixel, usando un certo range: si parla di
quantizzazione. Nel caso di immagini in bianco e nero senza sfumature sono sufficienti due solo
bit per ogni pixel. Lo 0 rappresenta i pixel bianchi e 1 rappresenta i pixel neri.
Se si ha un immagine in bianco e nero con sfumature si usa la rappresentazione in toni di
grigio: un byte per pixel, con 256 gradazioni di grigio per ogni pixel, o più byte per pixel, per
avere più gradazioni possibili.
Per le immagini a colori si usa la rappresentazione del colore secondo il modello RGB (red,
green, blu): sintesi additiva dei tre colori primari red, green e blu ognuno con la propria
codifica. Si ha una combinazione additiva dei tre colori binari. Quindi un particolare colore
viene scomposti nei tre componenti principali, che vengono codificati e associati ad una
particolare tonalità di rosso, verde e blu. La profondità cromatica è il numero di BIT per ogni
pixel (di norma 24, ovvero un byte per ogni colore). Maggiore è la quantità di BIT maggiore è la
resa grafica.
La risoluzione e la profondità cromatica determinano la dimensione di memoria necessaria a
memorizzare l’immagine.
Es. 1024x768 pixel x 256 toni di grigio / pixel = 1024x768 pixel x 8 bit / pixel = 768 Kbyte
immagine grigia
024x768 pixel x 3 componenti / pixel x 256 toni / componente = 1024x768 pixel x 3
componenti / pixel x 8 bit / pixel = 2304 Kbyte immagine a colori
-TIFF (Tagged Image File Format): uso di tag (etichette) descrittivi, 24 bit/pixel, compressione
senza perdita
-GIF (Graphics Interchange Format, Compuserve): più immagini nello stesso file, compressione
senza perdita
-PNG (Portable Network Graphics): compressione lossless, studiato per sostituire GIF (coperto
da brevetti). Supporta solo grayscale e RGB. Studiato per trasmissione di immagini su Web
-BMP (BitMaP, Microsoft e IBM):
1, 4, 8, 24 bit/pixel,
compressione senza perdita (RLE)
-JFIF (Jpeg File Interchange Format): compressione JPEG
(meglio noto come “formato JPEG”)
IMMAGINI VETTORIALI
Definiscono gli oggetti che compongono l’immagine mediante equazioni matematiche. Basate
su una rappresentazione geometrica delle immagini: usano relazioni matematiche tra punti e
linee per descrivere un’immagino. Non c’è perdita di dettaglio ingrandendo o rimpicciolendo
l’immagine. Sono già immagini digitali, create nel computer, quindi non hanno bisogno di
essere discretizzate. Non esiste il concetto di pixel e risoluzione. L’oggetto viene ricostruito
mediante le sue proprietà geometriche.
Le immagini vettoriali sono composti da oggetti. Tutti gli oggetti sono costruiti a partire da una
serie di primitive geometriche come punti, linee, rettangoli ed ellissi, tutte basate su equazioni
matematiche per rappresentare le immagini nel computer.
Vantaggi:
-Fatta di oggetti geometrici che formano gli oggetti: Line (x1,y1,x2,y2) Circle (x,y,radius)
-Può essere scalata a qualsiasi dimensione senza perdere qualità
-Indipendente dalla risoluzione
-Occupano pochissimo spazio in termini di memoria (dell’ordine dei kilobytes), non avendo
insieme di pixel
Svantaggi:
-Le immagini vettoriali sono per loro natura generate all’interno della macchina
-Non è il miglior formato per immagini di tipo fotografico con toni continui, luci, ombre, miscele
di colore.
Esistono formati misti, sia vettoriali che scalari. Il testo è vettoriale, non perdono qualità, e
l’immagine è scalare. Classico formato di questo tipo è il PDF.
VIDEO
Il video è una successione di immagini fisse (frame) trasmesse con velocità sufficientemente
elevata. Il movimento è rappresentato già in modo discreto nei media: con un numero
abbastanza alto di fotogrammi fissi (15-30) l’occhio umano percepisce il movimento come un
continuo.
Il video interlacciato è il segnale video di tipo televisivo utilizza un formato interlacciato. Prima
vengono generalmente le righe pari, poi quelle dispari così da generare 50 semiquadri al
secondo.
Nel formato progressivo ogni frame è costituito sia dalle righe pari che da quelle dispari.
CODIFICA VIDEO
Potrei in principio codificare separatamente ogni fotogramma come immagine fissa Tecnica
usata da molte fotocamere compatte, che salvano i filmati ripresi in formato Motion-JPEG. Così
si è in grado di ottenere rapporti di compressione dell’ordine 10-20 senza eccessiva perdita di
qualità.
Per ottenere rapporti di compressione più alti è necessario sfruttare la ridondanza temporale,
ovvero che frame consecutivi in una sequenza di immagini sono simili l’uno all’altro. Codifico
solo le differenze tra i frame successivi, senza un degrado eccessivo della qualità.
DENTRO AL CALCOLATORE
INFORMAZIONE E MEMORIA
Una parola di memoria è in grado di contenere una sequenza di n ≥ 1 bit. Di solito si ha: n = 8,
16, 32 o 64 bit. Una parola di memoria può dunque contenere gli elementi d’informazione
seguenti:
-un carattere (o anche più d’uno)
-un numero intero in binario naturale o in C2
-un numero frazionario in virgola mobile.
-alcuni bit della parola possono essere non usati
Lo stesso può dirsi dei registri della CPU
L’applicazione che sta usando la memoria che sa come leggere e come scrivere, non posso
distinguere, dare un semantica ad un gruppo di BIT semplicemente guardando la loro
sequenza.
ALGEBRA DI BOOLE
Codifica l’algebra della logica che si basa su operazioni logiche applicabili a operando logici,
cioè a operandi in grado di assumere solo i valori vero e falso. Quindi si rappresenta vero con il
BIT 1 e falso con il BIT 0.
Operatori logici binari operazione OR, somma logica e operatore AND, prodotto logico.
Operatore logico unario operatore NOT, inversione
Ci servono per andare a costruire con gli operandi delle combinazioni di operazione sempre più
compresse. L’operatore NOT precede l’operatore AND, che a sua volta precede l’operatore OR.
Gli operatori logici mi permettono di modellare alcune forme di ragionamento:
-A = è vero che 1 è maggiore di 2? (sì o no, qui è no) = 0
-B = è vero che 2 più 2 fa 4? (sì o no, qui è sì) = 1
-A and B = è vero che 1 sia maggiore di 2 e che 2 più 2 faccia 4? Si ha che A and B = 0 and 1 =
0, dunque no
-A or B = è vero che 1 sia maggiore di 2 o che 2 più 2 faccia 4? Si ha che A or B = 0 or 1 = 1,
dunque sì
OR, AND e NOT vengono anche chiamati connettivi logici, perché funzionano come le
congiunzioni coordinanti “o” ed “e”, e come la negazione “non”, del linguaggio naturale. Si
modellano ragionamenti (o deduzioni) basati solo sull’uso di “o”, “e” e “non”.