Obligement - L'Amiga au maximum

Vendredi 19 avril 2024 - 15:23  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

Actualité (récente)
Actualité (archive)
Comparatifs
Dossiers
Entrevues
Matériel (tests)
Matériel (bidouilles)
Points de vue
En pratique
Programmation
Reportages
Quizz
Tests de jeux
Tests de logiciels
Tests de compilations
Trucs et astuces
Articles divers

Articles in english


Réseaux sociaux

Suivez-nous sur X




Liste des jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z,
ALL


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Galeries

Menu des galeries

BD d'Amiga Spécial
Caricatures Dudai
Caricatures Jet d'ail
Diagrammes de Jay Miner
Images insolites
Fin de jeux (de A à E)
Fin de Jeux (de F à O)
Fin de jeux (de P à Z)
Galerie de Mike Dafunk
Logos d'Obligement
Pubs pour matériels
Systèmes d'exploitation
Trombinoscope Alchimie 7
Vidéos


Téléchargement

Documents
Jeux
Logiciels
Magazines
Divers


Liens

Associations
Jeux
Logiciels
Matériel
Magazines et médias
Pages personnelles
Réparateurs
Revendeurs
Scène démo
Sites de téléchargement
Divers


Partenaires

Annuaire Amiga

Amedia Computer

Relec


A Propos

A propos d'Obligement

A Propos


Contact

David Brunet

Courriel

 


Dossier : La notation binaire et haxedécimale
(Article écrit par Jean-François Pillou - 2003)


Note : ce document est issu de Comment Ça Marche et mis à disposition sous les termes de la licence Creative Commons.

Présentation du binaire

Vers la fin des années 1930, Claude Shannon démontra qu'à l'aide de "contacteurs" (interrupteurs) fermés pour "vrai" et ouverts pour "faux" il était possible d'effectuer des opérations logiques en associant le nombre 1 pour "vrai" et 0 pour "faux".

Ce codage de l'information est nommé base binaire. C'est avec ce codage que fonctionnent les ordinateurs. Il consiste à utiliser deux états (représentés par les chiffres 0 et 1) pour coder les informations.

L'homme calcule depuis 2000 ans avant Jésus-Christ avec 10 chiffres (0, 1, 2, 3, 4, 5, 6, 7, 8, 9), on parle alors de base décimale (ou base 10). Toutefois, dans des civilisations plus anciennes ou pour certaines applications actuelles d'autres bases de calcul ont été et sont toujours utilisées :
  • Base sexagésimale (60), utilisée par les Sumériens. Cette base est également utilisée dans le système horaire actuel, pour les minutes et les secondes ;
  • Base vicésimale (20), utilisée par les Mayas ;
  • Base duodécimale (12), utilisée par les Anglo-Saxons dans leur système monétaire jusqu'en 1960 : un "pound" représentait vingt "shilling" et un "shilling" représentait douze "pences". Le système d'heure actuel fonctionne également sur douze heures (notamment dans la notation anglo-saxonne) ;
  • Base quinaire (5), utilisée par les Mayas ;
  • Base binaire (2), utilisée par l'ensemble des technologies numériques.
Le bit

