De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

Panel frontal de IBM 650 con pantallas decimales codificadas bicuinariamente

Las computadoras decimales son computadoras que pueden representar números y direcciones en decimal , así como proporcionar instrucciones para operar con esos números y direcciones directamente en decimal, sin conversión a una representación binaria pura . Algunos también tenían una longitud de palabra variable , lo que permitía operaciones con números con una gran cantidad de dígitos.

Primeros ordenadores [ editar ]

Las primeras computadoras que eran exclusivamente decimales incluyen ENIAC , IBM NORC , IBM 650 , IBM 1620 , IBM 7070 , UNIVAC Solid State 80 . En estas máquinas, la unidad básica de datos era el dígito decimal, codificado en uno de varios esquemas, incluido el decimal codificado en binario (BCD), el código bi-quinario y el código dos de cinco . A excepción de IBM 1620 y 1710, estas máquinas usaban direccionamiento por palabra . Cuando se utilizaron caracteres no numéricos en estas máquinas, se codificaron como dos dígitos decimales.

Otras computadoras tempranas estaban orientadas a caracteres, proporcionando instrucciones para realizar operaciones aritméticas en cadenas de caracteres de números decimales, usando BCD o exceso-3 (XS-3) [1] para dígitos decimales. En estas máquinas, el elemento de datos básico era un carácter alfanumérico , normalmente codificado en seis  bits . UNIVAC I y UNIVAC II utilizaron direccionamiento de palabras, con palabras de 12 caracteres. Los ejemplos de IBM incluyen IBM 702 , IBM 705 , la serie IBM 1400 , [2] IBM 7010 e IBM 7080 .

Computadoras posteriores [ editar ]

El IBM System / 360 , introducido en 1964 para unificar las líneas de productos de IBM, utilizaba direccionamiento binario por carácter y también incluía instrucciones para aritmética decimal empaquetada, así como aritmética de enteros binarios y punto flotante binario. Utilizaba caracteres de 8 bits e introducía la codificación EBCDIC , aunque también se admitía ASCII . [3] El Burroughs B2500 introducido en 1966 también usaba caracteres EBCDIC o ASCII de 8 bits y podía empaquetar dos dígitos decimales por byte, pero no proporcionaba aritmética binaria, por lo que era una arquitectura decimal.

Computadoras más modernas [ editar ]

Varias familias de microprocesadores ofrecen soporte decimal limitado. Por ejemplo, la familia de microprocesadores 80x86 proporciona instrucciones para convertir números BCD de un byte (empaquetados y desempaquetados) a formato binario antes o después de las operaciones aritméticas. [4] Estas operaciones no se extendieron a formatos más amplios y, por lo tanto, ahora son más lentas que usar 'trucos' BCD de 32 bits o más anchos para calcular en BCD (ver [1] ). El x87 FPU tiene instrucciones para convertir datos decimales empaquetados de 10 bytes (18 dígitos decimales), aunque luego opera sobre ellos como números de punto flotante.

El Motorola 68000 proporcionó instrucciones para la suma y resta de BCD; [5] al igual que el 6502 . En los procesadores derivados de la familia 68000, muy posteriores, estas instrucciones se eliminaron cuando se definió el conjunto de instrucciones de Coldfire , y todos los mainframes de IBM también proporcionan aritmética de enteros BCD en hardware. El Zilog Z80 , Motorola 6800 y sus derivados, junto con otros procesadores de 8 bits, y también la familia Intel x86 tienen instrucciones especiales que admiten la conversión hacia y desde BCD. El organizador psion IEl software proporcionado por el fabricante de la computadora de mano implementó sus operaciones de punto flotante en software utilizando BCD en su totalidad. Todos los modelos posteriores de Psion utilizaron solo binarios, en lugar de BCD.

La aritmética decimal es ahora más común; por ejemplo, se agregaron tres tipos decimales con dos codificaciones binarias al estándar IEEE 754r de 2008 , con significados decimales de 7, 16 y 34 dígitos . [6]

El procesador IBM Power6 y el IBM System z9 han implementado estos tipos utilizando la codificación binaria Densely Packed Decimal , [7] la primera en hardware y la segunda en microcódigo.

Referencias [ editar ]

  1. ^ Manual de referencia de programadores de sistemas extendidos UNIVAC 1005 (PDF) , Sperry Rand, p. 1–8, FSD-1089r1
  2. ^ Sistema de procesamiento de datos IBM 1401: Manual de referencia (PDF) . IBM. Abril de 1962. p. 20. A24-1403-5.
  3. ^ IBM (1964). IBM System / 360 Principios de funcionamiento (PDF) . Primera edición. A22-6821-0.
  4. ^ "Guía del programador de MASM" . Microsoft. 1992. Archivado desde el original el 15 de julio de 2007 . Consultado el 1 de julio de 2007 . CS1 maint: parámetro desalentado ( enlace )
  5. ^ "Manual de referencia del programador de la familia Motorola M68000" (PDF) . Consultado el 1 de julio de 2007 . CS1 maint: parámetro desalentado ( enlace )
  6. ^ "PROYECTO de estándar para aritmética de punto flotante P754" (PDF) . 2006-10-04 . Consultado el 1 de julio de 2007 . CS1 maint: parámetro desalentado ( enlace )[ enlace muerto permanente ]
  7. ^ Cowlishaw, Mike F. (2015) [1981, 2008]. "Aritmética decimal general" . IBM . Consultado el 2 de enero de 2016 .

Lectura adicional [ editar ]

  • Schmid, Hermann (1974). Computación decimal (1 ed.). Binghamton, Nueva York, EE. UU .: John Wiley & Sons, Inc. ISBN 0-471-76180-X. Consultado el 3 de enero de 2016 .(NB. Este título proporciona una descripción detallada de los cálculos decimales , incluida la explicación de los algoritmos y los decimales codificados en binario ).
  • Schmid, Hermann (1983) [1974]. Computación decimal (1 (reimpresión) ed.). Malabar, Florida, EE.UU .: Robert E. Krieger Publishing Company. ISBN 0-89874-318-4. Consultado el 3 de enero de 2016 .(NB. Al menos algunos lotes de esta edición de reimpresión fueron erratas con páginas defectuosas 115-146).
  • Jones, Douglas W. (10 de septiembre de 2014) [1999]. "Tutoriales de aritmética" . Iowa City, Iowa, EE. UU .: Universidad de Iowa, Departamento de Ciencias de la Computación . Consultado el 3 de enero de 2016 .