This document provides information on numerical control (NC) and computer numerical control (CNC) programming. It defines NC as using punched paper tape to control machine tools, while CNC uses a computer and software. The key components of an NC program are described as the part program, coded numbers specifying tool positions, and sequencing positions to machine parts. Advantages of CNC include easier programming, error correction, and increased flexibility compared to NC. Common G-codes and M-codes for controlling axes movement, circular interpolation, cutting parameters, and auxiliary functions are also outlined.