Rappresentazione di interi

Documenti analoghi
Introduzione alle operazioni di I/O con formato e tipi primitivi

I sistemi di numerazione. Informatica - Classe 3ª, Modulo 1

Rappresentazione numeri reali

La codifica binaria. Fondamenti di Informatica. Daniele Loiacono

Esercizi Programmazione I

Informatica Generale 02 - Rappresentazione numeri razionali

Lezione 1. Rappresentazione dei numeri. Aritmetica dei calcolatori. Rappresentazione dei numeri naturali in base 2

Sistemi di Numerazione

La codifica binaria. Fondamenti di Informatica. Daniele Loiacono

Rappresentazione dell informazione

Esercitazione Programmazione I con Laboratorio

Codifica. Rappresentazione di numeri in memoria

Conversione binario-ottale/esadecimale. Conversione binario-ottale/esadecimale. Rappresentazione di Numeri Interi Positivi (numeri naturali)

Lezione 3. I numeri relativi

Funzioni di I/O per numeri. Input e output di valori numerici. Input formattato scanf. Stream preesistenti

Rappresentazione binaria

Rappresentazione binaria

Unità aritmetica e logica

Fondamenti di Programmazione. Sistemi di rappresentazione

I CARATTERI E LE STRINGHE

INPUT E OUTPUT DI VALORI NUMERICI

Rappresentazione di Numeri Reali. Rappresentazione in virgola fissa (fixed-point) Rappresentazione in virgola fissa (fixed-point)

Esercitazioni su rappresentazione dei numeri e aritmetica. Interi unsigned in base 2

La codifica binaria. Informatica B. Daniele Loiacono

Lezione 4. Sommario. L artimetica binaria: I numeri relativi e frazionari. I numeri relativi I numeri frazionari

Rappresentazione dell informazione

La codifica binaria. Informatica B. Daniele Loiacono

Somma di numeri binari

Primi esempi di programmi. Il tipo int Le variabili Altri tipi interi Operatori di assegnazione

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 5 31/10/2013

04 Aritmetica del calcolatore

LA CODIFICA DELL INFORMAZIONE. Introduzione ai sistemi informatici D. Sciuto, G. Buonanno, L. Mari, McGraw-Hill Cap.2

Le parole chiave char, int, float, double, ed enum descrivono i. che modificano i tipi base

Esercitazioni - Informatica A

Tipi di dato, Alessandra Giordani Lunedì 7 maggio 2011

Tipi di dati fondamentali. Tipi di dati fondamentali. Utilità dei tipi di dati nelle dichiarazioni. Il tipo di dati char. Codice ASCII.

Laboratorio di informatica Ingegneria meccanica

Input/Output di numeri

La codifica binaria. Sommario

ESERCITAZIONE. Uso dell accessorio calcolatrice per

Informatica. Stefano Lodi. 16 novembre in linguaggio C

Laboratorio di Informatica

La codifica. dell informazione

LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO III.2018, PARTE 2.

Linguaggio C. Tipi predefiniti. Università degli Studi di Brescia. Prof. Massimiliano Giacomin. Prof. M. Giacomin

Parte III Indice. Rappresentazione dei valori frazionari. Esercizi. in virgola fissa in virgola mobile III.1. Fondamenti di Informatica

Aritmetica dei Calcolatori Elettronici

modificato da andynaz Cambiamenti di base Tecniche Informatiche di Base

Variabili e input/ Alessandra Giordani Lunedì 18 marzo

Tipi di dato semplici

Rappresentazione di dati: numerazione binaria. Appunti per la cl. 3 Di A cura del prof. Ing. Mario Catalano

Rappresentazione dell Informazione

Programma del corso. Rappresentazione delle Informazioni. Introduzione agli algoritmi. Architettura del calcolatore. Elementi di Programmazione

Fondamenti di Programmazione. Sistemi di rappresentazione

Variabili e Istruzioni

Primi programmi in C

Esercizi su Sistemi di Numerazione Binaria. Prof. Riccardo Torlone Università di Roma Tre

Analogico vs. Digitale. LEZIONE II La codifica binaria. Analogico vs digitale. Analogico. Digitale

Aritmetica dei Calcolatori

Tipi di dati scalari (casting e puntatori) Alessandra Giordani Lunedì 10 maggio 2010

Programmare in C. Maurizio Palesi Salvatore Serrano. Valori. Operazioni. Un insieme di valori del tipo. Per operare su tali valori Tipi

Corso sul linguaggio C

