Un lector de tarjetas perforadas de computadora o simplemente lector de tarjetas de computadora es un dispositivo de entrada de computadora que se utiliza para leer programas de computadora en formato fuente o ejecutable y datos de tarjetas perforadas . Una perforadora de tarjetas de computadora es un dispositivo de salida de computadora que perfora agujeros en las tarjetas. A veces, los lectores de tarjetas perforadas de computadora se combinaban con perforadoras de tarjetas de 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 la entrada y salida de tarjetas perforadas. [1] Los lectores y perforadores de tarjetas, ya sea conectados a computadoras o en configuraciones de tarjeta a/desde cinta magnética fuera de línea , eran omnipresentes hasta mediados de la década de 1970.
Las tarjetas perforadas se habían utilizado desde la década de 1890; su tecnología era madura y confiable. Los lectores de tarjetas y las perforadoras desarrolladas para máquinas de tarjetas perforadas se adaptaron fácilmente al uso informático. [2] Las empresas estaban familiarizadas con el almacenamiento de datos en tarjetas perforadas y las máquinas perforadoras se emplearon ampliamente. Las tarjetas perforadas se adaptaban 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 se podían actualizar fácilmente sin tener que acceder a una computadora. Además, los archivadores de tarjetas perforadas servían como un medio de almacenamiento fuera de línea de baja densidad para los datos.
La medida estándar de velocidad es tarjetas por minuto , abreviada como CPM: la cantidad de tarjetas que se pueden leer o perforar en un minuto. Los modelos de lectores de tarjetas varían de 150 a aproximadamente 2000 CPM. [3] [4] A 1200 CPM, es decir, 20 tarjetas por segundo, esto se traduce en 1600 caracteres por segundo (CPS), suponiendo que las 80 columnas de cada tarjeta codifican información.
Los primeros lectores de tarjetas de ordenador se basaban en equipos de registro unitario electromecánicos y utilizaban escobillas mecánicas que establecían un contacto eléctrico en caso de un orificio y no hacían contacto si no había orificio. Los lectores posteriores utilizaban sensores fotoeléctricos para detectar la presencia o ausencia de un orificio. La temporización de cada ciclo de lectura relacionaba las señales resultantes con la posición correspondiente en la tarjeta. Los primeros lectores leían las tarjetas en paralelo, fila por fila, siguiendo la práctica de registro unitario (de ahí la orientación de los orificios rectangulares). Más tarde, se hicieron más comunes los lectores de tarjetas que leían las tarjetas en serie, columna por columna.
Las perforadoras de tarjetas necesariamente funcionan más lentamente para permitir la acción mecánica de perforación, hasta alrededor de 300 CPM o 400 caracteres por segundo. [5]
Algunos dispositivos de tarjetas ofrecen la posibilidad de interpretar o imprimir una línea en la tarjeta que muestra los datos que se perforan. Por lo general, esto ralentiza la operación de perforación. Muchas perforadoras leían la tarjeta recién perforada y comparaban su contenido real con los datos originales perforados, para protegerse contra errores de perforación. Algunos dispositivos permitían leer datos de una tarjeta y perforar 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 denominada selección de apilador permite que la computadora controladora elija 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]
En algunas aplicaciones informáticas se utilizaban formatos binarios , en los que cada agujero representaba un único dígito binario (o " bit "), cada columna (o fila) se trataba como un simple campo de bits y se permitía 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 placa de conexiones , que casi siempre está conectado para seleccionar las columnas 1 a 72). A veces, las columnas ignoradas (normalmente 73 a 80) se utilizaban para contener un número de secuencia para cada tarjeta, de modo que la baraja de tarjetas pudiera ordenarse en el orden correcto en caso de que se cayera.
Un formato alternativo, utilizado por el lector de tarjetas nativo IBM 714 del IBM 704 , se conoce como binario de columna o binario chino, y utilizaba 3 columnas para cada palabra de 36 bits. [14] Las computadoras posteriores, como el IBM 1130 o el System/360 , usaban todas las columnas. El lector de tarjetas del IBM 1401 podía usarse en modo binario de columna, que almacenaba dos caracteres en cada columna, o una palabra de 36 bits en tres columnas cuando se usaba como dispositivo de entrada para otras computadoras. Sin embargo, la mayoría de las perforadoras de tarjetas más antiguas no estaban diseñadas para perforar más de 3 agujeros en una columna. La tecla multiperforadora se usa para producir tarjetas binarias u otros caracteres que no están en el teclado de la perforadora. [15]
Como broma , en modo binario, se podían perforar tarjetas en las que cada posible posición de perforación tenía un agujero. Estas " tarjetas de encaje " carecían de resistencia estructural y con frecuencia se doblaban y se atascaban dentro de la máquina. [16]