De Wikipedia, la enciclopedia libre
  (Redirigido desde 32 bits )
Saltar a navegación Saltar a búsqueda

En  la arquitectura de la computadora , los enteros de 32 bits , las direcciones de memoria u otras unidades de datos son aquellos que tienen 32 bits (4 octetos ) de ancho. Además, las arquitecturas de CPU y ALU de 32 bits son aquellas que se basan en registros , buses de direcciones o buses de datos de ese tamaño. Las microcomputadoras de 32 bits son computadoras en las que los microprocesadores de 32 bits son la norma.

Rango para almacenar números enteros [ editar ]

Un registro de 32 bits puede almacenar 2 32 valores diferentes. El rango de valores enteros que se pueden almacenar en 32 bits depende de la representación entera utilizada. Con las dos representaciones más comunes, el rango es de 0 a 4,294,967,295 (2 32 - 1) para la representación como un número binario ( sin signo ) , y −2,147,483,648 (−2 31 ) a 2,147,483,647 (2 31 - 1) para la representación como complemento a dos .

Una consecuencia importante es que un procesador con direcciones de memoria de 32 bits puede acceder directamente a un máximo de 4  GiB de memoria direccionable por bytes (aunque en la práctica el límite puede ser menor).

Historia técnica [ editar ]

La primera computadora electrónica con programa almacenado del mundo, el Manchester Baby , utilizó una arquitectura de 32 bits en 1948, aunque solo era una prueba de concepto y tenía poca capacidad práctica. Tenía solo 32 palabras de 32 bits de RAM en un tubo de Williams , y no tenía operación de suma, solo resta.

La memoria, así como otros circuitos digitales y cableado, era costosa durante las primeras décadas de las arquitecturas de 32 bits (de los sesenta a los ochenta). [1] Por lo tanto, las familias de procesadores de 32 bits más antiguas (o variantes más simples y más baratas de las mismas) podrían tener muchos compromisos y limitaciones para reducir costos. Esto podría ser una ALU de 16 bits , por ejemplo, o buses externos (o internos) más estrechos que 32 bits, limitando el tamaño de la memoria o exigiendo más ciclos para la búsqueda, ejecución o escritura de instrucciones.

A pesar de esto, dichos procesadores podrían etiquetarse como "32 bits", ya que todavía tenían registros e instrucciones de 32 bits capaces de manipular cantidades de 32 bits. Por ejemplo, IBM System / 360 Model 30 tenía una ALU de 8 bits, rutas de datos internas de 8 bits y una ruta de 8 bits a la memoria, [2] y el Motorola 68000 original tenía una ALU de datos de 16 bits y una Bus de datos externos de 16 bits, pero tenía registros de 32 bits y un conjunto de instrucciones basado en 32 bits. El diseño 68000 a veces se denomina "16/32 bits". [3]

Sin embargo, lo contrario suele ser cierto para los diseños más nuevos de 32 bits. Por ejemplo, el procesador Pentium Pro es una máquina de 32 bits, con registros e instrucciones de 32 bits que manipulan cantidades de 32 bits, pero el bus de direcciones externo tiene 36 bits de ancho, lo que proporciona un espacio de direcciones mayor que 4 GB, y el El bus de datos tiene un ancho de 64 bits, principalmente para permitir una captura previa más eficiente de instrucciones y datos. [4]

Arquitecturas [ editar ]

Las arquitecturas prominentes de conjuntos de instrucciones de 32 bits utilizadas en la informática de propósito general incluyen IBM System / 360 e IBM System / 370 (que tenían direccionamiento de 24 bits ) y System / 370-XA , ESA / 370 y ESA / 390 (que tenía direccionamiento de 31 bits ), el DEC VAX , el NS320xx , la familia Motorola 68000 (los dos primeros modelos tenían direccionamiento de 24 bits), la versión Intel IA-32 de 32 bits de la arquitectura x86 y la versiones de bits del ARM , [5] SPARC ,Arquitecturas MIPS , PowerPC y PA-RISC . Las arquitecturas de conjuntos de instrucciones de 32 bits utilizadas para la informática integrada incluyen la familia 68000 y las arquitecturas ColdFire , x86, ARM, MIPS, PowerPC e Infineon TriCore .

Aplicaciones [ editar ]