Conversione binario-decimale. Interi unsigned in base 2. Esercitazioni su rappresentazione. dei numeri e aritmetica

Variabili intere, funzioni e input/ Alessandra Giordani Lunedì 19 marzo

Rappresentazione delle Informazioni. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni

Lezione 2. Rappresentazione dell informazione

LA CODIFICA LORENZO BRACCIALE

Lezione 5: Introduzione alla programmazione in C

Input/Output. Lettura e scrittura Caratteri e Stringhe: Terminale e file. Input/output. caratteri stringhe formattato ascii binari

Rappresentazione dei dati in memoria

Rappresentazione di numeri interi e frazionari. 28 settembre 2015 (ore 9-11)

I/O INTERATTIVO. scanf: quello che è indispensabile sapere printf: quello che è utile sapere

Aritmetica dei Calcolatori

Rappresentazione dei numeri reali in un calcolatore

viene chiamato base del sistema di numerazione ed è costituito da r simboli ordinati tra i quali compaiono lo zero è l unità.

Tipi di dato. Le variabili in C. Problema: dato in input un carattere, se esso è una lettera minuscola, trasformarla in maiuscola.

Rappresentazione dei Numeri

Laboratorio di Programmazione

Rappresentazione ottale e esadecimale. 22 settembre 2017

Interi unsigned in base 2. Esercitazioni su rappresentazione dei numeri e aritmetica. Conversione binario-decimale

Numeri reali. Notazione scientifica (decimale) Floating Point. Normalizzazione. Esempi. Aritmetica del calcolatore (virgola mobile)

Rappresentazione in virgola mobile Barbara Masucci

Rappresentazione dell informazione

Algebra di Boole e porte logiche

1

Programma del corso. Rappresentazione delle Informazioni. Introduzione agli algoritmi. Architettura del calcolatore

Assegnamento. Ricordiamo che l esecuzione di x = exp corrisponde a: Esempio: somma = 5; a = 2; somma = somma + a; somma 5 = 7 a 2 2

La codifica dell informazione

Transcript:

Rappresentazione dei numeri Rappresentazione di interi Supponiamo 2 byte (16 bit) 2 16 = 65536 [-32767, 32768] con m bit 2 m -1 numeri Se prendiamo come segno il primo bit abbiamo ad esempio (01111111) 2 = 127 e (11111111) 2 = -127

Rappresentazione dei numeri Con questa rappresentazione si hanno 2 modi di rappresentare 0!!!!!!! Inoltre non valgono più le regole per la somma binaria consideriamo ad esempio i due numeri (01010000)2 = 96 e (11010000)2 = -96 ed il numero (00001000)2 = 8 ed eseguiamo le somme in binario -96+ 11010000+ 8 00001000-88 11011000 = -104 errata

Complemento a 2 -x 10 = (2 n x) 2 Si calcola invertendo 1 con 0 e viceversa e aggiungendo + 1 alla fine Valgono ancora le regole per la somma

Rappresentazione dei numeri Rappresentazione di reali Vogliamo rappresentare numeri reali distribuiti sulla retta con la distanza relativa il più piccola possibile 0.0004285741428571 rappresentazione non normalizzata 0.4285741428571 x 10-3 rappresentazione normalizzata

Rappresentazione dei numeri Rappresentazione di reali Se ho a disposizione 7 cifre 0.000428 e 0.4285741 Ci sarà uno spazio per la mantissa e uno per l esponente float 4 byte Un bit per il segno, 23 per la mantissa e 8 per l esponente

Rappresentazione dei numeri Rappresentazione di reali Potendo l esponente essere sia positivo che negativo, con 8 bit è possibile utilizzare i numeri compresi nell intervallo [ -127, 128 ] per cui l esponente varia tra [ 2-127, 2 128 ] che, in base 10, corrisponde ad un esponente incluso nell intervallo [ 10-37, 10 38 ]

C operativi di flusso I/O In C sono definiti gli operatori di flusso di I/O printf scanf

C printf: stringa di controllo La funzione printf riceve dal programma chiamante uno o più argomenti. Solo il primo è obbligatorio e deve essere una stringa, che si chiama control string (stringa di controllo) la stringa di controllo viene trasferita sullo schermo, carattere per carattere (compresi gli spazi bianchi), salvo quando sono incontrati i seguenti caratteri particolari: " (termina la stringa di controllo) % (introduce uno specificatore di formato) \ (introduce una sequenza di escape)

