Un programme CN combine généralement des codes G et des codes M pour former un ensemble d'instructions qu'une machine CNC exécutera. Les codes G (ou codes géométriques) contrôlent généralement comment et où une machine doit se déplacer (par exemple, déplacer un axe linéaire/rotatif d'une position à une autre). Les codes M (ou codes machine) sont utilisés pour contrôler différents modes ou fonctions dans la machine (par exemple, activer le liquide de refroidissement, charger un outil de coupe dans la broche, activer la broche et la tourner dans le sens horaire, ou contrôler si la machine doit se positionner elle-même en utilisant le mode absolu ou incrémentiel).