Comment pouvons-nous déterminer si un processeur est 8 bits; 16 bits ou 32 bits

StackOverflow https://stackoverflow.com/questions/1434606

  •  07-07-2019
  •  | 
  •  

Question

Cela dépend-il de la taille du bus d'adresse? Si oui, 8086 était-il un processeur 20 bits? Si non, quels sont les critères d'attribution d'un nombre de bits tel que 8 bits, 16 bits, 32 bits au processeur?

Était-ce utile?

La solution

Ce n'est pas bien défini. De manière générale, comme le fait remarquer xtofl, il s'agit de la taille de l'unité de calcul atomique (dans les premiers ordinateurs, ce n'était pas toujours synonyme de «registre»). Ainsi, le PDP-10 était un ordinateur à 36 bits, un 8080 à 8 bits et un IBM 360 ou Intel 80386 à "32 bits".

Mais il y a des exceptions. Les processeurs Motorola 68000 et 68010 ont mis en œuvre un ensemble de registres 32 bits, mais l’ont fait via un microcode au-dessus d’une architecture interne essentiellement composée de 16 bits. Ils étaient généralement commercialisés sous le nom de "16 bits". CPU à l'époque.

La taille du bus d’adresse n’est presque jamais le facteur déterminant. Tous les succès " 8 bits " Les processeurs ont par exemple mis en œuvre un adressage sur 16 bits (souvent via des hacks impairs pour compenser l’absence d’un registre d’adresse unique, par exemple les modes d’adressage indirects 6502 ou les registres H / L du Z80). Et comme vous l'avez dit, le 8086 a utilisé son adressage de registre de segments pour faire fonctionner 20 lignes d'adresse (le 80286 a étendu cette astuce à 24 bits d'adresse physique). Et dans l’autre sens, de nombreux " 32 bits " Les processeurs avaient des bus d’adresses plus petits pour sauvegarder la logique qui ne serait pas utilisée sur une machine qui n’aurait jamais que quelques mégaoctets de mémoire: les 68 000 adresses limitées à 24 bits, même si les pointeurs eux-mêmes étaient de 32. implémente universellement moins de 64 bits d'adresse physique.

Autres conseils

Je suppose que normalement, vous le nommez par la taille de ses accumulateurs / registres.

En ce qui concerne un processeur, je dirais que c'est la largeur d'un registre. Vous pouvez effectuer une opération uniquement sur 8 bits , 16 bits , 32 bits , etc. à la fois.

Pour autant que je sache, la largeur en bits du processeur est déterminée par le nombre de bits que les circuits de traitement de données internes acceptent en une fois. Comme si les additionneurs, multiplicateurs, etc. de l’ALU acceptent des opérandes de 16 bits, la CPU a 16 bits, et si elle accepte 32 bits, elle est de 32 bits. Peu importe la largeur du bus de données ou du bus d'adresses. En général, la longueur en bits de l'accumulateur déterminerait la longueur en bits du processeur.

La taille en bits (8 bits, 16 bits, 32 bits) d'un microprocécesseur est déterminée par le matériel, en particulier par la largeur du bus de données. Le processeur Intel 8086 est un processeur 16 bits car il peut déplacer 16 bits à la fois sur le bus de données. Le processeur Intel 8088 est un processeur 8 bits même s'il possède un jeu d'instructions identique. Ceci est similaire aux processeurs Motorola 68000 et 68008. La taille en bits n’est pas déterminée par la vue du programmeur (la largeur du registre et la plage d’adresses).

Je pense que le premier numéro de puce intégrée fait référence au type de processeur. S'il s'agit de l'IC 8085, il s'agit d'un processeur 8 bits.

tout processeur peut être désigné par ses deux attributs

  1. architecture du jeu d'instructions & amp;
  2. non. de bits qu’elle peut gérer en un seul cycle d'horloge.

Prenons, par exemple, l'architecture IA-32 d'Intel, également appelée x86-32, ici x86 indique l'architecture et 32 ??désigne un processeur 32 bits

X-Architecture

il y a un certain nombre d'architectures

Pré-x86 x86

-architecture IA-32 d’Intel, également appelée x86-32 -x86-64  - avec les versions AMD64 d’AMD et Intel 64 d’AMD  - Motorola 6800 et 68000 a

architectures ARM7

processeur de bit Y

: tout simplement - c’est la capacité de traitement des données de la CPU / du processeur en un seul cycle d’horloge. Supposons qu’il s’agisse d’un processeur 8 bits, puis que, dans un seul cycle d’horloge, l’ALU ne peut effectuer l’opération que sur des données 8 bits. / p>

classification Based on Registers-

Outre ALU et CU, le processeur contient également certains emplacements de mémoire, appelés registres. en fonction du processeur, un registre peut typiquement stocker 8, 16, 32 ou 64 bits. La taille de registre d'un processeur particulier nous permet de classer le processeur. Les processeurs dont la taille de registre est égale à n bits sont appelés processeurs à n bits, de sorte que les processeurs dotés de registres à 8 bits sont appelés processeurs à 8 bits.

classification Based on databus width-

étant donné que l’alu ne peut traiter que des données de 8 bits en un seul cycle d’horloge, il n’est pas logique d’avoir une largeur de bus de données supérieure à celle & Un processeur de 8 bits aura un bus de données de 8 bits, la largeur de bus de données peut également être un autre moyen de connaître la capacité de traitement des bits du processeur. Pour un processeur avec un bus de données de n bits, la CPU peut transférer n bits à un autre opération unique.

pour la question:

  

"Supposons que nous ayons une ALU de 32 bits, c’est-à-dire qu’elle peut prendre 32 bits à la fois et   la taille de notre bus de données est de 16 bits, c’est-à-dire qu’il peut contenir 16 bits de données à la fois   ce seront les ans. Dans ce cas ...? & Quot;

L’exemple d’un tel processeur serait intel 8088 & amp; Moto 68000

En utilisant la classification de largeur de bus, le microprocesseur Intel 8088 est un processeur à 8 bits car il utilise un bus de données à 8 bits, bien que ses registres de CPU soient en fait de 16 bits. De même, le Motorola 68000 est classé comme processeur 16 bits, même si ses registres de CPU sont des registres de 32 bits. Parfois, une combinaison des deux classifications est utilisée, le 8088 pouvant être décrit comme un processeur 8/16 bits et le Motorola 68000 comme un processeur 16/32 bits.

La taille de mot (8 bits, 16 bits ou 32 bits) d'un microprocesseur est la taille du chemin de données dans l'unité d'exécution. En règle générale, il s'agit de la taille de l'accumulateur. C'est la taille de l'unité d'exécution. Un exemple dans lequel cela compte est le 8088, qui est un ordinateur 16 bits fonctionnant sur un bus 8 bits. Le 8085 est 8 bits. Le 8086/8088 est 16 bits. Le 80386 est en 32 bits. Les processeurs Intel Mordern sont en 64 bits.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top