Le terme bit (b avec une minuscule dans les notations) signifie "binary digit", c'est-à-dire 0 ou 1 en numérotation binaire. Il s'agit de la plus petite unité d'information manipulable par une machine numérique. Il est possible de représenter physiquement cette information binaire :
  • Par un signal électrique ou magnétique, qui, au-delà d'un certain seuil, correspond à la valeur 1 ;
  • Par des aspérités géométriques dans une surface ;
  • Grâce à des bistables, c'est-à-dire des composants électroniques qui ont deux états d'équilibre (l'un correspond à l'état 1, l'autre à 0).
Avec un bit, il est ainsi possible d'obtenir deux états : soit 1, soit 0. Grâce à 2 bits, il est possible d'obtenir quatre états différents (2*2) :

0 0
0 1
1 0
1 1

Avec 3 bits, il est possible d'obtenir huit états différents (2*2*2) :

Valeur binaire sur 3 bits Valeur décimale
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7

Pour un groupe de n bits, il est possible de représenter 2^n valeurs.

Poids des bits

Dans un nombre binaire, la valeur d'un bit, appelée poids, dépend de la position du bit en partant de la droite. A la manière des dizaines, des centaines et des milliers pour un nombre décimal, le poids d'un bit croît d'une puissance de deux en allant de la droite vers la gauche comme le montre le tableau suivant :

Nombre binaire11111111
Poids2^7 = 1282^6 = 642^5 = 322^4 = 162^3 = 82^2 = 42^1 = 22^0 = 1

Conversions

Pour convertir un mot binaire en nombre décimal, il suffit de multiplier la valeur de chaque bit par son poids, puis d'additionner chaque résultat. Ainsi, le mot binaire 0101 vaut en décimal :
2^3x0 + 2^2x1 + 2^1x0 + 2^0x1
= 8x0 + 4x1 + 2x0 + 1x1
= 5

L'octet

L'octet (en anglais "byte" ou B avec une majuscule dans les notations) est une unité d'information composée de 8 bits. Il permet par exemple de stocker un caractère, tel qu'une lettre ou un chiffre.

Ce regroupement de nombres par série de 8 permet une lisibilité plus grande, au même titre que l'on apprécie, en base décimale, de regrouper les nombres par trois pour pouvoir distinguer les milliers. Le nombre "1 256 245" est par exemple plus lisible que "1256245".

Une unité d'information composée de 16 bits est généralement appelée mot (en anglais word).

Une unité d'information de 32 bits de longueur est appelée mot double (en anglais double word, d'où l'appellation dword).

Pour un octet, le plus petit nombre est 0 (représenté par huit zéros 00000000), et le plus grand est 255 (représenté par huit chiffres "un" 11111111), ce qui représente 256 possibilités de valeurs différentes.

2^7 =128 2^6 =64 2^5 =32 2^4 =16 2^3 =8 2^2 =4 2^1 =2 2^0 =1
0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1

KiloOctet, MégaOctet

Longtemps l'informatique s'est singularisée par l'utilisation de différentes valeurs pour les unités du système international. Ainsi beaucoup d'informaticiens ont appris que 1 kilooctet valait 1024 octets. Or, depuis décembre 1998, l'organisme international IEC a statué sur la question (physics.nist.gov/cuu/Units/binary.html). Voici donc les unités standardisées :
  • Un kilooctet (ko ou kB) = 1000 octets
  • Un Mégaoctet (Mo ou MB) = 1000 ko = 1 000 000 octets
  • Un Gigaoctet (Go ou GB) = 1000 Mo = 1 000 000 000 octets
  • Un Téraoctet (To) = 1000 Go = 1 000 000 000 000 octets
Attention ! De nombreux logiciels (parfois même certains systèmes d'exploitation) utilisent toujours la notation antérieure à 1998 pour laquelle :
  • Un kilooctet (ko) = 2^10 octets = 1024 octets
  • Un Mégaoctet (Mo) = 2^20 octets = 1024 ko = 1 048 576 octets
  • Un Gigaoctet (Go) = 2^30 octets = 1024 Mo = 1 073 741 824 octets
  • Un Téraoctet (To) = 2^40 octets = 1024 Go = 1 099 511 627 776 octets
L'IEC a également défini le kilo binaire (kibi), le méga binaire (Mébi), le giga binaire (Gibi), le tera binaire (Tebi). Voici leurs définitions :
  • Un kibioctet (kio ou kiB) vaut 2^10 = 1024 octets
  • Un Mébioctet (Mio ou MiB) vaut 2^20 = 1 048 576 octets
  • Un Gibioctet (Gio ou GiB) vaut 2^30 = 1 073 741 824 octets
  • Un Tébioctet (Tio ou TiB) vaut 2^40 = 1 099 511 627 776 octets
Il est également utile de noter que la communauté internationale dans son ensemble utilise préférentiellement le nom de "byte" plutôt que le terme "octet" purement francophone. Cela donne les notations suivantes pour kilobyte, mégabyte, gigabyte et terabyte : kB, MB, GB, TB.

Notez l'utilisation d'un B majuscule pour différencier Byte et bit.

Voici une capture d'écran du logiciel HTTrack, l'aspirateur de sites le plus populaire, montrant l'utilisation de cette notation :

Capture d'écran du logiciel HTTrack

Les opérations en binaire

Les opérations arithmétiques simples telles que l'addition, la soustraction et la multiplication sont faciles à effectuer en binaire.

L'addition en binaire

L'addition en binaire se fait avec les mêmes règles qu'en décimale : on commence à additionner les bits de poids faible (les bits de droite) puis on a des retenues lorsque la somme de deux bits de même poids dépasse la valeur de l'unité la plus grande (dans le cas du binaire : 1), cette retenue est reportée sur le bit de poids plus fort suivant...

Par exemple :

  0 1 1 0 1
+ 0 1 1 1 0
- - - - - -
  1 1 0 1 1

La multiplication en binaire

La table de multiplication en binaire est très simple :
  • 0x0=0
  • 0x1=0
  • 1x0=0
  • 1x1=1
La multiplication se fait en formant un produit partiel pour chaque digit du multiplicateur (seuls les bits non nuls donneront un résultat non nul). Lorsque le bit du multiplicateur est nul, le produit partiel est nul, lorsqu'il vaut un, le produit partiel est constitué du multiplicande décalé du nombre de positions égal au poids du bit du multiplicateur.

Par exemple :

    0 1 0 1 multiplicande
x   0 0 1 0 multiplicateur
- - - - - -
    0 0 0 0
  0 1 0 1  
0 0 0 0    
- - - - - -
  0 1 0 1 0

La base hexadécimale

Les nombres binaires étant de plus en plus longs, il a fallu introduire une nouvelle base : la base hexadécimale. La base hexadécimale consiste à compter sur une base 16, c'est pourquoi au-delà des 10 premiers chiffres on a décidé d'ajouter les 6 premières lettres : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.

Base décimale 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Base hexadécimale 0 1 2 3 4 5 6 7 8 9 A B C D E F
Base binaire 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Un exemple en hexadécimal

Le nombre 27 (en base 10) vaut en base 16 : 1*161 + 11*160 = 1*161 + B*160 c'est-à-dire 1B en base 16.
Le nombre FB3 (en base 16) vaut en base 10 : F*162 + B*161 + 3*160 = 3840 + 176 + 3 = 4019.

Pour convertir un octet en hexadécimal, on le partage en 2 groupes de 4 bits, qui correspondent chacun à un chiffre hexadécimal.

2 A D 5
0010 1010 1101 0101


[Retour en haut] / [Retour aux articles]