A computer punched card reader or just computer card reader is a computer input device used to read computer programs in either source or executable form and data from punched cards. A computer card punch is a computer output device that punches holes in cards. Sometimes computer punch card readers were combined with computer card punches and, later, other devices to form multifunction machines. It is a input device and also an output device. Most early computers, such as the ENIAC, and the IBM NORC, provided for punched card input/output. Card readers and punches, either connected to computers or in off-line card to/from magnetic tape configurations, were ubiquitous through the mid-1970s.