C printf: specificatore di formato Altri argomenti successivi alla stringa di controllo, nella chiamata a printf, rappresentano i dati da formattare e scrivere, e possono essere costituiti da: costanti, variabili, espressioni, o altre funzioni Ad ogni argomento successivo alla stringa di controllo, deve corrispondere, all'interno di essa e nello stesso ordine, uno specificatore di formato, costituito da un gruppo di caratteri introdotto dal carattere %.

C printf: specificatore di formato In uno specificatore di formato il campo tipo può assumere uno di questi valori. tipo Descrizione u, o, x valori interi assoluti, basi: decimale, ottale, esadecimale X come x ma con le cifre letterali maiuscole d,i valori interi relativi, base decimale f,e valori floating, notazione normale o esponenziale g come f o e (sceglie il più comodo) E, G come e e g (scrive "E" al posto di "e") c carattere s stringa di caratteri P indirizzo di memoria (in esadecimale)

printf printf ( stringa di controllo del formato, altri argomenti) - La stringa di controllo descrive il formato dell output - Gli altri argomenti sono opzionali e corrispondono alle singole specifiche di conversione - Ogni specifica di conversione inizia con il segno di percentuale (%) e termina con un indicatore di conversione

Indicatore di conversione i e f visualizza un intero decimale con segno visualizza un valore in virgola mobile nella notazione esponenziale (6 cifre alla destra della virgola) (sempre e solo una cifra a sinistra della virgola) visualizza un valore in virgola mobile nella notazione in virgola fissa (6 cifre alla destra della virgola)

Dimensione di campo Nel caso in cui la dimensione del campo sia maggiore del dato da visualizzare questo sarà allineato a destra all interno di quel campo E inserito tra % e indicatore di conversione (%4d) printf( %4d\n,1); printf( %4d\n,12); printf( %4d\n,123); printf( %4d\n,1234); printf( %4d\n,12345); printf( %4d\n,-1); printf( %4d\n,-12); printf( %4d\n,-123); printf( %4d\n,-1234); printf( %4d\n,-12345);

precisione Specifica la precisione con cui il dato dovrà essere visualizzato - per gli interi indica il numero minimo di cifre da visualizzare - per i float indica il numero di cifre dopo la virgola E inserito tra % e indicatore di conversione (%.4d) int i = 873; float f = 123.94536; printf( \t%.4d\n\t%.9d\n\n, i, i); printf( \t%.3f\n\t%.3e\n\n, f, f);

Sequenza di escape Il carattere \ (backslash) non è trasferito sullo schermo, ma usato in combinazione con i caratteri successivi un solo carattere se si tratta di una lettera, oppure una sequenza di cifre numeriche; l'insieme di caratteri viene detto sequenza di escape, e viene interpretato come un unico carattere Le sequenze di escape sono usate tipicamente per specificare caratteri speciali che non hanno il loro equivalente stampabile come newline, carriage return, tabulazioni, suoni ecc..., oppure caratteri, che da soli, hanno una funzione speciale, come le virgolette o lo stesso backslash

REGOLA E opportuno che al termine di una istruzione di stampa il cursore sia situato all inizio della linea successiva

C++ sequenza di escape Sequenza di escape Descrizione \n Carattere di fine linea (newline) è inserito premendo il tasto Invio \t Posiziona il cursore del video sulla tabulazione successiva (tasto TAB) \a Emette un beep \r Posiziona il cursore all inizio della linea corrente \b Il cursore ritorna indietro di un carattere (tasto Backspace) \\ Stampa la barra inversa (backslash) \" Stampa le doppie virgolette \nnn \nn carattere con codice ascii nnn (tre cifre in ottale) carattere con codice ascii nn (due cifre in esadecimale)

C printf: specificatore di formato In generale uno specificatore di formato ha la seguente sintassi: %[flags][ampiezza][.precisione]tipo Esempio: printf("%8d", 4532) à 4532 printf("%8d", -532) à -532 printf("%#6x", 255) à 0XFF printf("%10.4s", "ciaooo")à ciao printf("%08.2f", -5.324) à -0005.32 esercizio3.2.cpp

Esercizi Scrivere un algoritmo che calcoli la somma dei primi N naturali.

Esercizi Scrivere un programma che chiede all utente di digitare tre interi sulla stessa riga, e ne visualizza la somma, il prodotto e la media.

Esercizi Scrivere un programma che calcola il quadrato e il cubo dei numeri da 0 a 10 e li visualizzi come segue: numero quadrato cubo 0 0 0 1 1 1 2 4 8 3 9 27