En regardant le code ISO ci-contre, on remarque qu’il est composé de codes qui reviennent très souvent. Il est possible de classer ses codes par familles :
- Numéro de ligne (N)
- Fonctions liées à l’usinage de la pièce, elles enclenchent le plus souvent des déplacements ou des cycles d’usinage
- Fonctions préparatoires (G)
- Coordonnées de points (X, Y, Z, A, B, C)
- Coordonnées des centres de cercles (I, J, K)
- Rayon d’arc (R)
- Fonctions liées à la machine
- Fonctions auxiliaires (M) qui permettent d’enclencher la lubrification, de changer d’outil, ou de déclencher des accessoires. (en anglais: Miscellaneous)
- Fonctions liées à l’outil
- Sélection d’outil (T) (en anglais: Tool)
- Association d’un correcteur de jauge outil (D)
- Vitesse de déplacement (F) (en anglais: Feed)
- Vitesse de rotation (S) (en anglais: Speed)
Des machines différentes peuvent utiliser le même code pour effectuer des fonctions différentes : même les machines qui utilisent le même contrôleur CNC. Certains ont déclaré que le G-code « Fanuc » est standard, ce qui est faux. C’est simplement l’un des plus simple et des plus répandu.
Les fichiers G-code sont produits par des programmes de CFAO tels que GOelan, SmartCAM, Gibbscam, SolidCAM, Featurecam, Artcam, Edgecam (S4X), Surfcam, CamWorks, Mastercam, OneCNC, Router-CIM, Alphacam, TopSolid’Cam, e-NC, CATIA, GPSoftware, EFICN (EFICAD), PowerMill (Delcam), etc. Ces applications utilisent en général des convertisseurs appelés post-processeurs pour optimiser le code en vue de son utilisation sur une machine particulière. Les post-processeurs sont généralement modifiables par l’utilisateur afin d’optimiser leur usage. De tels programmes doivent être adaptés pour chaque type de machine-outil.
Quelques machines CNC utilisent des programmes « Interactifs », qui permettent de programmer avec des Agents en cachant partiellement ou totalement le G-code. Quelques exemples populaires sont Mazak avec le ‘Mazatrol’, Hurco avec ‘Ultimax’, le langage interactif Mori Seiki ’CAPS’ ainsi que le SIEMENS ‘Shopturn’ et ‘Shopmill’

Exemple de programmation ‘conversationnelle’ avec ShopMill (SIEMENS), surcouche graphique qui permet une programmation plus intuitive et cache à l’utilisateur une partie du code ISO