¿Por qué las computadoras de 16 bits eran mucho más potentes que las de 8 bits?

Aquí es una suposición: las computadoras de 64 bits pueden manejar enteros de 64 bits en una instrucción, pero la mayoría de los enteros en programas comunes son de 32 bits o incluso de 16 bits. Quiero decir, 32 bits te permite usar números hasta 2147483648. Por lo tanto, la gran ganancia en los sistemas de 64 bits es la capacidad de direccionar más de 2 GB de RAM. Ese es un factor importante para las supercomputadoras, pero aún se puede procesar mucho en 2GB antes de que todos tengan 14 pestañas de navegador abiertas a la vez, lo que genera megabytes de mapa de bits cada una.

Pero 8 bits no fueron suficientes para hacer nada en absoluto. Necesitaría 2 bytes para representar un número entero de 16 bits, y eso significaba que necesitaría alrededor de 5 instrucciones solo para agregarlas, y más para multiplicarlas. Las CPU antiguas tampoco tenían unidades de coma flotante, por lo que calcular de 1/7 a 8 lugares decimales requeriría cientos de instrucciones. Pasar a 16 bits significaba que podía hacer sumas y restas al menos 5 veces más rápido a la misma velocidad de reloj y dirigir más memoria. Además, los procesadores de 8 bits se limitaron a una instrucción de bifurcación de 8 bits; un condicional solo puede saltar a una dirección dentro de 128 bytes. Para ir más lejos, se requería una instrucción de salto más larga con un argumento de 2 bytes, que requería más ciclos de reloj para cargar. Nuevamente, 16 bits lo hicieron todo más fácil: las personas ya estaban ejecutando software que no cabía en 8 bits sin muchos compromisos, y de repente no necesitaban comprometerse.

La razón principal por la que las computadoras de 16 bits eran más potentes que las de 8 bits es principalmente porque eran más nuevas. Utilizaron CPU más potentes, mejor RAM y otros componentes. El hecho de que tuvieran “más bits” no es la razón principal por la que fueron más rápidos. El “tamaño” de bits de una arquitectura de computadora es cuán grandes pueden ser los fragmentos individuales de datos. Entonces, con un procesador de 16 bits frente a un procesador de 8 bits, podría procesar fragmentos individuales de datos que eran más grandes, podría representar estados más distintos de las cosas con la unidad principal de datos manejada por el procesador. Facilita algunos tipos de trabajos, por ejemplo, direccionar volúmenes de memoria o aritmética con números más grandes. Definitivamente, algunos tipos de trabajos podrían realizarse más rápido, si la programación se diseñó para aprovechar los fragmentos de datos más grandes.

La siguiente analogía no es perfecta, pero creo que esto hará que la idea se transmita. Si una computadora de 8 bits es un camión de correo, y una computadora de 16 bits es un camión de 16 ruedas con remolque, puede ver que es posible mover más cajas en un solo viaje con el camión que con el correo camión, pero la diferencia de tamaño de bodega de carga no importa si no la está llenando hasta su capacidad máxima. Además, el tamaño de la bodega de carga de cualquiera de los vehículos no está relacionado con la rapidez y potencia de los motores de los camiones.

Esto fue antes de mi tiempo, así que no sé mucho sobre ellos, pero supongo que estás pensando que “16 es solo el doble que 8, y sin embargo, el rendimiento aumentó mucho más que eso”.

Bueno, la cosa es que un bit es el espacio para contener un 1 o un 0. Con 1 bit, esos son los únicos números disponibles. Con 2 bits, obtiene las opciones 00, 01, 10 y 11 (1–4). Con 3, sumas 100, 101, 110 y 111 (5–8) para un total de 8.

Básicamente, cada bit agregado duplica la cantidad de datos que se pueden almacenar / procesar, por lo que un salto de 8 a 16 es un aumento de 256 veces, de 256 números disponibles a 65 536.

El doble de la cantidad de datos para transferir y procesar al mismo tiempo.
Pero tenga cuidado, no era la única razón: la frecuencia del reloj también era más alta, lo mismo para el conjunto de instrucciones. También existen otros subsistemas tecnológicos que mejoran la velocidad.

Tenga en cuenta que amiga tenía un procesador 68000, que es en parte de 32 bits, e incluye varias operaciones matemáticas, como multiplicar y dividir, que de otro modo fue difícil de hacer (usando instrucciones sencillas).