¿Por qué se llama a una CPU por ejemplo: "esta CPU es de n bits"?
¿Por qué se llama a una CPU por ejemplo: "esta CPU es de n bits"?
Respuesta corta: No existe una definición aceptada universalmente.
Respuesta menos breve: si la CPU es compatible con todas las primitivas básicas en un tipo de datos de 16 bits, entonces la mayoría de los usuarios probablemente lo considerará dieciséis bits.
Esta ha sido una "guerra santa" desde 1976 o así, y no hay una respuesta "correcta" o "incorrecta". Fue el 8088 dieciséis bits? Probablemente. Entonces, ¿el Z80? Tenía unas matemáticas de dieciséis bits y una base de datos de 8 bits. (Probablemente no: el Z80 no tenía instrucciones lógicas nativas de 16 bits, solo sumar y restar).
La pregunta volvió a surgir cuando el 68000 con sus registros de 32 bits y un rico conjunto de operaciones de 32 bits apareció, pero una ALU interna de 16 bits y un bus de datos externo de 16 bits (y luego solo para generar MÁS confusión, la variante 68008, con un bus de datos de 8 bits).
El bitness de una CPU es el ancho de la palabra que puede procesar de forma nativa como un todo. Este es generalmente el ancho de los registros y la ALU. Por ejemplo, los PIC 10, 12, 14, 16, 17 y 18 son procesadores de 8 bits. PIC 24, 30 y 33 son procesadores de 16 bits, y PIC 32 son procesadores de 32 bits.
Tenga en cuenta que ALU y el ancho de registro no es lo único comúnmente especificado en bits para un procesador. El ancho de la palabra de instrucción, o al menos el ancho del bus de datos de instrucción es otra medida. No es necesario que sea el mismo que el ancho de la ALU y, a menudo, no lo es. Los mismos PIC de "8 bits" enumerados anteriormente tienen anchos de instrucción diferentes. A veces escuchas que esto se conoce como el ancho del "núcleo". Por ejemplo, el PIC 10 y 12 originales eran máquinas con un núcleo de 12 bits, el PIC 16 estándar tiene un núcleo de 14 bits y el PIC 18 con un núcleo de 16 bits, a pesar de que cada uno de ellos son procesadores de "8 bits".
Lea otras preguntas en las etiquetas microprocessor cpu