x86 contre x64
La différence la plus importante entre x86 et x64 est que le premier est l'architecture 32 bits et le second est l'architecture du jeu d'instructions 64 bits. Une architecture de jeu d'instructions (ISA) est un terme très important qui s'applique à n'importe quel processeur. Les instructions, l'adressage de la mémoire, les registres et de nombreuses autres sections architecturales d'une CPU sont spécifiés par l'ISA. x86 est un ISA de renommée mondiale introduit par Intel en 1978 avec le processeur 8086. Ensuite, diverses extensions se sont produites et, en 2000, AMD a créé la spécification pour étendre le jeu d'instructions x86 à 64 bits sous le nom AMD64. Plus tard, d'autres sociétés telles qu'Intel ont également implémenté cette spécification et cet AMD64 est celui qui est identifié par le nom x64.
Qu'est-ce que x86?
x86 est une architecture de jeu d'instructions introduite par Intel avec le célèbre processeur 8086. En 1978, Intel a présenté le processeur 8086 qui était un processeur 16 bits. Puis, plus tard, ils ont introduit divers processeurs tels que 80186, 80286, 80386 et 80486, et tous étaient rétrocompatibles avec le jeu d'instructions d'origine utilisé dans le processeur 8086. Puisque tous ces processeurs se terminent par le numéro 86, l'architecture du jeu d'instructions a été identifiée par le nom x86. Avec l'introduction de 80386, l'instruction x86 a été étendue à un système 32 bits. Ici, 32 bits signifie que tous les registres, bus mémoire et bus de données sont 32 bits. Ensuite, les processeurs Pentium sont venus comme Pentium I, Pentium II, Pentium III, Pentium IV et tous ceux-ci ont également suivi une architecture 32 bits. Mais diverses autres extensions sont arrivées à l'architecture x86, comme l'ajout d'instructions comme MMX,SSE et SSE2. En dehors de cela, de nombreuses autres améliorations ont également été apportées. Ensuite, le jeu d'instructions x86 a été étendu à un jeu d'instructions 64 bits et à partir de ce moment, il a été appelé x64, ce que nous allons discuter dans la section suivante. Quoi qu'il en soit, en général, x86 fait référence à l'architecture 32 bits qui a évolué à partir d'une architecture 16 bits qui est venue avec le processeur 8086.
Processeur 8086
Qu'est-ce que x64?
Un système 32 bits ne peut représenter que 2 à 32 valeurs distinctes et, par conséquent, l'adressage mémoire est limité à ce nombre d'adresses. 2 32 octets sont égaux à 4 Go et, par conséquent, x86 avait une limite de mémoire adressable maximale de 4 Go. Afin de surmonter cela, d'autres extensions ont été apportées à l'architecture x86. AMD, vers l'an 2000, a introduit une telle spécification qui a étendu l'architecture x86 à 64 bits. Cela a été introduit sous le nom AMD64. x64 est un autre nom donné à cette architecture AMD64. Cette architecture AMD64 ou x64 est également connue sous le nom de x86_64. Avec l'architecture 64 bits, tous les registres sont devenus 64 bits et le bus mémoire et le bus de données sont également devenus 64 bits. Maintenant 2 64des valeurs distinctes peuvent être adressées, ce qui donne une énorme limite supérieure à la mémoire maximale possible. AMD K8 a été le premier processeur à implémenter cette architecture 64 bits. Puis Intel a également adopté cette architecture. Avec les processeurs Intel Core qui ont démarré à partir d'Intel Core 2, Intel a commencé à utiliser cette architecture dans ses processeurs. Actuellement, tous les processeurs Intel tels que Core i3, Core i5 et Core i7 utilisent cette architecture x64. Une chose importante à souligner est que cette architecture x64 est toujours rétrocompatible avec l'ancien jeu d'instructions x86.
Processeur 64 bits
Quelle est la différence entre x86 et x64?
• x86 a été introduit vers 1978 tandis que x64 est apparu plus récemment en 2000.
• x86 est issu du célèbre processeur Intel 8086 et, par conséquent, x86 a été introduit par Intel. Mais x64, qui est venu comme une extension de x86, a été introduit par AMD.
• L'architecture x86 est 32 bits. (Les premiers processeurs x86 étaient 16 bits mais, dans les processeurs ultérieurs, une extension à 32 bits a été faite). L'architecture x64 est de 64 bits.
• Les processeurs dotés d'une architecture de jeu d'instructions x86 ont donc des registres 32 bits, un bus mémoire 32 bits et un bus de données 32 bits. Mais x64 a des registres 64 bits, un bus mémoire 64 bits et un bus de données 64 bits.
• x86 a une limite de mémoire adressable maximale qui est une limite supérieure de 4 Go (2 32 octets). Mais, sur les systèmes x64, cette limite est énorme, qui est de 2 64 octets.
• x64 est une extension de x86; par conséquent, il est bien amélioré et puissant que l'ancien x86.
• Les valeurs qui peuvent être stockées dans un registre, dans un système x64, sont plus grandes que les valeurs qui peuvent être stockées dans un registre basé sur x86. Par conséquent, x64 peut gérer le calcul d'entiers plus grands beaucoup plus rapidement, car il n'est pas nécessaire d'utiliser plusieurs registres dans ce cas pour diviser la valeur et stocker comme dans x86.
• x64 peut transmettre en parallèle des données de plus grande taille le long du bus de données. Autrement dit, un bus de données de 64 bits peut transmettre en parallèle 64 bits tandis que l'architecture x86 qui a un bus de 32 bits ne peut transmettre en parallèle que 32 bits.
Résumé:
x86 contre x64
L'architecture du jeu d'instructions x86 est de 32 bits tandis que l'architecture du jeu d'instructions x64 est de 64 bits. x64 est venu comme une extension de l'architecture x86 existante. Les registres, bus mémoire, bus de données sur les architectures x86 sont 32 bits alors que c'est 64 bits sur x64. Par conséquent, la quantité maximale de mémoire adressable est beaucoup plus élevée dans les systèmes x64 que dans les systèmes x86. x86 a été introduit par Intel avec le processeur 8086 qui était un processeur 16 bits et avec le temps, ce x86 a été étendu à 32 bits. Puis plus tard, AMD a introduit l'architecture x64 en étendant l'architecture x86 existante et ce x64 est entièrement rétrocompatible avec le jeu d'instructions x86.
Images de courtoisie:
- Intel 8086 par Appaloosa (CC BY-SA 3.0)
- Processeur 64 bits par Appaloosa (CC BY 3.0)