page require an extra word. Consequently, much time was spent cleverly conserving one or several words. Programmers deliberately placed code at the end of a page to achieve a free transition to the next page as PC was incremented. Basic instructions 000 – AND – AND the memory operand with AC. 001 – TAD – Two's complement ADd the memory operand to <L,AC> (a 12 bit signed value (AC) w. carry in L). 010 – ISZ – Increment the memory operand and Skip next instruction if result is Zero. 011 – DCA – Deposit AC into the memory operand and Clear AC. 100 – JMS – JuMp to Subroutine (storing return address in first word of subroutine!). 101 – JMP – JuMP. 110 – IOT – Input/Output Transfer (see below). 111 – OPR – microcoded OPeRations (see below). IOT (Input-Output Transfer) instructions The PDP-8 processor defined few of the IOT instructions, but simply provided a framework. Most IOT instructions were defined by the individual I/O devices. Device Bits 3 through 8 of an IOT instruction select an I/O device. Some of these device addresses are standardized by convention: 00 is handled by the processor and not sent to any I/O device (see below). 01 is usually the high-speed paper tape reader. 02 is the high-speed paper tape punch. 03 is the console keyboard (and any associated low-speed paper tape reader). 04 is the console printer (and any associated low-speed paper tape punch). Instructions for device 0 affect the processor as a whole. For example, ION (6001) enables interrupt processing, and IOFF (6002) disables it. Function Bits 9 through 11 of an IOT instruction select the function(s) the device performs. Simple devices (such as the paper tape reader and punch and the console keyboard and printer) use the bits in standard ways: Bit 11 causes the processor to skip the next instruction if the I/O device is ready. Bit 10 clears AC. Bit 9 moves a word between AC and the device, initiates another I/O transfer, and clears the device's "ready" flag. These operations take place in a well-defined order that gives useful results if more than one bit is set. More complicated devices, such as disk drives, use these 3 bits in device-specific fashions. Typically, a device decodes the 3 bits to give 8 possible function codes. OPR (OPeRate) Many operations are achieved using OPR, including most of the conditionals.