This document provides information on G codes and M codes used in CNC programming for milling and turning. It lists and describes common G codes for linear and circular interpolation, dwells, canned cycles, coordinate systems, and other functions. It also lists and describes common M codes for controlling spindle functions, coolant, program stops, and subprograms. The document is intended as a basic introduction and reference for CNC programming codes.