Numération. I. Représentation des nombres entiers... 2 I.1. Nombres non signés...2 I.2. Nombres signés...2



Documents pareils
Logiciel de Base. I. Représentation des nombres

Les opérations binaires

Conversion d un entier. Méthode par soustraction

V- Manipulations de nombres en binaire

Chapitre 10 Arithmétique réelle

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

3 ème 2 DÉVELOPPEMENT FACTORISATIONS ET IDENTITÉS REMARQUABLES 1/5 1 - Développements

Cours Informatique 1. Monsieur SADOUNI Salheddine

Chapitre 1 I:\ Soyez courageux!

Codage d information. Codage d information : -Définition-

Représentation des Nombres

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Algorithme. Table des matières

Informatique Générale

Représentation d un entier en base b

Factorisation Factoriser en utilisant un facteur commun Fiche méthode

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

IFT2880 Organisation des ordinateurs et systèmes

Le chiffre est le signe, le nombre est la valeur.

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

Une version javascript sera disponible directement dans le cours prochainement.

GPA770 Microélectronique appliquée Exercices série A

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Architecture de l ordinateur

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!»

Système binaire. Algèbre booléenne

Le codage informatique

REALISATION D UNE CALCULATRICE GRACE AU LOGICIEL CROCODILE CLIPS 3.

1 Introduction au codage

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

I- Définitions des signaux.

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Programmation C. Apprendre à développer des programmes simples dans le langage C

OPÉRATIONS SUR LES FRACTIONS

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Jeux de caracte res et encodage (par Michel Michaud 2014)

Précision d un résultat et calculs d incertitudes

La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA)

La Clé informatique. Formation Excel XP Aide-mémoire

La correction des erreurs d'enregistrement et de traitement comptables

QUESTION 1 {2 points}

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

avec des nombres entiers

Dérivation : cours. Dérivation dans R

Utiliser les supports d'exemplaires

Licence Sciences et Technologies Examen janvier 2010

Puissances d un nombre relatif

INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE

Styler un document sous OpenOffice 4.0

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès haouaticpge@gmail.com

Bases de programmation. Cours 5. Structurer les données

TP 1 : 1 Calculs en binaire, octal et hexadécimal

1 Année LMD-STSM Algorithmique et Programmation. Série de TD 2

RÉALISATION DE GRAPHIQUES AVEC OPENOFFICE.ORG 2.3

CHAPITRE VIII : Les circuits avec résistances ohmiques

ANALYSE TRAMEs LIAISON SERIE

Initiation à la programmation en Python

Représentation d un nombre en machine, erreurs d arrondis

Note de cours. Introduction à Excel 2007

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX

TP a Notions de base sur le découpage en sous-réseaux

Le poids et la taille des fichiers

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S

Compter à Babylone. L écriture des nombres

Transmission de données. A) Principaux éléments intervenant dans la transmission

AC AB. A B C x 1. x + 1. d où. Avec un calcul vu au lycée, on démontre que cette solution admet deux solutions dont une seule nous intéresse : x =

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Date : Tangram en carré page

Calculons avec Albert!

Glossaire des nombres

Correction TD algorithmique

Excel 2007 Niveau 3 Page 1

Excel avancé. Frédéric Gava (MCF)

Rappels Entrées -Sorties

Module 16 : Les fonctions de recherche et de référence

TRANSFOLIO version Introduction

TP 2 Réseaux. Adresses IP, routage et sous-réseaux

Mathématiques appliquées à l informatique

EXCEL TUTORIEL 2012/2013

ASR1 TD7 : Un microprocesseur RISC 16 bits

Exercices de dénombrement

Cours d Informatique

Définition : On obtient les nombres entiers en ajoutant ou retranchant des unités à zéro.

Université Paris-Dauphine DUMI2E 1ère année, Applications

Assembleur i8086. Philippe Preux IUT Informatique du Littoral. Année universitaire 95 96

