Registers are the fastest type of memory in a computer and are made up of flip-flops. There are two types of registers: special purpose registers that are used internally by the processor, and general purpose registers that can be accessed by programming to store intermediate results. Important special purpose registers include the program counter, memory address register, and instruction register. Register transfer language describes the transfer of data between registers using microoperations, and memory transfer operations describe transferring data between registers and memory.