stringtranslate.com

GEC 2050

El GEC 2050 fue un miniordenador de 8 bits producido durante la década de 1970, inicialmente por Marconi Elliott Computer Systems del Reino Unido , antes de que la empresa cambiara su nombre a GEC Computers Limited . Los primeros modelos se denominaron MECS 2050 , antes de pasar a llamarse GEC 2050 .

El GEC 2050 se utilizaba habitualmente como estación de entrada de trabajos remota , que admitía un lector de tarjetas perforadas , una impresora de línea , una consola de sistema y un enlace de datos a un sistema informático central remoto , y GEC Computers vendía un paquete RJE completo que incluía el sistema, los periféricos y el software RJE. Otra aplicación llave en mano era un sistema de emisión de billetes, entre cuyos clientes se encontraba el Arsenal Football Club . El sistema también se utilizaba habitualmente para el control del tráfico por carretera y la automatización de procesos industriales.

El GEC 2050 admitía hasta 64 KiB de memoria de núcleo magnético (mínimo 4 KiB, ampliable con módulos de 8 KiB y 16 KiB). Pesaba 41 kg (90 lbs ). [1] El sistema tenía un solo controlador de canal para realizar E/S autónomas y utilizaba los mismos controladores de E/S periféricos que la minicomputadora de la serie GEC 4000 .

Conjunto de instrucciones

Aunque es CISC , el conjunto de instrucciones es lo suficientemente simple como para ser tabulado en su totalidad:

Utilizando el código de operación 29 como ilustración, el código ensamblador (AD X2,X1,offset) hace que el contenido de la ubicación de memoria 'offset(X1)' se agregue al registro X2. Por lo tanto, el registro X1 se utiliza como registro de índice y el desplazamiento, v, se especifica en el segundo byte de la instrucción. G es un registro de índice ficticio cuyo valor siempre es cero y, por lo tanto, hace que los desplazamientos se traten como direcciones absolutas en el segmento cero (global). (Por cierto, dado que X3 es el registro de índice estándar, el programa ensamblador permite que ',X3,address' se abrevie a ',address'.)

Las instrucciones de salto condicional se enumeran en pares: el primer código de operación es para un salto hacia adelante y el segundo para un salto hacia atrás. Nuevamente, el desplazamiento del salto se obtiene a partir del segundo byte de la instrucción. Por lo tanto, todas las instrucciones en las filas 0 a 7 y la fila 9 constan de dos bytes (el código de operación y un byte de datos), mientras que todas las demás instrucciones constan de un solo byte de código de operación.

El registro acumulador principal , A, se puede configurar para que tenga una longitud de 1, 2, 3 o 4 bytes, utilizando las instrucciones SETL. Esto controla cuántos bytes se cargan (o almacenan) en una instrucción de acceso a memoria. La instrucción JIL realiza un salto indirecto, como la instrucción JI, pero guarda el valor del contador de programa , S, en el registro de índice X2. Esto permite realizar llamadas a subrutinas no recursivas muy simples. Las llamadas a subrutinas más complejas implican el uso de la instrucción PREP, que guarda la información de retorno en los primeros bytes del segmento de memoria actual. Tales llamadas tampoco pueden ser recursivas.

Experiencia de usuario

Esta sección describe una sesión de trabajo en esta computadora, en una instalación típica en 1975. El programador podría llegar, para trabajar en un programa Fortran -II que ya había comenzado a escribir en la sesión anterior, llevando un papel de teleimpresor con la lista de ese programa que ha sido anotado con los nuevos cambios que se deben realizar, y la cinta perforada que contiene el código fuente legible por máquina del programa. Primero tendría que encender la computadora en el interruptor de la toma de corriente convencional en la pared, y luego en el interruptor de encendido/apagado del panel frontal. Dado que la memoria de núcleo magnético , que es una memoria no volátil , generalmente todavía contendría el programa del usuario anterior, el programador podría necesitar cargar la cinta perforada llamada Minisystem (que contiene el código objeto de un pequeño programa de monitorización de memoria ). Esta cinta, que se almacenaba en una pequeña caja de cartón en un estante cerca de la computadora, se ingresaría desde la izquierda del lector de cintas. El lector de cintas era parte integral del panel frontal de la computadora y volcaba la cinta que había leído sobre el piso, en el lado derecho. Una vez leída, el Minisystem podía iniciarse presionando el interruptor de encendido en el panel frontal.

