La Serie IBM 700/7000 fue una serie de computadoras de gran tamaño (mainframes) construida por IBM desde los años 1950 hasta inicios de los años 1960. La serie incluía varias arquitecturas de procesador incompatibles. Los 700 usaban lógica de tubos de vacío y se volvieron obsoletos con la introducción de la serie 7000 transistorizados. Los 7000, en su momento, fueron reemplazados por el System/360, el cual fue anunciado en 1964. Sin embargo el 360/65, el primer 360 completo capaz de reemplazar a los 7000, no estuvo disponible hasta noviembre de 1965. Problemas iniciales con el OS/360 y el alto costo de convertir el software mantuvo en servicio a muchos computadores 7000 por varios años.
La serie IBM 700/7000 tenía seis formas completamente diferentes de almacenar datos e instrucciones:
La clase 700 usaba válvulas termoiónicas, la clase 7000 estaba transistorizada. Todas las máquinas usaban (como muchos computadores de la época) memoria de núcleo magnético; excepto en los primeros modelos 701 y 702, los cuales usaban memoria CRT. Mientras que las arquitecturas eran diferentes, la máquinas compartían la misma clase de tecnología electrónica y generalmente usaban los mismos periféricos incluyendo las unidades de cinta (IBM 727 y 729), lectores de tarjetas, perforadoras de tarjetas e impresoras. Los primeros periféricos adoptaron la tecnología de las máquina de contabilidad de IBM e incluso usaban los plugboards. Posteriormente los periféricos fueron adoptados por la Serie IBM 1400 de gama media.
Los primeros computadores se vendieron sin software. Cuando surgieron los sistemas operativos, con cuatro diferentes arquitecturas de mainframes más la arquitectura de gama media de la serie 1400, se convirtió en un importante problema para IBM, ya que significa por lo menos cuatro desarrollos de software diferentes.
El System/360 combinaba las mejores características de la arquitectura de las series 7000 y 1400 en un solo diseño, sin embargo algunos modelos 360 tenían características opcionales que permitían emular las instrucciones del 1400 y 7000. Uno de los argumentos de venta del IBM System/370 fue la emulación de la serie 1400/7000 mejorada (permitía hacerlo bajo control del sistema operativo, en lugar de reiniciar el sistema y arrancar en modo emulación, como se hacía con el 360).
Conocido como el Computador de Defensa durante el desarrollo en el IBM Poughkeepsie Laboratory, esta máquina se dio a conocer oficialmente el 7 de abril de 1953 como la Máquina de Procesamiento de Datos Electrónica IBM 701.
Los números tenían una longitud de 36 o 18 bits, y sólo de coma fija. (Ver: ¿Por qué palabras de 36 bits?)
Las instrucciones eran de 18 bits de largo, de direccionamiento simple.
Para expandir la memoria de 2048 a 4096 palabras, una 33ra instrucción se añadía para usar el bit más significativo del campo de dirección para seleccionar el banco (Esta instrucción fue creada probablemente usando la instrucción "No OP", la cual parece haber sido la única instrucción con bits no usados, y que originalmente ignoraba su campo de dirección. Sin embargo, la documentación sobre esta nueva instrucción no está disponible actualmente).
Los registros del procesador consistían en:
2.048 o 4.096 palabras binarias de 36 bits, con caracteres de 6 bits
Los números son de 36 bits, con coma fija y flotante.
El formato de instrucciones básico tenía 3 bit de prefijo, 15 bit de decremento, 3 bit de etiqueta("tag"), y 15 bit de direccionamiento. El campo de prefijo especificaba el tipo de instrucción. El campo de decremento a menudo contenía un operando inmediato que modificaba el resultado de la operación, o era usado para definir el tipo de instrucción. Los 3 bits de etiqueta especificaban tres (siete en el 7094) índices de registro, el contenido de cada uno era restado de la dirección para obtener la dirección efectiva. El campo de dirección contenía tanto una dirección como un operando inmediato.
Los registros del procesador consistían en:
Los registro del acumulador (y el coeficiente multiplicador) estaban en formato de signo/magnitud.
Los Índices de registros operaban usando el formato de complemento a 2 y cuando se usaban para modificar una dirección de instrucción eran restados de la dirección en la instrucción. En máquinas con tres índices de registro, si la etiqueta ("tag") tenía un set de 2 o 3 bits (p.e. selección de múltiples registros) entonces sus valores eran juntados antes la resta. El IBM 7094, con siete índices de registro tenía un modo "compatibilidad" para poder usar los programas de las primeras máquinas.
Los indicadores de estado permitían interactuar con el operador a través de un panel con interruptores y luces.
La serie 709/7090 usaba Canales Sincronizadores de Datos para la entrada/salida de alta velocidad, como cinta y discos. Los CSD ejecutaban sus propios programas simples de la memoria del computador que controlaban la transferencia de datos entre la memoria y los dispositivos de E/S. La E/S de la perforadora de tarjetas y de la impresora de alta velocidad eran a menudo transferido a cintas magnéticas y manejada desde una IBM 1401 separada. Más adelante, los canales de datos fueron usados para conectar un 7094 y un 7044 para formar el IBM 7094/7044 Direct Coupled System (DCS) ("Sistema Directo Acoplado"). En esta configuración, el 7044 manejaba principalmente la E/S.
El Programa Ensamblador FORTRAN (FORTRAN Assembly Program, FAP) fue el macro ensamblador por defecto para el 709, 7090, y el 7094.
Su pseudo-operación BSS, usada para reservar memoria, es el origen del nombre común de la "sección BSS", que aún se usa en muchos lenguajes ensamblador hoy día para designar rangos de direcciones de memoria reservada del tipo que no tiene que ser grabada en la imagen ejecutable.
El IBM 702 y el IBM 705 eran similares y el 705 podía correr muchos de los programas del 702 sin modificaciones, pero no eran totalmente compatibles.
El IBM 7080 fue la versión transitorizada del 705, con varias mejoras. Para compatibilidad hacia abajo, podía correr en modo 705 I, modo 705 II, modo 705 III o en modo 7080 completo.
Los datos eran representados por cadenas de longitud variables finalizadas con una marca de grabación.
Cinco caracteres: un carácter de opcode y 4 caracteres de dirección - OAAAA
La arquitectura comercial del 700/7000 estaba inspirada en la muy exitosa Serie IBM 1400 de computadoras administrativas de gama media. Posteriormente IBM introdujo la versión mainframe del IBM 1410 llamado IBM 7010.
Los datos eran representados por cadenas de longitud variables finalizadas con una marca de palabra
Largo variable: 1, 2, 6, 7, 11, o 12 caracteres.
Ninguno, todas las instrucciones operaban en la memoria.
100.000 caracteres.[1]
El IBM 7070, IBM 7072 y el IBM 7074 eran máquinas decimales, con palabras de longitud fija. Usaban 10 dígitos como el pequeño y más antiguo IBM 650, pero su juego de instrucciones no era compatible con éste.