Le byte (prononcé /baɪt/), ou multiplet en français[1],[2], est — indépendamment de l'adressage physique de la mémoire — la plus petite unité « logiquement » adressable par un programme sur un ordinateur. Aujourd’hui, le besoin d'une structure commune pour le partage des données a fait que le byte de 8 bits, appelé octet, s'est généralisé en informatique. Cependant,
- jusque dans les années 1970, il existait des processeurs avec des bytes de tailles très variables ;
- il existe, pour la programmation des automates et autres équipements industriels simples, des processeurs utilisant des mémoires adressables par quantité de 4 bits, voire moins ;
- beaucoup de microprocesseurs adressent physiquement la mémoire par mot de plusieurs bytes afin d'augmenter les performances.
La généralisation des bytes de 8 bits conduit à la confusion des notions de byte et d'octet. L'octet, comme son nom l’indique, contient exactement 8 bits (en anglais eight-bit byte).
Histoire
Le terme Byte est créé en 1956 par Werner Buchholz[3],[4] alors qu'il travaille à la conception de l'IBM Stretch. C'est une déformation orthographique volontaire de l'anglais bite, littéralement « bouchée », pour éviter toute confusion avec bit par élision du e final. Le terme désigne par analogie la plus petite unité de données accessible via un bus de données[5].
Sur l'IBM Stretch, il est constitué de 1 à 8 bits consécutifs dans la mémoire, sa longueur étant déterminée par l'instruction exécutée[6].
Le byte est l'unité de stockage d'un emplacement mémoire, qui selon le processeur peut varier de quatre à plusieurs dizaines de bits. Chaque constructeur définissait la taille du byte en fonction de ses besoins du moment. Ainsi, le PDP-10 utilise un byte par le jeu d'instructions en langage machine, qui a une taille variable. Sur cette même architecture, les mots, utilisés pour l'adressage mémoire, font 36 bits.
Distinction entre byte et octet
En anglais, la capacité de la mémoire informatique s'exprime généralement en bytes, alors qu'en français elle s'exprime plutôt en octets, ce qui était différent jusqu'à la généralisation des bytes de huit bits[Quand ?]. On peut donc considérer qu'une documentation en français qui exprime la capacité de mémoire en bytes a été mal traduite. Aujourd'hui, pour le Dictionnaire du multimédia. Audiovisuel, informatique, télécommunications[7] de l'AFNOR, le byte est « l'unité d'information correspondant à un octet, soit 8 bits ». La normalisation « IEC 80000-13 » va dans le même sens : normaliser la taille des bytes à 8 bits. C'est de cette normalisation du byte de 8 bits que vient la confusion.
En anglais comme en français, si l'on veut explicitement désigner une quantité de huit bits, on utilise le mot octet ; tandis que si l'on veut exprimer l'unité d'adressage indépendamment du nombre de bits, on utilise le mot byte. Ainsi la description formelle d’un langage de programmation utilisera sciemment le mot byte si le langage ne nécessite pas qu’un byte ait une taille d’un octet. C’est par exemple le cas du langage C, où un byte peut contenir plus de huit bits. Le mot octet est sciemment utilisé en français comme en anglais pour décrire un format de données au bit près. Ainsi, on trouve le mot octet dans des textes anglais comme le RFC 793[8] qui décrit le protocole de communication TCP d'Internet, ou dans le standard H.263 qui décrit une norme de codage vidéo numérique.
La même distinction entre byte et octet existe donc dans les deux langues, seul change le mot que l'on utilise couramment dans les cas où le byte mesure huit bits.
Confusion entre bit et byte
La capacité mémoire d'une puce de mémoire informatique est généralement donnée en bits (b), mégabits (Mb) ou gigabits (Gb), alors que la capacité mémoire de l'ensemble des puces d'un ordinateur est généralement donnée en bytes (B), mégabytes (MB) ou gigabytes (GB), ou en octets (o), mégaoctets (Mo) ou gigaoctets (Go). Des médias négligents font la confusion entre bit et byte et se trompent donc d'un facteur de huit, par exemple en écrivant « ordinateur doté de 4 Gb de RAM » au lieu de « ordinateur doté de 4 GB de RAM » ou « ordinateur doté de 4 Go de RAM »[9].
La capacité des cartouches de jeu vidéo est généralement donnée en bits, ce qui fait exception à l'usage répandu du byte ou de l'octet pour la mesure d'une mémoire complète. Cela permet d'utiliser de plus grands nombres dans la communication, en écrivant « cartouche de 8 Mb » (8 mégabits) au lieu de « cartouche de 1 Mo » (1 mégaoctet).
Bytes multiples
En informatique, lorsqu’un processeur est capable de traiter plusieurs bytes en tant qu’entité unique, on appelle cette entité un « mot ». Les tailles de mot les plus courantes sont :
- 16 bits, rarement appelé « seizet » ou « doublet » ;
- 32 bits, rarement appelé « trente-deuzet » ou « quadlet » ;
- 64 bits, rarement appelé « octlet ».
Comme pour les octets, les multiples sont kilobyte, mégabyte, gigabyte, etc.[10] des puissances de 10. Lorsqu'on utilise des puissances de 210 il faut intercaler un 'i'.
Notes et références
- Informations lexicographiques et étymologiques de « multiplet » (sens DÉR. b)) dans le Trésor de la langue française informatisé, sur le site du Centre national de ressources textuelles et lexicales
- « multiplet », Grand Dictionnaire terminologique, Office québécois de la langue française (consulté le ).
- (en) Werner Buchloz, « The link system, §7 - Shift Matrix »,
- (en) Werner Buchloz, « The Word "Byte" Comes of Age ... », Byte Magazine, vol. 2, no 2, (lire en ligne)
- Byte, catb.org, Werner Buchholz et le terme byte.
- (en) F. P. Brooks, G. A. Blaauw et W. Buchholz, « Processing Data in Bits and Pieces », IEEE Transactions on Electronic Computers, vol. EC-8, no 2, , p. 118–124 (ISSN 0367-7508, DOI 10.1109/TEC.1959.5219512)
- 1996, p. 135.
- (en) Request for comments no 793
- Pour être tout à fait précis, il faudrait l’exprimer en Gio, c’est-à-dire en giga binaire, donc en puissances de 2 (facteurs de 1 024 et non de 1 000).
- Bytes - Unités de mesure en multiples de "bytes", sur assiste.com, consulté le
Voir aussi
Ordre de grandeur |
Système international (SI) |
Préfixes binaires | |||||
---|---|---|---|---|---|---|---|
Unité | Notation | Valeur | Unité | Notation | Valeur base 2 | Valeur base 10 | |
1 | byte | B | 1 byte | byte | B | 1 byte | 1 byte |
103 | kilobyte | kB | 103 bytes | kibibyte | KiB | 210 bytes | 1024 bytes |
106 | mégabyte | MB | 106 bytes | mébibyte | MiB | 220 bytes | 1048576 bytes |
109 | gigabyte | GB | 109 bytes | gibibyte | GiB | 230 bytes | 1073741824 bytes |
1012 | térabyte | TB | 1012 bytes | tébibyte | TiB | 240 bytes | 1099511627776 bytes |
1015 | pétabyte | PB | 1015 bytes | pébibyte | PiB | 250 bytes | 1125899906842624 bytes |
1018 | exabyte | EB | 1018 bytes | exbibyte | EiB | 260 bytes | 1,15292150460685E+018 bytes |
1021 | zettabyte | ZB | 1021 bytes | zébibyte | ZiB | 270 bytes | 1,18059162071741E+021 bytes |
1024 | yottabyte | YB | 1024 bytes | yobibyte | YiB | 280 bytes | 1,20892581961463E+024 bytes |