En arquitectura informática , los enteros de 31 bits , las direcciones de memoria u otras unidades de datos son aquellas que tienen un ancho de 31 bits .
En 1983, IBM introdujo el direccionamiento de 31 bits en la arquitectura del mainframe System/370-XA como una actualización del direccionamiento físico y virtual de 24 bits , [ 1 ] y el direccionamiento transitorio de 24 bits virtuales/ 26 bits físicos, [ 2 ] [ 3 ] en System/370 . [ 4 ] [ 5 ] Esta mejora permitió que los espacios de direcciones fueran 128 veces más grandes, lo que permitió a los programas direccionar memoria por encima de 16 MB (denominado "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 , al igual que el Motorola 68010 , pero en lugar de proporcionar los 24 bits inferiores de una dirección, lo hacía para todos excepto el bit 30 en los pines de dirección. [ 7 ]
computadora de 31 bits

La Librascope LGP-30 fue una de las primeras computadoras comerciales. La LGP-30 se fabricó por primera vez en 1956, [ 8 ] a un precio de venta al público de 47.000 dólares, equivalente a 560.000 dólares en 2025. [ 9 ]
Se trataba de una computadora binaria de 31 bits con una memoria de tambor de 4096 palabras . Cada palabra de tambor tenía 32 posiciones de bits, pero solo se utilizaban 31, lo que permitía la "restauración del flujo magnético en el cabezal" en el bit número 32. El número de tubos de vacío se minimizó mediante el uso de lógica de diodos de estado sólido , una arquitectura de bits en serie y el uso múltiple de cada uno de sus 15 biestables.
El LGP-30 era conocido comúnmente como ordenador de sobremesa. Sus dimensiones, sin incluir la bandeja para la máquina de escribir, eran de 84 x 112 x 66 cm (33 x 44 x 26 pulgadas). Pesaba aproximadamente 360 kg (800 libras) y estaba montado sobre ruedas robustas que facilitaban su desplazamiento.
Ordenadores centrales de IBM con direccionamiento de 31 bits
En el System/360 , a excepción de las arquitecturas 360/67 y las primeras del System/370 , los registros de propósito general tenían un ancho de 32 bits, la máquina realizaba 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 resultaba en 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) de 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.
- Las instrucciones de control de bucle BXH y BXLE realizaban comparaciones con signo.
- Gran parte del software existente utilizaba el bit 0 como indicador de fin de lista. [ 10 ]
La arquitectura z/Architecture de 64 bits también admite modos de direccionamiento de 24 y 31 bits para garantizar la compatibilidad con aplicaciones más antiguas.
Ruby y Smalltalk
Los intérpretes de los lenguajes Ruby y Smalltalk utilizan el bit menos significativo para determinar si un valor es un entero sin empaquetar 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 se empaquetan. En caso de desbordamiento, el resultado se ajusta a un objeto empaquetado, lo que implica que debe asignarse y liberarse mediante el recolector de basura. Por lo tanto, si se tienen valores de 32 bits que no caben en el formato con signo de 31 bits, serán muy ineficientes en dichos intérpretes. Lo mismo ocurre con los enteros sin empaquetar de 63 bits en ordenadores de 64 bits. Diseños similares se pueden encontrar en LISP y en algunos otros lenguajes cuyas variables pueden tomar valores de cualquier tipo. En algunos casos, existía soporte de hardware para este tipo de diseño: véase Arquitectura etiquetada y máquina Lisp .
Referencias
- 1 2 "Una breve historia del almacenamiento virtual y la direccionabilidad de 64 bits" . IBM .
- ↑ "con soporte transitorio para 26 bits"
- ↑ KE Plambeck (2002). "Desarrollo y atributos de z/Architecture"" (PDF) .
- ↑ Robert T. Fertig (mayo de 1983). "XA: La vista desde las trincheras (págs. 122-136)". Datamation .
- ↑ Ronald L. Bond (mayo de 1983). "XA: La vista desde White Plains (págs. 139-152)". Datamation .
- ↑ "...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.
- ↑ "4.1 DESCRIPCIÓN DE LA SEÑAL" (PDF) . Microprocesadores de memoria virtual de 16/32 bits MC68010/MC68012 (PDF) . Motorola Semiconductor. Mayo de 1985. págs. 4-1 – 4-2 . ADI942R2.
{{cite book}}:|work=ignorado ( ayuda ) - ↑ "Librazettes 1950-1959" . www.librascopememories.com . Archivado del original el 27/12/2014 . Consultado el 19/03/2018 .
Librazette: Julio de 1956:
Planes de Royal Precision: Promoción del LGP-30
; Noviembre de 1956:
LGP-30, punta de lanza de la computadora de flujo: Ventas comerciales y producción: Están en producción
y
Paul Coates presentará el LGP-30 en programas de televisión de diciembre.
- ↑ 1634–1699: McCusker, JJ (1997). ¿Cuánto es eso en dinero real? Un índice de precios histórico para usar como deflactor de valores monetarios en la economía de los Estados Unidos: Addenda et Corrigenda (PDF) . American Antiquarian Society .1700–1799: McCusker, JJ (1992). ¿Cuánto es eso en dinero real? Un índice de precios histórico para usar como deflactor de los 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 .
- ↑ "... 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 .
- Unidad de datos