stringtranslate.com

IBM 704

Una computadora IBM 704 en NACA en 1957
Una computadora IBM 704, con unidades de cinta IBM 727 y una pantalla CRT IBM 780
IBM 704 en el Museo Nazionale Scienza e Tecnologia Leonardo da Vinci , Milán

El IBM 704 es un gran ordenador central digital introducido por IBM en 1954. Fue el primer ordenador producido en masa con hardware para aritmética de punto flotante . [1] El Manual de operación de IBM 704 establece: [2]

La máquina de procesamiento de datos electrónicos tipo 704 es una calculadora electrónica de gran escala y alta velocidad controlada por un programa almacenado internamente del tipo de dirección única.

Por lo tanto, el 704 en ese momento se consideraba "prácticamente el único ordenador que podía manejar matemáticas complejas". [3] El 704 supuso una mejora significativa con respecto al anterior IBM 701 en términos de arquitectura e implementación. Al igual que el 701, el 704 utiliza circuitos lógicos de tubo de vacío , pero aumentó el tamaño de las instrucciones de 18 bits a 36 bits , el mismo que el tamaño de las palabras de la memoria. Los cambios con respecto al 701 incluyen el uso de memoria de núcleo magnético en lugar de tubos Williams , instrucciones aritméticas de punto flotante, direccionamiento de 15 bits y la adición de tres registros de índice . Para admitir estas nuevas funciones, las instrucciones se ampliaron para utilizar la palabra completa de 36 bits. El nuevo conjunto de instrucciones , que no es compatible con el 701, se convirtió en la base de la subclase de "arquitectura científica" de las computadoras de la serie IBM 700/7000 .

El 704 puede ejecutar hasta 12.000 adiciones de punto flotante por segundo. [1] IBM produjo 123 sistemas tipo 704 entre 1955 y 1960. [4]

Puntos de referencia

Los lenguajes de programación FORTRAN [5] y LISP [6] se desarrollaron por primera vez para el 704, al igual que el ensamblador SAP: Programa de ensamblaje simbólico , que luego distribuyó SHARE como SHARE Assembly Program .

MUSIC , el primer programa musical de computadora, fue desarrollado en el IBM 704 por Max Mathews .

En 1962, el físico John Larry Kelly, Jr. creó uno de los momentos más famosos en la historia de los Laboratorios Bell utilizando una computadora IBM 704 para sintetizar el habla. El vocoder sintetizador de la grabadora de voz de Kelly recreó la canción Daisy Bell , con acompañamiento musical de Max Mathews . Arthur C. Clarke estaba casualmente visitando a su amigo y colega John Pierce en las instalaciones de Bell Labs Murray Hill en el momento de esta demostración de síntesis de voz , y Clarke quedó tan impresionado que seis años más tarde la utilizó en la escena culminante de su novela y guión de 2001: Odisea en el espacio , [7] donde el ordenador HAL 9000 canta la misma canción. [8] (Bell Laboratories publicó más tarde una grabación, en discos de diez pulgadas y 78 RPM, de voz y música creadas de esta manera. Aparentemente se hizo con un IBM 7090 , el sucesor de estado sólido del 704.) [ cita necesaria ]

Edward O. Thorp , profesor de matemáticas en el MIT, utilizó el IBM 704 como herramienta de investigación para investigar las probabilidades de ganar mientras desarrollaba su teoría del juego de blackjack . [9] [10] Usó FORTRAN para formular las ecuaciones de su modelo de investigación.

El IBM 704 en el Centro de Computación del MIT se utilizó como rastreador oficial para la Operación Moonwatch del Observatorio Astrofísico Smithsonian en el otoño de 1957. IBM proporcionó cuatro científicos para ayudar a los científicos y matemáticos del Observatorio Astrofísico Smithsonian en el cálculo de las órbitas de los satélites: Dr. Giampiero Rossoni, Dr. John Greenstadt, Thomas Apple y Richard Hatch.

El IBM 704 se utilizó para análisis de la dinámica de vuelo de los cohetes Vanguard del NRL . [11]

El Laboratorio Científico de Los Álamos (LASL) desarrolló uno de los primeros monitores llamado SLAM para permitir el procesamiento por lotes . [12]

Registros

Módulo de circuito de tubo de vacío IBM 704

