Complex Instruction Set Computer

While Intel x86 CPUs are the most well-known example, there used to be (and still are) a number of other CISC CPUs around.
While RISC CPUs handle everything in fixed-lenghts, one clock cycle, orthogonal instructions, some CISC systems had instructions for basically everything.
Some of them were created to do precisely one job in an operating system - never to be used in any other context. Another example is graphics operations, such as creating a window and filling it with a bit map. In one operation, of course. (Data General used a couple of those in a system now long extinct, the DS series.)
A funny side offect of this was the fight between the OS designers and the microcode designers - and between the microcode designers and the hardware designers. Every party would try to make some cumbersome task a cumbersome task for the other team.
CISC machines would often be implemented in (loadable) microcode - with would be executed on a CPU that basically looks like a very odd RISC CPU. As an example: The Norsk Data ND-100 was a 16bit computer running on 128bit microcode. Very few instructions, almost all of them with very many options. A typical microcode source line would have about 60 characters, not counting comments.

The magic behind the ND CISC instructions was quite simple :

Take the instruction opcode :
MON 12

(A monitor call - what we would nowadays call a system call)
This, in octal, would read :
Use the first 8 bits, (now moving to hex), shift left four bits.
The result is 6540(oct.).
Go to this memory address in the microcode.
Execute microcode, then go and fetch next instruction.

m_turner remarked that the old DEC VAX instruction set included an instruction to find root of polinomial equation".
Yet another beautiful example for the beauty of complexity...