Introduction à l'informatique. Vincent Boyer et Jean Méhat

DM 1 : Montre Autoquartz ETA

Rappels sur les suites - Algorithme

Date : Note /20 : EVALUATION Nom : Prénom : Classe : Traitement sur mots

Assembleur. Faculté I&C, André Maurer, Claude Petitpierre

Dossier Logique câblée pneumatique

Exercices Alternatifs. Une fonction continue mais dérivable nulle part

Patentamt JEuropaisches. European Patent Office Numéro de publication: Office européen des brevets DEMANDE DE BREVET EUROPEEN

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.


LES NOMBRES DECIMAUX. I. Les programmes

Transcription:

I. Représentation des nombres entiers... 2 I.1. Nombres non signés...2 I.2. Nombres signés...2 II. Changement de bases...3 II.1. Hexadécimal ou binaire vers décimal...3 II.2. Décimal vers hexadécimal ou binaire...3 II.2.1. Soustractions successives...3 II.2.2. Divisions successives...3 II.3. Hexadécimal-Binaire...4 III. Opérations...4 III.1. Addition...4 III.2. Soustraction...4 III.2.1. Directe...4 III.2.2. Par le complément...5

Ce cours a pour objet de rappeler comment les nombres sont écrits en vue de se familiariser avec les notations binaire et hexadécimale qui sont utilisées dans les processeurs. Les passages d une base à l autre sont explicités ainsi que les opérations de bases dans chacune des bases. I.Représentation des nombres entiers I.1.Nombres non signés Base : Nombre qui sert à définir un système de numération. (Robert) Dans une base quelconque, un nombre entier s écrit de la façon suivante : n n 1 1 0 Nb = b + an 1 b +... + a1 b + a0 b avec i,0 ai < b. On note alors : Nb = anan 1... a1a0. Comme i,0 ai < b, il faut b symboles (ou chiffres) pour écrire un nombre en base b. Dans la notation décimale (base 10, utilisée couramment), nous disposons de 10 chiffres : 0, 1, 2, 3, 4, 5, 6, 7, 8 et 9. Un nombre décimal s écrit donc de la façon suivante : N 10 = 7531 par exemple. Cette notation signifie en fait : N 10 = 7 10 + 5 10 + 3 10 + 1 10. En binaire (base 2), 2 chiffres suffisent : 0 et 1. Par exemple, en binaire, le nombre N 2 = 1101 signifie : N 2 = 1 2 + 1 2 + 0 2 + 1 2. En hexadécimal (base ), il faut symboles. Pour les 10 premiers, ceux de la base 10 sont utilisés. Restent 6 symboles à définir. On prend par convention les 6 premières lettres de l alphabet. Les chiffres de la base hexadécimale sont donc : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E et F avec A=10, B=11, C=12, D=13, E=14, F=15. On écrit alors : N = 3D5F qui signifie : N = 3 + 13 + 5 + 15. I.2.Nombres signés Et pour les nombres négatifs? Il suffit de rajouter un signe devant! Oui mais dans un processeur, comment fait-on? On cherche un codage d un nombre négatif le plus efficace possible. Par exemple, en décimal sur 2 chiffres, on peut coder 100 nombres (Figure I.1). 00 50 99 Figure I.1 : Représentation de 100 nombres avec 2 chiffres décimaux. On peut faire plusieurs choix pour coder 50 nombres négatifs et 50 nombres positifs. Par exemple, les 50 premiers sont choisis négatifs et les 50 suivants positifs. Donc le nombre -50 est codé "0", le nombre -1 est codé "49", le nombre 0 est codé "50", le nombre 1 est codé "51", le nombre 49 est codé "99" Ce choix n est pas très judicieux : les nombres positifs signés ne ressemblent pas du tout aux nombres positifs non signés. En effet, le nombre 1 est codé "1" dans la première convention et "51" dans la seconde. Pour éviter cet inconvénient, on convient de noter les nombres 0 à 49 comme des nombres classiques : 0 est représenté par "0",..., 49 est représenté par "49". On écrit alors les nombres négatifs avec les 50 codes non utilisés : -50 est représenté par "50", -49 est représenté par "51",, -2 est représenté par "98" et -1 est représenté par "99". Les nombres positifs sont alors simples à lire. Les nombres négatifs quant à eux sont plus difficiles à lire. Mais ce codage apporte un gros avantage. Si l' on effectue l' addition 1+(-1) on : a1+99=100. Si l' on ne garde que les 2 derniers chiffres (convention de départ), on voit apparaître que 1+(-1)=0. Il en va de même pour tous les nombres définis ainsi. P. Hoppenot (1999) Informatique industrielle 2/5

