Stack Overflow en español Asked on February 2, 2021
siempre he sabido que los procesadores son la mente del PC.
Entiendo que hay lenguajes que compilan a machine, otros son interpreados, MV ,etc.
Estos crean instrucciones para que el procesador las ejecute, entiendo que cada uno tiene su forma de trabajar.
Estos guardan datos en la memoria para trabajar etc etc.
Pero como funciona realmente esto de un Proceasdor de 8 bits(los antiguos), 16 bits, etc etc.
Estoy empezando en lo de la emulacion y me encontre con el "hola mundo" de la emulacion que es, CHIP-8,pero no comprendo como es que estos trabajar a 8 bits, tiene 4KB(4096 bits) de memoria,
pero no comprendo como hace su funcionalidad en base a 8 bits.
Cuando se dice que un procesador es de tal o cual cantidad de bits se refiere a qué tamaño en bits tiene sus registros de propósito general. Una cosa es de qué tamaño tenga un procesador el acumulador y otra de qué tamaño es su bus de direcciones.
Un z-80, procesador de 8 bits, tenía un bus de direcciones de 16, y podía acceder a 65535 posiciones de memoria. Lo hacía usando para direccionar la memoria dos registros de 8 bits.
Los procesadores de intel de 16 bits, con un acumulador de 16 bits, tenían un bus de direcciones de 20 o hasta 24 bits en el 80286, usando el sistema de la segmentación para acceder a toda la memoria. En ella hay unos registros de segmento de 16 bits, que seleccionan un segmento, más los propósito general, que direccionan una posición de memoria dentro de ese segmento.
Los de 32 bits, con bus de direcciones de 32 bits, siguen usando ese sistema, con registros de segmento de 16 bits y de 32 para el offset de segmento. Pueden usar también la paginación, pero no superan los 4 gigas de direccionamiento.
Los de 64 bits tiene un bus de direcciones efectivo de 48. Funcionando a 32 bits usan 36 para acceder a la memoria usando la paginación, con lo que pueden direccionar 64 gigas. Funcionando a 64 prescinden de la segmentación, usando sólo la paginación.
Answered by user201594 on February 2, 2021
Una rápida búsqueda en wikipedia arrojo que el chip 8 tiene un registro llamado I que es de 16-bits de ancho(65536 bytes de alcance entonces) que es usado para operaciones relacionadas con la memoria.
Y en x86(la arquitectura de los procesadores de Intel) en modo real(modo de 16-bits) se usan "registros de segmento" que son registros que guardan parte de la dirección en memoria dando así la posibilidad de acceder mas allá de los 64kB permitidos por los 16-bits.
Answered by sandmor on February 2, 2021
El del tamaño en bits normalmente se refiere al ancho (en bits) de los registros que tiene el microprocesador.... adicionalmente también hace referencia (hasta lo mejor de mi conocimiento) del ancho de los bits que se usan para direccionar memoria.... con 8 bits solo debería tenerse acceso a 256 localidades de memoria, cierto? Claro.... el truco que se puede usar es utilizar instrucciones que fijan bits mas significativos que los 8 del bus de direcciones para poder moverse en, digamos, otras páginas de memoria. Esto incluso se puede ver en los micros X86 de 32 bits que usan PAE para poder acceder a mas de 4GBs de ram (que sería el límite para un bus de direcciones de 32 bits).
https://serverfault.com/questions/3342/how-does-a-32-bit-machine-support-more-than-4-gb-of-ram
Answered by eftshift0 on February 2, 2021
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP