Pourquoi etre passé de 32bits à 64bits et pas
Résolu
bit
-
bit -
bit -
Bonjour,
je n'ai pas vraiment besoin d'aide, je me pose juste une question sans trouver réponse :
Pourquoi est on passé des architectures 32bits à 64bits ?
pourquoi pas 40 ou 50 bits ?
pourquoi 64 (=2*32) ce n'est pas un hasard non ?
Vous me direz avec 6bits on peut coder un nombre de 0 à 63, alors qu'avec 5bits de 0 à 31. Mais je ne vois vraiment pas le rapport puisque le but c'est d'adresser de la mémoire.
Avez vous la réponse?
Merci
:o)
je n'ai pas vraiment besoin d'aide, je me pose juste une question sans trouver réponse :
Pourquoi est on passé des architectures 32bits à 64bits ?
pourquoi pas 40 ou 50 bits ?
pourquoi 64 (=2*32) ce n'est pas un hasard non ?
Vous me direz avec 6bits on peut coder un nombre de 0 à 63, alors qu'avec 5bits de 0 à 31. Mais je ne vois vraiment pas le rapport puisque le but c'est d'adresser de la mémoire.
Avez vous la réponse?
Merci
:o)
A voir également:
- Pourquoi etre passé de 32bits à 64bits et pas
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Identifiant et mot de passe - Guide
- Mot de passe administrateur - Guide
- Mot de passe bios perdu - Guide
2 réponses
En fait si tu regardes l'évolutions des consoles de jeu ou des PCs, tu t'apercevras que cette valeur est toujours un multiple de 8 (car il y a 8 bits dans un octet)
Cette valeur correspond au nombre de bits sur lesquels sont encodés une adresse mémoire
- 16 bits : 2 octets
- 32 bits : 4 octets
- 64 bits : 8 octets
Selon le théorème du chausse pied, plus tu as de bits pour encoder une information, plus celle ci peut prendre une grande plage de valeur. Ainsi encoder une adresse 32 bits permet de gérer jusqu'à ~4Go de RAM (c'était typiquement le cas dans windows xp et avec les noyaux linux x86). À cette époque les micro processeurs étaient donc conçus pour manipuler des adresses 32 bits.
Or de nos jours les machines ont souvent 4 Go de RAM voire plus, et donc 32 bits ne suffisent plus. Des rustines ont été conçues dans un premiers temps (cf extensions bigmem ou pae pour les noyaux linux 32 bits) mais rapidement il a fallu se rendre à l'évidence et augmenter l'espace pour représenter une mémoire et on est donc passé à 64 bits. Pourquoi 64 ?
- déjà c'est sensiblement plus large que 32 pour 32 bits, (2^32 fois plus de valeurs) autant dire qu'on est tranquille pour un moment
- ça devait être un multiple de 4 pour les histoires d'alignements :
https://fr.wikipedia.org/wiki/Alignement_en_m%C3%A9moire
- c'est la première valeur après 32 qui est à la fois multiple de 8 (pour être en octet) * 4 (pour être aligné) et 128 aurait été un peu démesuré (les opérations sur les adresses mémoires étant ultra fréquentes, il ne faut pas que sa représentation soit coûteuse à manipuler).
Cette valeur correspond au nombre de bits sur lesquels sont encodés une adresse mémoire
- 16 bits : 2 octets
- 32 bits : 4 octets
- 64 bits : 8 octets
Selon le théorème du chausse pied, plus tu as de bits pour encoder une information, plus celle ci peut prendre une grande plage de valeur. Ainsi encoder une adresse 32 bits permet de gérer jusqu'à ~4Go de RAM (c'était typiquement le cas dans windows xp et avec les noyaux linux x86). À cette époque les micro processeurs étaient donc conçus pour manipuler des adresses 32 bits.
Or de nos jours les machines ont souvent 4 Go de RAM voire plus, et donc 32 bits ne suffisent plus. Des rustines ont été conçues dans un premiers temps (cf extensions bigmem ou pae pour les noyaux linux 32 bits) mais rapidement il a fallu se rendre à l'évidence et augmenter l'espace pour représenter une mémoire et on est donc passé à 64 bits. Pourquoi 64 ?
- déjà c'est sensiblement plus large que 32 pour 32 bits, (2^32 fois plus de valeurs) autant dire qu'on est tranquille pour un moment
- ça devait être un multiple de 4 pour les histoires d'alignements :
https://fr.wikipedia.org/wiki/Alignement_en_m%C3%A9moire
- c'est la première valeur après 32 qui est à la fois multiple de 8 (pour être en octet) * 4 (pour être aligné) et 128 aurait été un peu démesuré (les opérations sur les adresses mémoires étant ultra fréquentes, il ne faut pas que sa représentation soit coûteuse à manipuler).
je ne connaissais pas cette notion d'alignement. pourtant très importante