Trouver le codage du nombre -37 et vérifier que 37+(-37)=0. Comment peut-on trouver facilement le codage d'un nombre négatif? On commence par calculer le complément restreint, noté Cr, du nombre choisi. Il est trouvé en partant du nombre positif et en cherchant pour chaque chiffre le complément pour arriver à 9=10-1. Dans le cas de 37 on obtient : 3 6 et 7 2, soit 62. La somme de ces deux nombres donne : 37+62=99. Pour obtenir 0, il suffit de rajouter 1. On calcule donc le complément vrai, Cv, du nombre tel que : Cv=Cr+1. Dans notre cas, 62+1=63 et on retrouve le résultat de l'exercice. nombres. Dans les processeurs, ce codage est utilisé avec une représentation binaire des Représentation des nombres négatifs en binaire sur 8 chiffres. Donner la représentation des nombres positifs et négatifs. Calculer le Cv du nombre 1001101 sur 8 chiffres. Vérifier que la somme des deux nombres vaut bien (1)00000000. Calculer le Cv du Cv. Que remarque-t-on? II.Changement de bases II.1.Hexadécimal ou binaire vers décimal La conversion vers le décimal est assez simple : il suffit de se reporter à la définition des nombres en binaire ou en hexadécimal. Par exemple, N = 3D5F = 3 + 13 + 5 + 15 donne la valeur décimale suivante : N 10 = 3 4096 + 13 256 + 5 + 15 1 = 15711. Donner la valeur décimale des nombres hexadécimaux suivants : 10 (), 7 (7), D (13), A2D (2605), 234 (564), AFC (2812) Donner la valeur décimale des nombres binaires suivants : 10 (2), 1000 (8), 1010 (A), 110101 (53), 10001101 (141) II.2.Décimal vers hexadécimal ou binaire II.2.1.Soustractions successives Prenons un exemple. Soit le nombre 745 en décimal à traduire en hexadécimal. On 2 cherche la puissance de la plus grande inférieure à 745. = 256 et 3 = 4096. On conserve donc 2 2. Or, 2 256 = 512 et 3 256 = 768. On a alors : 745 2 = 233. On 1 recommence avec 233. On a : 233 14 = 9. On peut donc écrire : 2 1 0 745 = 2 + 14 + 9. Il vient : ( 745) ( 2 9) 10 = E. Donner la valeur hexadécimale des nombres décimaux suivants : 32 (20), 64 (80), 256 (100), 255 (FF), 4096 (1000), 951 (3B7), 1425 (591) 745 II.2.2.Divisions successives Reprenons le même exemple. La division entière de 745 par donne : = 46 reste 9. On divise le résultat encore par jusqu'à obtenir une valeur inférieure à. Ici, on a 46 = 2 reste 14. Si l'on fait une dernière division on obtient : 2 = 0 reste 2. Il suffit alors de prendre les restes des divisions en ordre inverse. On a alors : ( 745) ( 2 9) 10 = E. P. Hoppenot (1999) Informatique industrielle 3/5