El IBM 704 tiene un acumulador de 38 bits , un registro multiplicador/cociente de 36 bits y tres registros de índice de 15 bits . El contenido de los registros de índice se resta de la dirección base, por lo que los registros de índice también se denominan "registros de decremento". Los tres registros de índice pueden participar en una instrucción: el campo de etiqueta de 3 bits en la instrucción es un mapa de bits que especifica cuál de los registros participa en la operación. Sin embargo, cuando se selecciona más de un registro de índice, sus contenidos se someten a una operación OR bit a bit (no se suman) antes de que se produzca la disminución. Este comportamiento persistió en máquinas de arquitectura científica posteriores (como la IBM 709 y la IBM 7090 ) hasta la IBM 7094 . El IBM 7094, introducido en 1962, aumentó el número de registros de índice a siete y sólo seleccionó uno a la vez; el comportamiento "o" permanece disponible en un modo de compatibilidad del IBM 7094. [13]

Formatos de instrucciones y datos.

Hay dos formatos de instrucción, denominados "Tipo A" y "Tipo B". [14] La mayoría de las instrucciones eran del tipo B.

Las instrucciones de tipo A tienen, en secuencia, un prefijo de 3 bits (código de instrucción), un campo de decremento de 15 bits , un campo de etiqueta de 3 bits y un campo de dirección de 15 bits . Hay operaciones de salto condicional basadas en los valores de los registros de índice especificados en el campo de etiqueta . Algunas instrucciones también restan el campo de decremento del contenido de los registros de índice. La implementación requiere que los segundos 2 bits del código de instrucción sean distintos de cero, lo que da un total de seis posibles instrucciones de tipo A. Uno (STR, código de instrucción binario 101) no se implementó hasta el IBM 709 .

Las instrucciones de tipo B tienen, en secuencia, un código de instrucción de 12 bits (con los bits 2 y 3 establecidos en 0 para distinguirlas de las instrucciones de tipo A), un campo de bandera de 2 bits, 4 bits no utilizados, un campo de etiqueta de 3 bits , y un campo de dirección de 15 bits .

El conjunto de instrucciones subdivide implícitamente el formato de datos en los mismos campos que las instrucciones de tipo A: prefijo, decremento, etiqueta y dirección. Existen instrucciones para modificar cada uno de estos campos en una palabra de datos sin cambiar el resto de la palabra, aunque la instrucción Store Tag no se implementó en el IBM 704.

La implementación original de Lisp utiliza los campos de dirección y decremento para almacenar el principio y el final de una lista vinculada , respectivamente. Las funciones primitivas car ("contenido de la parte de dirección del registro") y cdr ("contenido de la parte de decremento del registro") recibieron el nombre de estos campos. [15]

Memoria y periféricos

Carga de tarjeta perforada en el lector IBM 711

El 704 incluye controles para: un lector de tarjetas perforadas 711 , una impresora alfabética 716 , un registrador de tarjetas perforadas 721, cinco unidades de cinta magnética 727 y una unidad de control de cinta 753, un lector y grabador de tambor magnético 733 y un núcleo magnético 737. Unidad de almacenamiento. La masa total fue de aproximadamente 19.466 libras (9,7 toneladas cortas; 8,8 t). [16] [17]

El 704 en sí venía con una consola de control que tenía 36 interruptores o botones de control variados y 36 interruptores de entrada de datos, uno para cada bit de un registro. Básicamente, la consola de control solo permite configurar los valores binarios de los registros con interruptores y ver el estado binario de los registros mostrados en el patrón de muchas pequeñas lámparas de neón, que se parecen mucho a los LED modernos. Para la interacción humana con la computadora, los programas se ingresarían inicialmente en tarjetas perforadas en lugar de en la consola, y la salida legible por humanos se dirigiría a la impresora.

También estaba disponible el registrador de salida de tubo de rayos catódicos IBM 740 , que es una pantalla vectorial de 21 pulgadas con un tiempo de persistencia de fósforo muy largo de 20 segundos para la visualización humana, junto con una pantalla de 7 pulgadas que recibe la misma señal que la pantalla más grande pero con un fósforo de rápida descomposición diseñado para ser fotografiado con una cámara adjunta. [18]

La unidad de almacenamiento de núcleo magnético 737 sirve como RAM y proporciona 4.096 palabras de 36 bits, el equivalente a 18.432 bytes. [19] Las unidades de cinta magnética 727 almacenan más de 5 millones de caracteres de 6 bits por carrete.

Fiabilidad

En su época, la 704 era una máquina excepcionalmente fiable. Sin embargo, al ser una máquina de tubos de vacío, la IBM 704 tenía una confiabilidad muy pobre para los estándares actuales. En promedio, la máquina fallaba aproximadamente cada 8 horas, [20] [21] lo que limitaba el tamaño del programa que los primeros compiladores de Fortran podían traducir con éxito porque la máquina fallaba antes de una compilación exitosa de un programa grande. [21]

Ver también

Referencias

  1. ^ ab "Sistema de procesamiento de datos 704". Archivos de IBM - Exposiciones - IBM Mainframes - Sala de referencia de mainframes - Perfiles de productos de mainframes . IBM. 23 de enero de 2003 . Consultado el 18 de agosto de 2016 .
  2. ^ "Máquinas de procesamiento de datos electrónicos IBM TIPO 704" (PDF) . Manual de funcionamiento de IBM 704 . Corporación Internacional de Máquinas de Negocios. 1955 . Consultado el 28 de diciembre de 2017 .
  3. ^ Pesce, Mark (26 de febrero de 2015). "Los ensambladores alguna vez fueron personas: mi tía lo hizo para la NASA". Desarrollador de software . El registro . Consultado el 18 de agosto de 2016 .
  4. ^ "Historia de la cronología de IBM". IBM. 23 de enero de 2003 . Consultado el 4 de julio de 2019 .
  5. ^ "Historia de FORTRAN y FORTRAN II". Grupo de Preservación de Software .
  6. ^ "Prehistoria de LISP: verano de 1956 a verano de 1958". www-formal.stanford.edu .
  7. ^ "Biografía en línea de Arthur C. Clarke". Archivado desde el original el 11 de diciembre de 1997.
  8. ^ "Bell Labs: donde" HAL "habló por primera vez (sitio web de Bell Labs Speech Synthesis)". Archivado desde el original el 1 de abril de 2014.
  9. ^ Documental de Discovery Channel con entrevistas de Ed y Vivian Thorp
  10. ^ Levinger, Jeff (10 de febrero de 1961). "Computadora de programas de instructores de matemáticas: Thorpe, 704 Beat Blackjack" (PDF) . La tecnología . Cambridge, MA: Instituto de Tecnología de Massachusetts. 81 (1): 1.
  11. ^ "Vehículo de lanzamiento de satélites Vanguard: resumen de ingeniería".
  12. ^ Kaisler, Stephen H. (noviembre de 2018). Mainframes de primera generación: la serie IBM 700. Publicaciones de académicos de Cambridge. pag. 69.ISBN _ 978-1-5275-0650-3. Consultado el 25 de abril de 2019 .
  13. ^ Principios de funcionamiento de IBM 7094 (PDF) , Biblioteca de referencia de sistemas IBM (quinta ed.), IBM, 1962, p. 8, A22-6703-4.
  14. ^ John Savard. «Del IBM 704 al IBM 7094» . Consultado el 15 de noviembre de 2009 .
  15. ^ McCarthy, John (1960). "Funciones recursivas de expresiones simbólicas y su cálculo por máquina, parte I". Archivado desde el original el 4 de octubre de 2013 . Consultado el 14 de febrero de 2009 .pag. 28.
  16. ^ Weik, Martin H. (marzo de 1961). "IBM 704". ed-thelen.org . Una tercera encuesta sobre los sistemas informáticos digitales electrónicos nacionales.
  17. ^ Weik, Martin H. (diciembre de 1955). "IBM-704". ed-thelen.org . Una encuesta sobre los sistemas informáticos digitales electrónicos nacionales.
  18. ^ "Archivos de IBM: registrador de salida de tubo de rayos catódicos 704". 23 de enero de 2003 . Consultado el 10 de diciembre de 2012 .
  19. ^ "Archivos de IBM: unidad de almacenamiento de núcleo magnético IBM 737". 23 de enero de 2003 . Consultado el 10 de diciembre de 2012 .
  20. ^ Patrick, Robert L. "General Motors/Monitor norteamericano para la computadora IBM 704" (PDF) . Archivado desde el original (PDF) el 31 de agosto de 2021.
  21. ^ ab Lorenzo, Mark Jones (2019). Abstracción de la máquina: la historia del lenguaje de programación FORTRAN (TRADUCCIÓN DE FÓRMULA) . Publicado de forma independiente. ISBN 978-1082395949.

Otras lecturas

enlaces externos