CNC machining refers to machining performed with CNC-controlled machining tools.CNC refers to CNC machine tools that are programmed and controlled by a CNC machining language, usually G-code. CNC machining G-code language tells the CNC machine tool what Cartesian positional coordinates to use for the machining tool, and controls the tool feed rate and spindle speed, as well as tool changer, coolant and other functions. CNC machining relative to manual machining has great advantages, such as CNC machining to produce parts very accurate and repeatable; CNC machining can produce manual machining can not be completed with a complex shape of the parts. CNC machining technology is now widespread, most of the machine shop has CNC machining capabilities, the most common CNC machining in a typical machine shop CNC milling, CNC turning and CNC EDM wire cutting (EDM wire cutting). The tools for CNC milling are called CNC milling machines or CNC machining centers. The lathe for CNC turning is called a CNC turning center. CNC machining G-code can be manually programmed, but usually machine shops use CAM (Computer Aided Manufacturing) software to automatically read CAD (Computer Aided Design) files and generate G-code programs to control CNC machines.