stringtranslate.com

Computación de 31 bits

En arquitectura de computadoras , los números enteros de 31 bits , direcciones de memoria u otras unidades de datos son aquellos que tienen 31 bits de ancho.

En 1983, IBM introdujo el direccionamiento de 31 bits en la arquitectura de mainframe System/370-XA como una actualización al direccionamiento físico y virtual de 24 bits , [1] y al direccionamiento transicional de 24 bits virtuales/ físico de 26 bits , [2] [3] en System/370 . [4] [5] Esta mejora permitió que los espacios de direcciones fueran 128 veces más grandes, lo que permitía a los programas abordar memoria por encima de los 16  MB (lo que se conoce como "por encima de la línea"). [6] [1] Se incluyó soporte para COBOL , FORTRAN y posteriormente para Linux/390 .

A principios de la década de 1980, se presentó el Motorola 68012 ; tenía registros de datos y direcciones de 32 bits , como el Motorola 68010 , pero en lugar de proporcionar los 24 bits inferiores de una dirección en los pines de dirección, proporcionaba todos menos el bit 30 en los pines de dirección. [7]

Computadora de 31 bits

El Librascope LGP-30 fue uno de los primeros ordenadores comerciales. El LGP-30 se fabricó por primera vez en 1956, [8] a un precio de venta al público de 47.000 dólares, [ cita requerida ] equivalente a 530.000 dólares en 2023. [9]

Era una computadora binaria de 31 bits con una memoria de tambor de 4096 palabras . Había 32 posiciones de bits por palabra de tambor, pero solo se usaban 31, lo que permitía una "restauración del flujo magnético en el cabezal" en el tiempo del bit 32. La cantidad de tubos de vacío se minimizó mediante el uso de lógica de diodos de estado sólido , una arquitectura de serie de bits y el uso múltiple de cada uno de sus 15 flip-flops.

La LGP-30 se conocía comúnmente como una computadora de escritorio. Su altura, ancho y profundidad, sin contar el estante para la máquina de escribir, era de 33 x 44 x 26 pulgadas (84 x 112 x 66 cm). Pesaba alrededor de 800 libras (360 kg) y estaba montada sobre ruedas resistentes que facilitaban su traslado.

Mainframes IBM con direccionamiento de 31 bits

En las arquitecturas System/360 , excepto la 360/67 y las primeras System/370 , los registros de propósito general tenían 32 bits de ancho, la máquina hacía operaciones aritméticas de 32 bits y las direcciones siempre se almacenaban en palabras de 32 bits, por lo que la arquitectura se consideraba de 32 bits , pero las máquinas ignoraban los 8 bits superiores de la dirección, lo que daba como resultado un direccionamiento de 24 bits .

Con la arquitectura System/370-XA y la arquitectura IBM Enterprise Systems Architecture , además de un modo de direccionamiento de 24 bits para compatibilidad con aplicaciones más antiguas, existe un modo de direccionamiento de 31 bits, en el que solo se ignora el bit de orden superior (bit 0) en la palabra para el direccionamiento. Una excepción es que las instrucciones de cambio de modo también utilizan el bit 0. Hubo al menos dos razones por las que IBM no implementó el direccionamiento de 32 bits del 360/67

  1. Las instrucciones de control de bucle BXH y BXLE realizaron comparaciones firmadas.
  2. Gran parte del software existente utilizaba el bit 0 como indicador de final de lista. [10]

La z/Architecture de 64 bits también admite modos de direccionamiento de 24 y 31 bits para compatibilidad con aplicaciones más antiguas.

Ruby y Smalltalk

Los intérpretes para los lenguajes Ruby y Smalltalk utilizan el bit más bajo para determinar si un valor es un entero no encapsulado o no. Esto significa que en máquinas de 32 bits (o máquinas de 16 bits con punteros de 32 bits), los enteros de 31 bits no encapsulados. En caso de desbordamiento, el resultado se ajusta a un objeto encapsulado, lo que significa que debe asignarse y recolectarse como basura. Por lo tanto, si tiene valores de 32 bits que no caben en el formato con signo de 31 bits, serán muy ineficientes en esos intérpretes. Lo mismo ocurre con los enteros no encapsulados de 63 bits en computadoras de 64 bits. Se pueden encontrar diseños similares en LISP y algunos de los otros lenguajes cuyas variables pueden tomar valores de cualquier tipo. En algunos casos, hubo soporte de hardware para este tipo de diseño: consulte Arquitectura etiquetada y Máquina Lisp .

Referencias

  1. ^ ab "Una breve historia del almacenamiento virtual y la direccionabilidad de 64 bits". IBM .
  2. ^ "con soporte transitorio para 26 bits"
  3. ^ KE Plambeck (2002). "Desarrollo y atributos de z/Architecture"" (PDF) .
  4. ^ Robert T. Fertig (mayo de 1983). "XA: La visión desde las trincheras (pp.122-136)". Datamation .
  5. ^ Ronald L. Bond (mayo de 1983). «XA: La vista desde White Plains (pp.139–152)». Datamation .
  6. ^ "...para ejecutarse en el área de 31 bits por encima de la línea,... "Reescritura para ejecutarse en el área de 31 bits". Computerworld . 27 de octubre de 1986. pág. 13.
  7. ^ "4.1 DESCRIPCIÓN DE LA SEÑAL" (PDF) . Microprocesadores de memoria virtual MC68010/MC68012 de 16/32 bits (PDF) . Motorola Semiconductor. Mayo de 1985. págs. 4-1–4-2. ADI942R2. {{cite book}}: |work=ignorado ( ayuda )
  8. ^ "Librazettes 1950-1959". www.librascopememories.com . Archivado desde el original el 27 de diciembre de 2014 . Consultado el 19 de marzo de 2018 . Librazette: julio de 1956 – Planes de Royal Precision – Promoción de LGP-30 ; noviembre de 1956 – LGP-30, Flow Computer Spearhead – Ventas comerciales y producción – Están en producción y Paul Coates presentará LGP-30 en diciembre. Programas de televisión[ verificación necesaria ]
  9. ^ 1634–1699: McCusker, JJ (1997). ¿Cuánto es eso en dinero real? Un índice de precios histórico para su uso como deflactor de valores monetarios en la economía de los Estados Unidos: adiciones y correcciones (PDF) . American Antiquarian Society .1700–1799: McCusker, JJ (1992). ¿Cuánto es eso en dinero real? Un índice de precios histórico para su uso como deflactor de valores monetarios en la economía de los Estados Unidos (PDF) . American Antiquarian Society .1800–presente: Banco de la Reserva Federal de Minneapolis. «Índice de precios al consumidor (estimación) 1800–» . Consultado el 29 de febrero de 2024 .
  10. ^ "... el bit de orden superior en la última palabra completa debe establecerse en uno para indicar el final de la lista". "WAIT — Esperar uno o más eventos". IBM .