En la arquitectura x86 , una aplicación de 32 bits normalmente significa software que normalmente (no necesariamente) usa el espacio de direcciones lineal de 32 bits (o modelo de memoria plana ) posible con los chips 80386 y posteriores. En este contexto, el término se produjo porque DOS , Microsoft Windows y OS / 2 [6] fueron escritos originalmente para el 8088/8086 o 80286 , de 16 bits microprocesadores con una segmentada espacio de direcciones donde los programas tenían que cambiar entre segmentos para llegar a más de 64 kilobytes de códigoo datos. Como esto lleva bastante tiempo en comparación con otras operaciones de la máquina, el rendimiento puede verse afectado. Además, la programación con segmentos tiende a complicarse; Debían utilizarse (con cuidado) palabras clave especiales de lejos y cerca o modelos de memoria , no solo en lenguaje ensamblador sino también en lenguajes de alto nivel como Pascal , BASIC compilado , Fortran , C , etc.

El 80386 y sus sucesores son totalmente compatibles con los segmentos de 16 bits del 80286, pero también los segmentos para desplazamientos de direcciones de 32 bits (utilizando el nuevo ancho de 32 bits de los registros principales). Si la dirección base de todos los segmentos de 32 bits se establece en 0 y los registros de segmento no se utilizan explícitamente, la segmentación puede olvidarse y el procesador parece tener un espacio de direcciones lineal simple de 32 bits. Los sistemas operativos como Windows u OS / 2 brindan la posibilidad de ejecutar programas de 16 bits (segmentados), así como programas de 32 bits. La primera posibilidad existe para la compatibilidad con versiones anteriores y la última generalmente está destinada a utilizarse para el desarrollo de nuevo software .

Imágenes [ editar ]

En imágenes / fotografías digitales, 32 bits generalmente se refiere al espacio de color RGBA ; es decir, imágenes truecolor de 24 bits con un canal alfa adicional de 8 bits . Otros formatos de imagen también especifican 32 bits por píxel, como RGBE .

En imágenes digitales, 32 bits a veces se refiere a formatos de imágenes de alto rango dinámico (HDR) que usan 32 bits por canal, un total de 96 bits por píxel. Las imágenes de 32 bits por canal se utilizan para representar valores más brillantes de lo que permite el espacio de color sRGB (más brillantes que el blanco); Estos valores se pueden usar para retener con mayor precisión los reflejos brillantes cuando se reduce la exposición de la imagen o cuando se ve a través de un filtro oscuro o un reflejo opaco.

Por ejemplo, un reflejo en una mancha de aceite es solo una fracción del que se ve en la superficie de un espejo. Las imágenes HDR permiten el reflejo de las altas luces que aún se pueden ver como áreas blancas brillantes, en lugar de formas grises opacas .

Formatos de archivo [ editar ]

Un formato de archivo de 32 bits es un formato de archivo binario para el cual cada información elemental se define en 32 bits (o 4 bytes ). Un ejemplo de este formato es el formato de metarchivo mejorado .

Ver también [ editar ]

  • 16 bits
  • 64 bits
  • Historia de los videojuegos (era de 32 bits)
  • Word (tipo de datos)
  • Extensión de dirección física (PAE)

Referencias [ editar ]

  1. ^ Patterson, David; Ditzel, David (2000). Lecturas en Arquitectura de Computadores . San Diego: Prensa académica. pag. 136. ISBN 9781558605398.
  2. ^ Características funcionales IBM System / 360 Model 30 (PDF) . IBM. Agosto de 1971. págs. 8, 9. GA24-3231-7.
  3. ^ "Manual de usuario 68000" (PDF) .
  4. ^ Gwennap, Linley (16 de febrero de 1995). "P6 de Intel utiliza un diseño superescalar desacoplado" (PDF) . Informe del microprocesador . Consultado el 3 de diciembre de 2012 .
  5. ^ "Descripción general de la arquitectura ARM" (PDF) .
  6. ^ También hubo variantes de UNIX para el 80286 .

Enlaces externos [ editar ]

  • CÓMO funcionan las cosas "Cómo funcionan los bits y los bytes"
  • "Ken Colburn en LockerGnome.com: 32 bits frente a Windows de 64 bits " . Archivado desde el original el 30 de marzo de 2016.