CNC
CNC stands
for Computer Numerical Control. A CNC is a computer that powers a machine
tool by reading G-code machining instructions. (G-code is the basic
programming language of CNC machining world.) Guided by the CNC, the
machine tool shapes a workpiece by selectively removing metal.
Basic Movements
A CNC controller can give a machine tool a variety of instructions. At the
simplest level, the CNC controller moves a cutting tool from one point to
the other using the Cartesian coordinate system. Lathes are programmed
horizontally or vertically in the X- or Y- axis (below). Milling machines
can also be programmed in the Z-axis.

By combining many incremental G-code movements, the CNC can move a cutting
tool in a smooth path like an arc. (Many recent CNC controllers can
interpolate a horizontal circular arc as a single instruction--- making
the programmer’s task much easier.)
Changing Tools - Automatically
A complex machining operation requires multiple tools. This is a snap for
a CNC controller, as it automates tool changes. Machine tools come
equipped with magazines that contain different tools. When a new tool is
needed to continue an operation, the CNC controller tells the machine to
retrieve the new tool from the magazine. (The G-code instruction for a
tool change is M06)