Exercices : Donner la valeur hexadécimale des nombres décimaux suivants :2365 (39D), 456 (1C8), 875 (36B), II.3.Hexadécimal-Binaire Ces deux systèmes de numération sont très proches l'un de l'autre. En effet, 4 bit correspondent à un chiffre hexadécimal. 10 2 0 0 0000 1 1 0001 2 2 0010 3 3 0011 4 4 0100 5 5 0101 6 6 0110 7 7 0111 8 8 1000 9 9 1001 10 A 1010 11 B 1011 12 C 1100 13 D 1101 14 E 1110 15 F 1111 Pour passer d'un nombre hexadécimal en binaire, il suffit de remplacer chaque chiffre par sa valeur en binaire. Par exemple : $A7=1010 0111 b. Attention : il ne faut pas oublier les 0! Transformer en binaire les nombres hexadécimaux suivants : 7A4D, 35FE Le passage de binaire en décimal s'obtient en regroupant les bits 4 par 4 en partant de la droite. Il reste ensuite à trouver le code hexadécimal pour chaque groupe de 4. III.Opérations Transformer en hexadécimal les nombres binaires suivants : III.1.Addition Ca fonctionne comme en décimal. La seule difficulté provient de ce que l'on n'apprend pas la table d'addition en hexadécimal. F+D=1C par exemple. Il faut donc réfléchir un peu plus qu'en décimal. III.2.Soustraction Effectuer les additions suivantes en hexadécimal : 1F4+A2D (C21), 125+298 (3BD), ABC+BCD (89) Effectuer les additions suivantes en binaire : III.2.1.Directe Ca fonctionne comme en décimal. La seule difficulté provient de ce que l'on n'apprend pas la table de soustraction en hexadécimal. D-6=8 par exemple. Il faut donc réfléchir un peu plus qu'en décimal. P. Hoppenot (1999) Informatique industrielle 4/5

Effectuer les soustractions suivantes en hexadécimal : 5D-25 (38), 62-23 (3F), D123-1FCB (B158) Effectuer les soustractions suivantes en binaire : 1101-101 (1000), 10001-1111 (10) III.2.2.Par le complément A - B = A + (-B) = A + Cv(B) (1) A > B : A = B + R A - B = B + R + Cv(B) = 2 n + R (2) A = B : même cas que précédemment avec R = 0 (3) A < B : A = B - R A - B = B - R + Cv(B) = 2 n - R Or, E + Cv(E) = 2 n donc 2 n - E = Cv(E) Donc A - B = Cv(E) : => on complémente pour avoir la valeur absolue du résultat. (méthode utilisée dans les processeurs) Quelle plage de nombres peut-on coder sur 4 bits avec la convention de signe précisée au I.I.2? (-8 à +7) Effectuer les différences suivantes en binaire sur 4 bits : 5-3 (cas 1), 3-5 (cas 3), 6-6 (cas 2) Quel est l'intérêt de la méthode du complément? (marche pour 3-5) Exemples de soustractions avec le complément (sur 4 bits) : 5-3 : A = 5 = 0101 B = -3 : 3 = 0011 => 1100+1 = 1101 = -3 0101 A 1101 B (1)0010 (1) : A>B => 2 3-5 : A = 3 = 011 B = -5 : 5 = 0101 => 1010+1 = 1011 = -5 0011 A 1011 B (0)1110 (0) : A<B 0001+1 = 2 => -2-2-3 : A = -2 : 2=0010 => 1101+1 = 1110 = -2 B = -3 : 3 = 0011 => 1100+1 = 1101 = -3 1110 A 1101 B (1)1011 1 : signe OK 0100+1 = 0101 => -5-5-4 : A = -5 : 5 = 0101 => 1010+1 = 1011 = -5 B = -4 : 4 = 0100 => 1011+1 = 1100 = -4 1011 A 1100 B (1)0111 0 : signe OK 0111+1 = 1001 => -9 P. Hoppenot (1999) Informatique industrielle 5/5