Microcode is a layer of code interpretation that lies between machine language, and a computer's CPU hardware. Essentially, the computer uses a machine language interpreter written in an extremely low-level programming language. The term microcode can refer the interpreter, or to the language in which it is written. Programming microcode is sometimes called microprogramming.
Nearly all modern CPUs use microcode, as it has a number of benefits. For example, it is often possible to modify the microcode via a firmware or operating system update, so that microcode bugs can be fixed, and CPU bugs worked around.