diff --git a/representation_base/chapitre_1/README.md b/representation_base/chapitre_1/README.md index 14c91c5..0c1b895 100644 --- a/representation_base/chapitre_1/README.md +++ b/representation_base/chapitre_1/README.md @@ -32,30 +32,48 @@ Donc 4138 peut s’écrire : 4 * 103 + 1 * 102 + 3 * 10 reste .... +.... divisé par 10 = .... ---> reste .... +.... divisé par 10 = .... ---> reste .... +.... divisé par 10 = .... ---> reste .... + + +Soit .... x 103 + .... x 102 + .... x 10 1 + .... x 100 = ................ *Un nombre est égal à la somme des valeurs de ses rangs, et on peut décomposer n'importe quel nombre en puissance de sa base.* -### Le codage binaire (base 10) +----------- -Je vous ai parlé ci-dessus de rangs. +## Le codage binaire (base 2) -En binaire, c'est pareil à la différence qu'on utilise le terme bit, qui est la + + +Nous avons donc vu le principe de **rangs** dans l'écriture d'un nombre. + +En binaire, c'est pareil à la différence qu'on utilise le terme ***bit***, qui est la contraction de **_binary digit_**, littéralement **_chiffre binaire_**. Un bit a deux états stables. -En électronique, il est facile d'obtenir un système présentant deux états stables distincts. Prenons l'exemple -d'un interrupteur +En électronique, il est facile d'obtenir un système présentant deux états stables distincts. -![interrupteur.png](../../assets/interrupteur.PNG) +Prenons l'exemple d'un interrupteur : -![exemples.png](../../assets/exemples.PNG) +![interrupteur.png](assets/interrupteur.PNG) + +Exemple d'information à deux états : + +| Chiffre binaire | États | Interrupteur | DEL | Tension Présente | Logique | +| --------------- | --------------- | ------------ | ------- | ---------------- | ------- | +| 0 | Passif / Repos | Ouvert | Éteinte | Non | FAUX | +| 1 | Actif / Travail | Fermé | Allumée | Oui | VRAI | Ainsi, pour coder une information qui peut ne prendre que deux états stables, la numération binaire est la plus adaptée. -Remarque** : étant donné que les symboles 0 et 1 sont communs à beaucoup de bases de numération (en +**Remarque** : étant donné que les symboles 0 et 1 sont communs à beaucoup de bases de numération (en l’occurrence 2 et 10), nous adoptons les notations suivantes. - (1011)b ou 1011(en base 2) ou encore (1011)2 pour la base binaire @@ -67,17 +85,14 @@ l’occurrence 2 et 10), nous adoptons les notations suivantes. - Méthode des divisions successives : - Exemple: (11)d = (?)b -![10_vers_2.png](../../assets/10_vers_2.PNG) +![10_vers_2.png](assets/10_vers_2.png) (11)d => (1011)b -
+### Comment représenter des informations complexes ? - -✏ Comment représenter des informations complexes ? ✏ - -
  • Avec 1 bit, nous pouvons coder 2 informations. -
  • Avec 2 bits, nous pouvons coder 4 informations différentes (2²) +- Avec 1 bit, nous pouvons coder 2 informations. +- Avec 2 bits, nous pouvons coder 4 informations différentes (2²) Si nous généralisons un peu : avec **_k_** bits, nous pouvons coder **_2k_** informations différentes @@ -85,12 +100,27 @@ Si nous généralisons un peu : avec **_k_** bits, nous pouvons coder **_2k Compléter le tableau suivant afin de coder les 8 premiers entiers naturels (entiers positifs ou nul) -![tableau.png](../../assets/tableau.PNG) +| Bit de poids fort | | Bit de poids faible | Base 10 | +| ----------------- | --------------- | ------------------- | ------- | +| Bit2 | Bit1 | Bit0 | | +| | | | 0 | +| | | | 1 | +| | | | 2 | +| | | | 3 | +| | | | 4 | +| | | | 5 | +| | | | 6 | +| | | | 7 | + +***Remarques*** : + +- le bit de poids fort est le bit le plus à gauche +- le bit de poids faible est donc celui le plus à droite ### À faire vous-même -1. Convertir 42(10) en base 2 : 101010 -2. Convertir 104(10) en base 2 : 1101000 +1. Convertir 42(10) en base 2 +2. Convertir 104(10) en base 2 ### Qu'est ce qu'un octet ? @@ -98,7 +128,7 @@ Un octet ((**byte** en anglais) est un regroupement de 8 bits. On parle aussi de mot. Il permet de coder 28 = 256 mots différents. Si nous codons des entiers naturels, nous coderons les nombres 0 à 255. Dans la littérature, un regroupement de 4 bits est appelé un quartet (cela nous servira plus tard). -![octet.png](../../assets/octet.PNG) +![octet.png](assets/octet.PNG) -------- @@ -115,23 +145,27 @@ Il est très courant en informatique de mesurer la capacité mémoire d'un disqu > Remarque : Historiquement, les multiples utilisés en informatique étaient des puissances de 2. Pour ne pas confondre l'ancienne et la nouvelle notation, on utilise des symboles différents pour représenter ces multiples. -| Nom | valeur | Nombre d'octeets | +| Nom | valeur | Nombre d'octets | | :--------------- |:---------------: | -----:| | Kio | 210 octets | 1024 | | Mio | 210Kio |1048576| | Gio | 210Mio |1073741824| -| Tio | 210Gio |1099511627776| +| Tio | 210Gio |1099511627776| ### À faire vous-même > Faisons la conversion de la base 2 vers la base 10 --> Passer de (0 1 1 0 1 1 0 1)b = (….......)d -Méthode : +***Méthode :*** - Ecrire le nombre binaire dans le tableau de correspondance - Faire la somme des valeurs des rangs pour lesquels la valeur du bit vaut 1. -![2_vers_10.png](../../assets/2_vers_10.PNG) +| Rang | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | +| -------------------------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | +| Puissance | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | +| Pondération | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | +| Nombre binaire à convertir | | | | | | | | | Somme : ? @@ -139,9 +173,12 @@ Somme : ? ### Le système hexadecimal - La représentation en binaire n'est pas pratique à nous humain pour travailler (longueur de l'information importante, difficile à écrire et à lire sans faire d'erreur...). - - Pour cela, nous travaillons avec la base hexadécimale. Le système hexadécimal permet de réduire la longueur des mots et facilite leur manipulation : +La représentation en binaire n'est pas pratique à nous humain pour travailler (longueur de l'information importante, difficile à écrire et à lire sans faire d'erreur...). + +Pour cela, nous travaillons avec la ***base hexadécimale.*** + +Le système hexadécimal permet de réduire la longueur des mots et facilite leur manipulation : + L'écriture d'un nombre binaire en base hexadécimale est aisée. @@ -150,10 +187,10 @@ Ce système comporte seize symboles : - et les six premières lettres de l’alphabet (A à F) - - Ce sera donc un système en **base 16**. + + - Pour l'ordinateur, ça ne change rien, il travaille toujours en binaire. ### À faire vous-même @@ -181,7 +218,17 @@ Ce système comporte seize symboles : > Passer de la base décimale à la base hexadécimale -![exercice_2.png](../../assets/exercice_2.PNG) +Application : la méthode des divisions successives dans la base 16 : + +63650 divisé par 16 = **3978** ---> reste **2** +**3978** divisé par 16 = .... ---> reste .... +.... divisé par 16 = .... ---> reste .... +.... divisé par 16 = .... ---> reste .... + +On obtient alors la combinaison de nombres hexadécimaux suivants : .................... + + +Soit .... x 163 + .... x 162 + .... x 161 + .... x 160 = ................ > Faisons la conversion de la base 16 vers la base 10, écrire le nombre 2A3 (16) en base décimale @@ -190,7 +237,13 @@ Méthode : - Ecrire le nombre hexadécimal dans le tableau de correspondance en positionnant le chiffre correspondant à chacun des rangs. - Faire la somme des produits des chiffres avec la pondération correspondante. -![tableau-hexa.png](../../assets/tableau_hexa.PNG) +| Rang | 3 | 2 | 1 | 0 | +| ------------------------------ | -------------- | -------------- | -------------- | -------------- | +| Puissance | 163 | 162 | 161 | 160 | +| Pondération | 4096 | 256 | 16 | 1 | +| Nombre hexadécimal à convertir | | | | | + + > Passer du code binaire au code hexadécimal @@ -214,6 +267,5 @@ Pour passer d'une base à une autre, on passera par la base 10 car c'est sur cet Exemple : (944)10 → ( 12234)5 -![base_quelconque.png](../../assets/Base_quelconque.PNG) +![base.png](assets/base.png) -### diff --git a/representation_base/chapitre_1/assets/10_vers_2.png b/representation_base/chapitre_1/assets/10_vers_2.png new file mode 100644 index 0000000..b5baabb Binary files /dev/null and b/representation_base/chapitre_1/assets/10_vers_2.png differ diff --git a/representation_base/chapitre_1/assets/base.png b/representation_base/chapitre_1/assets/base.png new file mode 100644 index 0000000..f9bacf9 Binary files /dev/null and b/representation_base/chapitre_1/assets/base.png differ diff --git a/representation_base/chapitre_1/assets/interrupteur.png b/representation_base/chapitre_1/assets/interrupteur.png new file mode 100644 index 0000000..9606305 Binary files /dev/null and b/representation_base/chapitre_1/assets/interrupteur.png differ diff --git a/representation_base/chapitre_1/assets/octet.png b/representation_base/chapitre_1/assets/octet.png new file mode 100644 index 0000000..fdde016 Binary files /dev/null and b/representation_base/chapitre_1/assets/octet.png differ