La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Sistemi di numerazione Lezione 1 Programmazione MIDI (Prof. Luca A. Ludovico)

Presentazioni simili


Presentazione sul tema: "Sistemi di numerazione Lezione 1 Programmazione MIDI (Prof. Luca A. Ludovico)"— Transcript della presentazione:

1 Sistemi di numerazione Lezione 1 Programmazione MIDI (Prof. Luca A. Ludovico)

2 Introduzione Un sistema di numerazione è un sistema utilizzato per esprimere i numeri e possibilmente alcune operazioni che si possono effettuare su di essi. Storicamente i sistemi di numerazione si sono riferiti alla successione dei cosiddetti numeri naturali, ossia: –numeri interi positivi (1, 2, 3, 4,...); simbolo N –numeri interi non negativi (0, 1, 2, 3, 4,...); simbolo N 0 I più antichi sistemi di numerazione hanno base 10, con riferimento all'atto di contare sulle dita delle mani. Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

3 Sistema di numerazione additivo Idea primordiale: ad ogni simbolo è associato un valore e il numero rappresentato è dato dalla somma dei valori dei simboli. Ad esempio, ciascun dito o sassolino rappresenta ununità. Il totale è dato dalla somma delle singole unità. Caso reale: il sistema di numerazione romano originario (I, II, III, IIII, V, VI, VII, VIII, VIIII, X, …), che nel medioevo diventa anche sottrattivo (I, II, III, IV, V, VI, VII, VIII, IX, X, …). Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

4 Sistema di numerazione posizionale Un numero è rappresentato da una sequenza di cifre. Es.: 333 è un numero, il singolo 3 è una cifra. In un sistema posizionale, il valore di ogni cifra dipende dalla sua posizione all'interno della sequenza. La cifra all'estrema destra ha il valore minore (cifra meno significativa), quella all'estrema sinistra il valore maggiore (cifra più significativa). Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

5 Definizione di base E' possibile scegliere il numero di cifre (o simboli) differenti utilizzabili in una notazione posizionale. Tale numero prende il nome di base. Nel sistema decimale si usano le cifre 0,1,2,3,4,5,6,7,8,9. Nel sistema binario si usano le cifre 0 e 1. La base 2 è la più piccola possibile per un sistema di numerazione. Il valore posizionale è legato alle potenze di 2. Nel sistema ottale si usano 0,1,2,3,4,5,6,7. Il valore posizionale è legato alle potenze di 8. Nel sistema esadecimale si usano 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F. Il valore posizionale è legato alle potenze di 16. Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

6 Confronto tra base 2, 10 e 16 Base 2Base 10Base A B C D E F ……… Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

7 Come si rappresentano numeri >= base Esempio in base 16 – A B C D E F sono sufficienti per i numeri 0..15; ma poi? – A 0B 0C 0D 0E 0F è la rappresentazione su due cifre dei numeri sopra –La cifra più significativa ora diventa il secondo simbolo dellalfabeto: A 1B 1C 1D 1E 1F –Esaurita la sequenza, la cifra più significativa diventa il terzo simbolo dellalfabeto: –Quando si esauriscono i simboli dellalfabeto, si aggiunge unulteriore cifra. Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

8 Alcune osservazioni sulle basi La rappresentazione dei numeri in una data base piuttosto che in unaltra ne cambia la scrittura (ad es = = F 16 ), ma non il significato semantico. Pertanto anche le operazioni matematiche danno lo stesso risultato e godono delle stesse proprietà in ogni base. Si osservi che in una generica base n, i simboli utilizzati ricadono convenzionalmente nellintervallo [0..n-1]. –Ad esempio, i simboli usati come cifre in base 10 sono [0..9] –Ne consegue che ad es. il numero 1041 non possa esistere in alcuna base n4. Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

9 Alcune osservazioni sulle basi Data una base n e un numero composto da m cifre, quante differenti combinazioni si possono ottenere? n m Questo perché ogni cifra rappresenta una casella che è possibile valorizzare con un simbolo scelto tra gli n simboli della base n. Con 2 caselle, si hanno n x n combinazioni di simboli, e via dicendo… –Esempio: con 2 cifre in base 10, si ottengono 10 2 diverse combinazioni: [00..99] –Esempio: con 4 cifre in base 2, si ottengono 2 4 diverse combinazioni: [ ] Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

10 Conversione da base n a base 10 Per una numerazione in base n, con n numero naturale > 1, la base supporta n cifre distinte. Sia A un numero rappresentato come una sequenza di k+1 cifre a k …a 0. Esso si può esprimere in base 10 secondo la formula ove b è la rappresentazione in base 10 di n. Ad esempio, se n = 2 il numero a = = = = 5 10 Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

11 Conversione da base 10 a base n (num. interi) Metodo delle divisioni successive: consiste nel prendere il numero da convertire e dividerlo per la base considerata; prenderne il quoziente e dividerlo ancora per la base, e così via, fino a che non si ottiene come risultato un quoziente zero. In questa sequenza di divisioni occorre ricordare i resti che man mano si ottengono, perché sono questi che, letti in senso inverso dall'ultimo al primo, costituiscono proprio la conversione cercata. Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

12 Algoritmo Sia a il numero da convertire. 1.Si divide a per la nuova base n ; sia q il quoziente ed r il resto. 2.Si converte r nella corrispondente cifra della nuova base n. 3.Si aggiunge la cifra così ottenuta a sinistra delle cifre ottenute in precedenza. 4.Se q = 0, fine; altrimenti poni a = q e torna al passo 1. Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

13 Esempio: da base 10 a base 2 a = a = = a = a = = Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

14 Esempio: da base 10 a base 5 e viceversa a = a = = a = = = = Osservazione: questo tipo di verifica può sempre essere fatto per controllare la correttezza del risultato Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

15 Come fare esercizio di conversione tra basi Tramite i metodi illustrati, è possibile convertire i numeri da base 10 a una qualsiasi base n (metodo delle divisioni successive) e da una qualsiasi base n a base 10 (somma di prodotti). Ad esempio, la Calcolatrice di Windows in modalità scientifica (Visualizza > Scientifica) presenta una scelta di rappresentazione dei numeri che contempla le basi Bin (2), Oct (8), Dec (10) e Hex (16). Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

16 Conversione tra basi generiche E sempre possibile convertire un numero da una base m a una base n con m ed n generici. Un metodo consiste nellutilizzare la base 10 come passaggio intermedio. –Il numero x viene prima convertito da base m a base 10, per poi essere nuovamente convertito da base 10 a base n. In alcuni casi si può procedere a una conversione diretta. Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione

17 Conversione diretta tra basi Se le basi di origine m e di destinazione n sono luna potenza dellaltra, è applicabile un metodo di conversione diretta. Questa può essere svolta per sostituzione di gruppi di cifre invece che con algoritmi di divisione. Se n = m k, allora k cifre del numero nella base originaria m vengono sostituite con singole cifre nella nuova base n. –E il caso di m = 2 ed n = 16, ad esempio. Viceversa, se m = n k, allora ogni singola cifra del numero nella base originaria m viene espansa in k cifre nella nuova base n. –E il caso di m = 9 ed n = 3, ad esempio. Programmazione MIDI (Prof. Luca A. Ludovico) 1. Sistemi di numerazione


Scaricare ppt "Sistemi di numerazione Lezione 1 Programmazione MIDI (Prof. Luca A. Ludovico)"

Presentazioni simili


Annunci Google