top of page

introduction

Bonjour, içi Moi mème, je vais vous raconter ce que j'ai appris en cours cette année la.

Septembre

Bon… On commence bien l'année EN REMETTANT EN QUESTION MON POINT DE VUE SUR LES CHIFFRES, PAS LES NOMBRES, LES CHIFFRES!!!!!!!!!!!!!!!!!!!!!

Voyez vous , nous comptons aujourd'hui en base 10, c'est à dire qu'entre 0 et 10, il y a dix chiffres , mais qui a dit qu'on devait s'arrêter la?

Types & Valeurs de base.

En NSI, on s'intéresse à 3 types de bases: La base 2, 10 et 16 . Voici comment on les compte:

Les lettres içi représentent les chiffres entre  9 et 10 qu'on ne peut pas représenter car on a pas assez de chiffres dans la base 10 de nous.

Mais comment convertit on des valeurs d'une base à l'autre? Voici une première méthode:

Base 16:

     0

     1

     2

     3

     4

     5

     6

     7

     8

     9

     A

     B

     C

     D

     E

     F

     10

     11

     12

     ...

     19

     1A

     1B

     ...

     1F

     20

ect ...

              

Base 10:

     0

     1

     2

     3

     4

     5

     6

     7

     8

     9

     10

     11

     12

ect ...

              

Base 2:

   0         1

   10

   11

   100

   101

   110

   111

   1000

ect...

              

Voici d'autre exemples:

rang

14(10)=1*10 + 4*10 

10

1                  0

ça, c'est notre valeur en base 16, on la veut en base 10

on additionne  les résultats...

rang
3           2           1           0

1110(2)=1*2+1*2+1*2+0*2 

3210

rang
     2               1               0

111(16)=1*16+1*16+1*16=256+16+1=273

210

là, c'est le rang de chaque chiffre dans le nombre (...3,2,1,0)

on prend chaque chiffre de la valeur et on le mutiplie par sa base à la puissance de son rang numérique.

et on a le résultat en base 10 !

Sur Python, on peut convertir directement une valeur dans la base qu'on veut en écrivant ça:

0b111

ça va donner ça:

7 (qui correspond à 111 en base 2(b))

ça marche aussi avec d'autre bases

0xA

ça va donner ça:

10 (qui est 10 en base 16(x))

​

Voici une autre méthode de conversion (base 10 uniquement):

ça, c'est notre valeur en base 10, on la veut en base 2

on va lui faire une division euclidienne par la base de conversion jusqu'à ce que on arrive à un produit 0, une "condition d'arrêt"

18      2

(10)

0         9      2

-8       4       2

     0       2      2

0      1        2

      0     

condition d'arrèt

18  =10010

(10)

(2)

après on regarde les restes dans l'autre sens...

et on a notre résultat!

ça marche aussi avec d'autres bases, il suffit juste de changer le diviseur â–º

Pour les GROS chiffres, la conversion en base 16 s'effectue en remplaçant chaque groupe de 4 symboles en commençant par la droiteâ–º

ON divise le chiffre binaire (base 2) en paquets de 4 chiffres...

1101    1001   1100   1001

    C            8          B           8

...qu'on convertit à son équivalent hexadécimal (base 16) en s'aidant d'un tableau si nécessaire.

codage des nombres négatifs et des nombres à virgule flottante.

Bon… Jusque là on sais maintenant coder des valeurs positives entières en binaire. Mais comment un ordinateur reconnait là dedans---> 1001010101010-, une valeur décimale ou binaire ?

Voyons pour les valeurs négatives â–º

Et on ajoute aussi 1 pour que l'ordinateur reconnaisse (alors allez savoir comment l'ordi fait la différence entre ça et une valeur positive identique moi j'ai demandé on m'a fichu un vent PAS VRAI MONSIEUR??? )

Ca, c'est notre valeur binaire:

00001000

11110111

11110101

                  1

...Et on a la valeur binaire.

On l'additionne à sa version "négative"...

attention! on l'additionne en base 2, soit 1+1=0 (retenue=1)

         

Et pour les valeurs décimales (ou valeurs à virgule flottante) â–º

[Passons cette partie car je n'ai pas compris]

ZeNnyx & Co

© 2023 par Nathan S I. Créé avec Wix.com

bottom of page