DOMINIO>ElL 049AA 0522D 063EENLACE 0691EDITAR 1090PRINCIPAL 155E28A2 3FFF>

El programa editor de texto , EDIT, se podía llamar desde el teclado del teletipo, en el indicador ">" del Minisystem. El programador cargaba entonces la cinta fuente en el lector y, mientras ésta también se leía y se derramaba por todo el suelo, el programador podía estar ocupado enrollando la cinta del Minisystem en un carrete ordenado de nuevo, utilizando un torno manual.

Finalmente, una vez que la cinta fuente había terminado de leerse, el programa editor de texto solicitaba un nuevo comando, que era la invitación a editar el programa. Aunque ha cambiado poco en efecto a lo largo de las décadas, la edición ha cambiado enormemente en su forma de ser: sólo se "mostraba" una línea del programa a la vez (imprimiéndola físicamente en el papel); el texto insertado se imprimía debajo del punto de la línea donde se estaba insertando, y la tecla de borrado simplemente tachaba el texto que se iba a eliminar; las funciones de búsqueda y sustitución de cadenas eran muy rudimentarias; y el teleimpresor trabajaba a 110 baudios (haciendo un enorme ruido metálico y zumbido al hacerlo).

Al final de la sesión de edición, se generaría la nueva versión del programa fuente: tanto como un listado mecanografiado como una nueva cinta perforada. Mientras la perforadora de cinta de papel hacía esto, desparramando nuevamente su producto (aunque no tan rápido como el lector y hacia la izquierda de la máquina) desde su montaje en el panel frontal, el programador podría estar enrollando la versión anterior de la cinta fuente, para guardarla como una versión de respaldo. El extremo libre de la nueva cinta, que todavía se estaba perforando, podría etiquetarse con lápiz con el nombre del programa, el número de versión y la fecha de perforación.

Desafortunadamente, con sólo 16 KiBytes de memoria, el Minisystem y el compilador Fortran no cabían juntos en la memoria, por lo que el siguiente paso era cargar la cinta del compilador Fortran (que estaba guardada en otra caja de cartón en el estante de la sala de ordenadores). Mientras se leía y se derramaba por el otro lado, la cinta fuente recién perforada se podía arrancar del extremo libre que sobresalía de la perforación y enrollarla utilizando el torno manual. Se cargaría en el lector de cintas una vez que el compilador hubiera terminado de leerse y la cinta del compilador se volvería a enrollar en un carrete ordenado.

El primer paso de la cinta fuente a través del lector de cintas se utilizaba generalmente sólo para comprobar errores de sintaxis en el programa, por lo que se suprimía la generación de la cinta objeto a partir del perforador de cinta . Si se detectaban errores o advertencias, era necesario cargar de nuevo la cinta Minisystem y ejecutar el programa editor para realizar las correcciones y generar una nueva versión de la cinta fuente. De lo contrario, la cinta fuente podía volver a enrollarse y cargarse de nuevo en el lector de cintas para un segundo paso. Esta vez, se leía, de forma vacilante, mientras el perforador de cinta de papel trabajaba a toda máquina para producir la cinta objeto correspondiente (normalmente dos o tres veces más larga que la cinta fuente Fortran).

Al final, con dos cintas esparcidas por el suelo, habría que volver a leer el Minisystem mientras se enrollaban las cintas de origen y de objeto. El programa de enlace y carga, LINK, se podía llamar desde el teclado, en el mensaje del Minisystem, y la cinta de objeto se introducía en el lector. El programa de enlace y carga también requería que la cinta de biblioteca, que contenía las funciones de biblioteca Fortran, se cargara en el lector. Al final, era necesario enrollar ambas cintas, pero esto no solía hacerse inmediatamente, debido al afán del programador por estar finalmente en condiciones de ejecutar el programa. El programa del usuario (llamado MAIN) se podía llamar en el mensaje del Minisystem.

Dependiendo de lo que haya sucedido durante la ejecución del programa, es posible que el programador necesite volver a leer la cinta fuente más nueva en el programa editor, una vez más, para poder recorrer nuevamente el ciclo de desarrollo de software .

Véase también

Referencias

  1. ^ "Folleto de ventas 2050". 22 de octubre de 2019. Archivado desde el original el 22 de octubre de 2019 . Consultado el 22 de junio de 2022 .

Enlaces externos