Un lector de tarjetas perforadas de computadora o simplemente un lector de tarjetas de computadora es un dispositivo de entrada de computadora que se utiliza para leer programas de computadora en forma fuente o ejecutable y datos de tarjetas perforadas . Una perforadora de tarjetas de computadora es un dispositivo de salida de computadora que perfora tarjetas. A veces, los lectores de tarjetas perforadas por computadora se combinaban con perforadoras de tarjetas por computadora y, más tarde, con otros dispositivos para formar máquinas multifunción.
Muchas de las primeras computadoras, como la ENIAC y la IBM NORC , permitían entrada/salida con tarjeta perforada. [1] Los lectores de tarjetas y perforadoras, ya sea conectados a computadoras o en configuraciones de tarjeta hacia/desde cinta magnética fuera de línea , estaban omnipresentes hasta mediados de la década de 1970.
Las tarjetas perforadas se utilizaban desde la década de 1890; su tecnología era madura y confiable. Los lectores de tarjetas y perforadoras desarrollados para máquinas de tarjetas perforadas se adaptaron fácilmente al uso de computadoras. [2] Las empresas estaban familiarizadas con el almacenamiento de datos en tarjetas perforadas y se utilizaban ampliamente máquinas perforadoras . Las tarjetas perforadas encajaban mejor que otras tecnologías de la década de 1950, como la cinta magnética , para algunas aplicaciones informáticas porque las tarjetas individuales podían actualizarse fácilmente sin tener que acceder a una computadora. También los archivadores de tarjetas perforadas sirvieron como medio de almacenamiento de datos fuera de línea de baja densidad.
La medida estándar de velocidad es tarjetas por minuto , abreviada CPM: número de tarjetas que se pueden leer o perforar en un minuto. Los modelos de lectores de tarjetas varían desde 150 hasta alrededor de 2000 CPM. [3] [4] A 1200 CPM, es decir, 20 tarjetas por segundo, esto se traduce en 1600 caracteres por segundo (CPS), asumiendo que las 80 columnas de cada tarjeta codifican información.
Los primeros lectores de tarjetas de computadora se basaban en equipos de registro de unidades electromecánicas y usaban cepillos mecánicos que hacían un contacto eléctrico para un agujero, y ningún contacto si no había un perforador. Los lectores posteriores utilizaron sensores fotoeléctricos para detectar la presencia o ausencia de un agujero. El tiempo dentro de cada ciclo de lectura relaciona las señales resultantes con la posición correspondiente en la tarjeta. Los primeros lectores leen las tarjetas en paralelo, fila por fila, siguiendo la práctica de registro de la unidad (de ahí la orientación de los agujeros rectangulares). Más tarde, se hicieron más comunes los lectores de tarjetas que leían las tarjetas en serie, columna por columna.
Las perforaciones de tarjetas necesariamente se ejecutan más lentamente para permitir la acción mecánica de la perforación, hasta alrededor de 300 CPM o 400 caracteres por segundo. [5]
Algunos dispositivos de tarjetas ofrecen la capacidad de interpretar o imprimir una línea en la tarjeta que muestra los datos perforados. Normalmente esto ralentiza la operación de perforación. Muchas perforaciones leerían la tarjeta recién perforada y compararían su contenido real con los datos originales perforados, para proteger contra errores de perforación. Algunos dispositivos permitían leer datos de una tarjeta e introducir información adicional en la misma tarjeta.
Los lectores y perforadores incluyen una tolva para las tarjetas de entrada y uno o más contenedores apiladores para recoger las tarjetas leídas o perforadas. Una función llamada selección de apilador permite a la computadora controladora elegir en qué apilador se colocará una tarjeta recién leída o perforada.
Documation Inc. , de Melbourne, Florida, fabricó lectores de tarjetas para minicomputadoras en la década de 1970:
Sus lectores de tarjetas se han utilizado en elecciones, [11] incluida la elección "chads" de 2000 en Florida . [12]
Para algunas aplicaciones informáticas, se utilizaron formatos binarios , donde cada agujero representaba un único dígito binario (o " bit "), cada columna (o fila) se trata como un simple campo de bits y se permite cualquier combinación de agujeros. Por ejemplo, el lector de tarjetas IBM 711 utilizado con las computadoras científicas de las series 704/709/7090/7094 trataba cada fila como dos palabras de 36 bits, ignorando 8 columnas. (Las 72 columnas específicas utilizadas se podían seleccionar mediante un panel de control de enchufe , que casi siempre está cableado para seleccionar las columnas 1 a 72). A veces, las columnas ignoradas (generalmente 73 a 80) se usaban para contener un número de secuencia para cada tarjeta, por lo que el El mazo de cartas se puede ordenar en el orden correcto en caso de que se caiga.
Un formato alternativo, utilizado por el lector de tarjetas nativo IBM 714 del IBM 704 , se denomina binario de columna o binario chino, y utiliza 3 columnas para cada palabra de 36 bits. [14] Computadoras posteriores, como IBM 1130 o System/360 , utilizaron todas las columnas. El lector de tarjetas IBM 1401 se podía utilizar en modo binario de columna, que almacenaba dos caracteres en cada columna, o una palabra de 36 bits en tres columnas cuando se utilizaba como dispositivo de entrada para otras computadoras. Sin embargo, la mayoría de las perforadoras de tarjetas más antiguas no estaban destinadas a perforar más de 3 agujeros en una columna. La tecla multiperforación se utiliza para producir tarjetas binarias u otros caracteres que no están en el teclado perforador. [15]
Como broma , en modo binario, las tarjetas se podían perforar donde cada posición posible de perforación tenía un agujero. Estas " tarjetas de encaje " carecían de resistencia estructural y con frecuencia se doblaban y atascaban dentro de la máquina. [dieciséis]