G-code

O κώδικας-G (γνωστός επίσης και σαν RS-274) ο οποίος έχει πολλές παραλλαγές, είναι η συνηθισμένη ονομασία για την  πιο διαδεδομένη γλώσσα προγραμματισμού αριθμητικού ελέγχου (NC). Χρησιμοποιείται κυρίως για την  καθοδήγηση  αυτοματοποιημένων εργαλειομηχανών, σε υποβοηθούμενη  από Η/Υ κατασκευή προϊόντων  (computer-aided manufacturing). Μερικές φορές ονομάζεται  γλώσσα προγραμματισμού G,  αλλά δεν πρέπει να συγχέεται  με τη γλώσσα προγραμματισμού G του LabVIEW.

O κώδικας-G είναι μια γλώσσα με την οποία οι άνθρωποι λένε σε μια ελεγχόμενη από έναν Η/Υ μηχανή, πώς να κάνει κάτι. Το "πώς" καθορίζεται από εντολές  σχετικά με το πού να κινηθεί το εργαλείο κοπής, πόσο γρήγορα να κινηθεί, τι διαδρομή θα ακολουθήσει κ.λ.π. Η πιο συνηθισμένη περίπτωση  είναι  να   κινείται  το εργαλείο κοπής σύμφωνα με τις οδηγίες αυτές ακολουθώντας μία διαδρομή και αφαιρώντας υλικό, ώστε να προκύψει  στο τέλος το τελικό κομμάτι. Η ίδια η έννοια επεκτείνεται επίσης και σε εργαλεία που δεν κόβουν, όπως εργαλεία σχηματισμού ή λείανσης, σε photoplotting, σε προσθετικές μεθόδους, όπως η 3D εκτύπωση,  και τα όργανα μέτρησης.

 Υλοποιήσεις 
Η πρώτη υλοποίηση μιας  γλώσσας προγραμματισμού  αριθμητικού ελέγχου, έγινε στο Εργαστήριο Σερβομηχανισμών του MIT  στα τέλη της δεκαετίας του 1950. Στις δεκαετίες που ακολούθησαν  από τότε, έχουν αναπτυχθεί πολλές υλοποιήσεις από πολλούς (εμπορικούς και μη) οργανισμούς. Ο κώδικαςG-code έχει συχνά χρησιμοποιηθεί σε αυτές τις υλοποιήσεις. Η κύρια τυποποιημένα έκδοση που χρησιμοποιήθηκε στις Ηνωμένες Πολιτείες, αποφασίστηκε από την Electronic Industries Alliance στις αρχές της δεκαετίας του 1960. Μια τελική αναθεώρηση εγκρίθηκε τον Φεβρουάριο του 1980 ως RS-274-D. Σε άλλες χώρες, το πρότυπο ISO 6983 χρησιμοποιείται συχνά, αλλά πολλές Ευρωπαϊκές χώρες χρησιμοποιούν άλλα πρότυπα. Για παράδειγμα, το  DIN 66025 χρησιμοποιείται στη Γερμανία, και τα PN-73 Μ-55256 και PN-93/M-55251 είχαν  χρησιμοποιηθεί παλαιότερα στην Πολωνία.

Από κατασκευαστές ελεγκτών και εργαλειομηχανών έχουν προστεθεί ανεξάρτητα επεκτάσεις και παραλλαγές  και οι χειριστές ενός συγκεκριμένου ελεγκτή, πρέπει να γνωρίζουν τις διαφορές του προϊόντος που χειρίζονται.

Μία τυποποιημένη έκδοση του G-code, που είναι γνωστή ως BCL, χρησιμοποιείται μόνο σε πολύ λίγα μηχανήματα.

Από τη δεκαετία του  1970 έως το 1990, πολλοί κατασκευαστές εργαλειομηχανών CNC προσπάθησαν να ξεπεράσουν τα προβλήματα συμβατότητας, προσαρμοζόμενοι στους ελεγκτές εργαλειομηχανών που κατασκευάζονταν από τη Fanuc. Η Siemens ήταν ένας άλλος κυρίαρχος της αγοράς στους ελεγκτές  CNC, ειδικά στην Ευρώπη. Πλέον σήμερα (τη δεκαετία του 2010), οι διαφορές και η ασυμβατότητα των ελεγκτών δεν είναι  τόσο μεγάλο πρόβλημα,  επειδή οι μηχανουργικές εργασίες σχεδιάζονται με εφαρμογές CAD/CAM, που εξάγουν τον κατάλληλο G-κώδικα για μία συγκεκριμένη εργαλειομηχανή.

Ορισμένες μηχανές CNC χρησιμοποιούν "διαλογικό" προγραμματισμό, ο οποίος είναι προγραμματισμός με την βοήθεια ενός οδηγού (wizard).  Ο οδηγός, είτε κρύβει τον κώδικα  G-κώδικα ή παρακάμπτει εντελώς τη χρήση του. Μερικά δημοφιλή παραδείγματα είναι το Okuma's Advanced One Touch (AOT), το Southwestern Industries' ProtoTRAK, το Mazak's Mazatrol, το Hurco's Ultimax, τo Haas' Intuitive Programming System (IPS), και το διαλογικό λογισμικό της Mori Seiki's CAPS.

Ο G-κώδικας ξεκίνησε ως μια περιορισμένη γλώσσα που δεν είχε δομές όπως οι βρόχοι, τελεστές συνθηκών και μεταβλητές που να δηλώνονται από τον προγραμματιστή. Δεν ήταν σε θέση να κωδικοποιήσει  λογική, ήταν απλά ένας τρόπος για να "συνδέονται οι τελείες", όπου πολλές από τις θέσεις των τελειών τις καθόριζε ο προγραμματιστής με το χέρι.  Οι τελευταίες όμως  υλοποιήσεις του κώδικα  G-code περιλαμβάνουν τέτοιες δομές, δημιουργώντας μια γλώσσα κάπως πιο κοντά σε μια υψηλού επιπέδου γλώσσα προγραμματισμού. Επιπλέον, όλοι οι μεγάλοι  κατασκευαστές (π.χ. Fanuc, Siemens, Heidenhain) παρέχουν πρόσβαση σε  δεδομένα PLC, όπως την  τοποθέτηση των αξόνων και δεδομένων εργαλείων, μέσω μεταβλητών που μπορούν να χρησιμοποιηθούν από NC προγράμματα. Αυτές οι δομές καθιστούν ευκολότερη την ανάπτυξη  εφαρμογών αυτοματισμού.

 Ειδικοί κωδικοί 
Οι G-κώδικες, που ονομάζονται επίσης προπαρασκευαστικοί (preparatory ) κώδικες, είναι οποιεσδήποτε λέξεις σε ένα πρόγραμμα  CNC, που αρχίζουν με το γράμμα G. Γενικά είναι ένας κώδικας που λέει στην εργαλειομηχανή τι είδους ενέργεια να εκτελέσει, όπως:
 Γρήγορη κίνηση (μεταφορά του εργαλείου όσο το δυνατόν συντομότερα σε ένα σημείο χωρίς κοπή)
 Ελεγχόμενη πρόωση σε  ευθεία γραμμή ή τόξο
 Μια σειρά από ελεγχόμενες κινήσεις που θα έχουν σαν αποτέλεσμα π.χ τη διάτρηση μιας οπής ή την κατασκευή ενός τεμαχίου συγκεκριμένου σχήματος (π.χ. ένα γραναζιού)
 Να δηλώσει πληροφορίες πληροφορίες σχετικές με τα εργαλεία κοπής, όπως απόκλιση
 Αλλαγή συστήματος συντεταγμένων
Υπάρχουν και άλλοι κώδικες,  π.χ οι κώδικες τύπου μπορεί να αντιμετωπιστούν σαν καταχωρητές σε έναν υπολογιστή.

 Διευθύνσεις γραμμάτων 
Κάποιες διευθύνσεις γραμμάτων χρησιμοποιούνται ή μόνο σε φρεζάρισμα ή μόνο σε τόρνευση. Οι περισσότερες χρησιμοποιούνται και στα δύο. Παρακάτω με έντονα γράμματα είναι οι διευθύνσεις που συναντώνται  συχνότερα μέσα σε ένα πρόγραμμα.

Πηγές:Smid Peter (2008), CNC Programming Handbook (3rd ed.), New York: Industrial Press: Smid 2008;. Green et al. 1996..

ΜεταβλητήΠεριγραφήΣχετικές πληροφορίες A  Απόλυτη ή σχετική θέση του άξονα A (περιστροφικός άξονας γύρω από τον άξονα X ) Σαν θετική περιστροφή ορίζεται η αντίθετη των δεικτών του ρολογιού κοιτώντας από τη θετική πλευρά του άξονα  X προς την αρνητική του. B Απόλυτη ή σχετική θέση του άξονα Β (περιστροφικός άξονας γύρω από τον άξονα Υ )  C Απόλυτη ή σχετική θέση του άξονα C (περιστροφικός άξονας γύρω από τον άξονα Z )  D  Καθορίζει τη διάμετρο ή την ακτινική απόκλιση, που χρησιμοποιείται για την αντιστάθμιση του εργαλείου κοπής. Το  D χρησιμοποιείται για το βάθος κοπής στους τόρνους. Χρησιμοποιείται επίσης για επιλογή οπών (apertures) και εντολών σε  photoplotters. G41: Αριστερή αντιστάθμιση εργαλείου κοπής, G42: Δεξιά αντιστάθμιση εργαλείου κοπής E  Πρόωση ακριβείας για σπειροτόμηση σε τόρνους F  Καθορίζει την πρόωση (feed rate)  Συνηθισμένες μονάδες είναι η απόσταση που διανύει το εργαλείο ανά μονάδα χρόνου για φρέζες (Ίντσες ανά λεπτό, inches per minute-IPM, ή millimeters  ανά λεπτό minute, mm/min) και η απόσταση ανά περιστροφή για τόρνους   (Ίντσες ανά περιστροφή inches per revolution, IPR,  ή millimeters per revolution, mm/rev) G  Διεύθυνση για προπαρασκευαστικές εντολές Οι εντολές G συχνά λένε στη μονάδα ελέγχου τι κίνηση θέλουμε να κάνει (π.χ γρήγορη τοποθέτηση, γραμμική πρόωση, κυκλική πρόωση, τυποποιημένο κύκλο) ή τί τιμή απόκλισης να χρησιμοποιηθεί H  Καθορίζει την απόκλιση μήκους του εργαλείου, Σχετικός άξονας (Incremental axis) που αντιστοιχεί στον άξονα C (π.χ σε έναν  turn-mill)  G43: Αρνητική αντιστάθμιση μήκους εργαλείου, G44: Θετική αντιστάθμιση μήκους εργαλείου I  Καθορίζει το κέντρο του τόξου στον άξονα  X για τις εντολές τόξων G02 ή G03. Επίσης χρησιμοποιείται σαν παράμετρος μέσα σε μερικούς κύκλους κατεργασιών. Το κέντρο του τόξου είναι τις περισσότερες φορές (αλλά όχι όλες), η σχετική απόσταση του κέντρου του τόξου από την τρέχουσα θέση και όχι η απόλυτη θέση,  σε σχέση με το Σύστημα Συνταταγμένων Εργασίας (WCS). J Καθορίζει το κέντρο του τόξου στον άξονα Y για τις εντολές τόξων G02 ή G03. Επίσης χρησιμοποιείται σαν παράμετρος μέσα σε μερικούς κύκλους κατεργασιών. Ισχύουν τα ίδια όπως παραπάνω K  Καθορίζει το κέντρο του τόξου στον άξονα Z για τις εντολές τόξων G02 ή G03.Επίσης χρησιμοποιείται σαν παράμετρος μέσα σε κάποιους κύκλους κατεργασιών, όπως η παράμετρος  L.Ισχύουν τα ίδια όπως παραπάνω L  Απαρίθμηση βρόχων κύκλους κατεργασιών 
Καθορισμός των καταχωρητών που θα επεξεργαστούμε με την G10 Απαριθμητής βρόχου κύκλων κατεργασιών (Fixed cycle): Καθορίζει τον αριθμό των επαναλήψεων  ("βρόχων") ενός κύκλου κατεργασιών σε μία συγκεκριμένη θέση. Υποτίθεται ότι είναι 1, εκτός αν προγραμματιστεί κάποιος άλλος ακέραιος. Μερικές φορές χρησιμοποιείται η διεύθυνση K αντί για την  L.  Με σχετική τοποθέτηση 
(G90), μία σειρά οπών που ισαπέχουν μπορεί να προγραμματιστεί σαν βρόχος παρά σαν διαφορετικές θέσεις. 
Χρήση G10: Καθορίζει ποιοι καταχωρητές θα αλλάξουν (μεταβολή σημείου εργασίας, αντιστάθμιση ακτίνας εργαλείου, αντιστάθμιση μήκους εργαλείου, κ.τ.λ.). M  Διάφορες λειτουργίες Κώδικας ενέργειας, βοηθητική εντολή. Οι περιγραφές διαφέρουν. Αρκετοί M-κώδικες καλούν λειτουργίες της μηχανής και για το λόγο αυτό πολλοί λένε ότι το  "M" είναι από το  "μηχανή", αν και αυτό δεν ισχύει. N  Αριθμός γραμμής (block) σε ένα πρόγραμμα; Αριθμός παραμέτρου του συστήματος, που θα αλλάξει χρησιμοποιώντας το G10 Αριθμοί γραμμών (block) : Προαιρετικοί, έτσι συχνά παραλείπονται. Απαραίτητοι για κάποιες λειτουργίες, όπως M99 P διεύθυνση (για να πούμε στον ελεγκτή σε ποια γραμμή του προγράμματος να επιστρέψει, εάν δεν υπάρχει η προεπιλογή είναι το 1) ή σε εντολές GoTo  (εάν ο ελεγκτής τις υποστηρίζει). Η αρίθμηση N δεν είναι απαραίτητο να αυξάνει κατά 1 (για παράδειγμα μπορεί να αυξάνει κατά 10, 20, or 1000) και μπορεί να χρησιμοποιηθεί σε κάθε γραμμή ή μόνο σε κάποια σημεία μέσα στο πρόγραμμα.  
Αριθμοί παραμέτρων συστήματος: η G10 επιτρέπει την αλλαγή των παραμέτρων του συστήματος κάτω από τον έλεγχο του προγράμματος. O Όνομα προγράμματος Για παράδειγμα, O4501. Για πολλά χρόνια συνηθιζόταν οι οθόνες ελέγχου των CNC, να χρησιμοποιούν το διαγραμμένο μηδενικό (δηλ. το μηδέν με μία λοξή γραμμή πάνω του σαν διαγραφή) για να διακρίνεται το γράμμα "O" από το ψηφίο "0". Σήμερα τα GUI των οθονών,  προσφέρουν τη δυνατότητα επιλογής γραμματοσειρών , όπως τα PC.  P  Χρησιμοποιείται ως παράμετρος διεύθυνσης για διάφορους  G και M κώδικες Με τον G04, καθορίζει το χρόνο παύσης
 Επίσης χρησιμοποιείται σαν παράμετροςσε canned cycles, παριστάνοντας χρόνους παύσης ή άλλες παραμέτρους
 Επίσης χρησιμοποιείται στην κλήση και τον τερματισμό υποπρογραμμάτων. Με τη M98, καθορίζει ποιο υποπρόγραμμα θα κληθεί. Με τη M99, it καθορίζει σε ποιο αριθμό γραμμής του κυρίου προγράμματος θα επιστρέψει.) Q  Βήμα τσιμπίματος (Peck increment) σε  canned κύκλους  Για παράδειγμα, G73, G83 (κύκλοι βηματικής διάτρησης) R  Καθορίζει το μέγεθος της ακτίνας του τόξου ή καθορίζει το ύψος επιστροφής (retract) σε  κύκλους εργασιών φρεζαρίσματος (milling canned cycles)  Χρησιμοποιείται για ακτίνες, δεν υποστηρίζουν όμως όλοι οι ελεγκτές τη διεύθυνση R στις εντολές G02 and G03. Στην περίπτωση αυτή χρησιμοποιούνται τα διανύσματα IJK. Χρησιμοποιείται επίσης για το ύψος επιστροφής, το "επίπεδο R ", όπως καλείται. Εάν προγραμματιστεί η εντολή G99,  τότε το εργαλείο επιστρέφει σε αυτό το ύψος. S  Καθορίζει την ταχύτητα, είτε την ταχύτητα της ατράκτου, είτε την επιφανειακή ταχύτητα ανάλογα με την μέθοδο Τύπος δεδομένων =ακέραιος.  Στην κατάσταση G97 (η οποία είναι συνήθως η προεπιλεγμένη), ο ακέραιος μετά το S ερμηνεύεται σαν στροφές ανά λεπτό (rev/min, rpm). Στην κατάσταση G96 (CSS),ο ακέραιος μετά το S ερμηνεύεται σαν επιφανειακή ταχύτητα (surface speed—sfm (G20)) ή  m/min (G21). Δείτε επίσης  Speeds and feeds. Σε μηχανές πολλών λειτουργιών   (τόρνους-φρέζες ή φρέζες-τόρνους), το ποιά άτρακτος παίρνει την είσοδο  (κύρια άτρακτος ή υποάτρακτος) καθορίζεται από άλλους κώδικες M. T Επιλογή εργαλείου Για να κατανοήσουμε πώς λειτουργεί η διεύθυνση  T και πώς αλληλεπιδρά (ή όχι ) με τη M06, πρέπει κανείς να μελετήσει τις διάφορες μεθόδους, όπως προγραμματισμό  lathe turret , ATC fixed tool selection, ATC random memory tool selection, την έννοια του "επόμενου εργαλείου σε αναμονή", και αφαίρεσης εργαλείων. Ο προγραμματισμός για μία συγκεκριμένη εργαλειομηχανή, προϋποθέτει τη γνώση της μεθόδου που χρησιμοποιεί η συγκεκριμένη εργαλειομηχανή . Οι τρόποι με τους οποίους θα αποκτήσουμε αυτή την γνώση, αναφέρονται στα σχόλια της  M06.  U  Σχετικός άξονας (ιncremental axis) που αντιστοιχεί στον άξονα X  (τυπικά μόνο σε ελεγκτές τόρνων της ομάδας  A) 
Επίσης καθορίζει το χρόνο παύσης σε μερικές μηχανές (αντί για το  "P" ή το "X").  Σε αυτούς τους ελεγκτές, οι X και U καθιστούν περιττές τις G90 και G91, αντίστοιχα. Σε αυτούς τους τόρνους, η G90 χρησιμοποιείται αντί για  a fixed cycle address for roughing. V  Σχετικός άξονας (ιncremental axis) που αντιστοιχεί στον άξονα  Y  Μέχρι τη δεκαετία του 2000s, η διεύθυνση  V χρησιμοποιούνταν πολύ σπάνια, επειδή οι περισσότεροι τόρνοι που χρησιμοποιούσαν  U και W δεν είχαν άξονα Yκαι έτσι δεν χρησιμοποιούσαν το  V. (Green et al. 1996 δεν ανάφεραν καν το V στον πίνακα διευθύνσεών τους.) That is still often the case, although the proliferation of live lathe tooling and turn-mill machining has made V address usage less rare than it used to be (Ο Smid 2008 δείχνει ένα παράδειγμα). Κοιτάξτε επίσης την  G18. W Σχετικός άξονας (ιncremental axis)  που αντιστοιχεί στον άξονα (τυπικά μόνο σε ελεγκτές τόρνων της ομάδας  A)  Σε αυτούς τους ελεγκτές, οι Z και W καθιστούν περιττές τις G90 και G91, αντίστοιχα. Σε αυτούς τους τόρνους, η G90 χρησιμοποιείται αντί για  a fixed cycle address for roughing. X  Απόλυτη ή σχετική θέση του άξονα  X. 
Επίσης καθορίζει το χρόνο παύσης σε μερικές μηχανές (αντί για το  "P" ή το "X").  Y  Απόλυτη ή σχετική θέση του άξονα Y  Z  Απόλυτη ή σχετική θέση του άξονα Z  Ο άξονας περιστροφής του βασικού spindle συχνά καθορίζε,ι ποιος άξονας της μηχανής χαρακτηρίζεται σαν  Z.

  Κατάλογος των εντολών G που συναντώνται  συνήθως στα χειριστήρια της FANUC και σε παρόμοια χειριστήρια 
Sources: Smid 2008; Smid 2010; Green et al. 1996.
ΚώδικαςΠεριγραφήΦρεζάρισμα
( M ) Τόρνευση
( T ) Σχετικές πληροφορίες G00 Γρήγορη τοποθέτηση M  T  Παραδοσιακά, σε κινήσεις  2- ή 3-αξόνων, η εντολή G00 (αντίθετα με την G01)  δεν κινείται απαραίτητα σε μία ευθεία γραμμή ανάμεσα στο αρχικό σημείο και το σημείο προορισμού. Κάθε άξονας κινείται στη μέγιστη ταχύτητά του, μέχρι ο καθένας να φτάσει στην τελική του θέση. Έτσι οι άξονες που κινούνται σε μικρότερες μετατοπίσεις, συνήθως ολοκληρώνουν πρώτοι την μετακίνησή τους (με την προϋπόθεση ότι οι άξονες έχουν τις ίδιες ταχύτητες). Αυτό έχει σημασία, επειδή καταλήγει σε κινήσεις που ο προγραμματιστής πρέπει να πάρει υπόψη του, ανάλογα με το τι εμπόδια βρίσκονται στη διαδρομή, ώστε να αποφευχθούν συγκρούσεις. Μερικές μηχανές προσφέρουν την δυνατότητα ευθείας κίνησης από την αρχική στην τελική θέση.  G01  Γραμμική παρεμβολή  M  T  Η πιο συνηθισμένη εντολή κοπής. Το πρόγραμμα καθορίζει το αρχικό και τελικό σημείο, και τότε η μονάδα ελέγχου της εργαλειομηχανής υπολογίζει αυτόματα (παρεμβάλλει) τα ενδιάμεσα σημεία από τα οποία θα περάσει, ώστε να κινηθεί σε ευθεία γραμμή (απ΄ όπου και το όνομα "γραμμική"). Στη συνέχεια η μονάδα ελέγχου υπολογίζει τις γωνιακές ταχύτητες με τις οποίες θα περιστρέψει τους κοχλίες με τους σερβοκινητήρες ή τους βηματικούς κινητήρες. Ο υπολογιστής κάνει χιλιάδες υπολογισμούς το δευτερόλεπτο και οι κινητήρες ανταποκρίνονται γρήγορα σε κάθε είσοδο. Έτσι η πραγματική διαδρομή του εργαλείου γίνεται με τον καθορισμένο ρυθμό τροφοδοσίας σε μία διαδρομή που είναι γραμμική (μέσα σε πολύ μικρά όρια). G02 Κυκλική παρεμβολή με ωρολογιακή φορά (κοπή τόξων κατά την φορά των δεικτών του ρολογιού-CW) M  T  Πολύ όμοια εννοιολογικά με την  G01. Και σε αυτήν την περίπτωση ο ελεγκτής παρεμβάλει ενδιάμεσα σημεία και καθοδηγεί τους σερβοκινητήρες ή τους βηματικούς κινητήρες να περιστραφούν τόσο,  όσο χρειάζεται ώστε να τοποθετηθεί η μύτη του εργαλείου στο σημείο που πρέπει. Αυτή η διαδικασία επαναλαμβανόμενη χιλιάδες φορές το δευτερόλεπτο, παράγει την επιθυμητή διαδρομή του εργαλείου. Στην περίπτωση της  G02, η παρεμβολή παράγει κύκλους και όχι γραμμές. Όπως και με την περίπτωσης της G01, η πραγματική διαδρομή του εργαλείου γίνεται με την προγραμματισμένη πρόωση, και σε μία διαδρομή η οποία ταιρίαζει με την ιδεώδη   (στην περίπτωση της G02 έναν κύκλο) μέσα σε πολύ μικρά όρια. Στην πράξη η παρεμβολή είναι τόσο ακριβής (όταν τηρούνται όλες οι προϋποθέσεις), ώστε με το φρεζάρισμα ενός κύκλου να γίνουν περιττές εργασίες όπως το τρύπημα ή ακόμη το  fine boring.  
Διεύθυνσεις για την ακτίνα ή το κέντρο: Η G02 και  G03 παίρνουν είτε μία διεύθυνση  R  (για την ακτίνα του επιθυμητού τόξου) ή τη διεύθυνση  IJK ( για τις συνιστώσες του διανύσματος  από την αρχή μέχρι το κέντρο του τόξου).  Αντιστάθμιση εργαλείου: Στους περισσότερους ελεγκτές δεν μπορείτε να ξεκινήσετε την G41 ή την  G42 στην κατάσταση  G02 ή  G03. Πρέπει να έχετε αντισταθμίσει το εργαλείο σε προγενέστερο  G01 μπλοκ.  Συχνά προγραμματίζεται μία μικρή προπαρασκευαστική κίνηση, απλώς για αντιστάθμιση του εργαλείου, πριν ξεκινήσει το κύριο συμβάν, δηλ. η κοπή του κύκλου.

Πλήρεις κύκλοι: Όταν τα σημεία που ξεκινάει και τελειώνει ο κύκλος είναι ταυτόσημα, θα κοπεί ένα τόξο 360°, δηλ. ένας πλήρης κύκλος. (Μερικοί παλαιότεροι ελεγκτές δεν το υποστηρίζουν αυτό, επειδή τα τόξα δεν μπορούν να περάσουν πέρα από τα τεταρτημόρια του καρτεσιανού συστήματος συντεταγμένων. Αντίθετα προγραμματίζονται 4 τεταρτοκύκλια το ένα συνεχόμενα από το άλλο.)  G03 Κυκλική παρεμβολή με αντιωρολογιακή φορά (κοπή τόξων αντίθετα από την φορά των δεικτών του ρολογιού-CCW) M  T  Ίδιες σχετικές πληροφορίες όπως στην G02.  G04 Παύση M  T Παύει η κίνηση όλων των αξόνων, όχι όμως η κίνηση της ατράκτου, εάν είναι ενεργοποιημένη, ή άλλες βοηθητικές λειτουργίες όπως π.χ. η παροχή ψυκτικού υγρού. Παίρνει μία διεύθυνση για την περίοδο παύσης  (μπορεί να είναι X, U ή P). Η περίοδος παύσης, η οποία τυπικά είναι  milliseconds, καθορίζεται από μία παράμετρο ελέγχου. Μερικές μηχανές μπορούν να δεχτούν είτε X 1.0 (s) ή P1000 (ms), οι οποίες είναι ισοδύναμες. Λόγοι για τους οποίους θα κάνατε μία παύση είναι για παράδειγμα να δώσετε χρόνο για την επιτάχυνση της ατράκτου, προτού προχωρήσετε στο επόμενο βήμα, ή για να σπάσετε και να καθαρίσετε τα γρέζια.
Επιλογή περιόδου παύσης: Συχνά η παύση χρειάζεται να διαρκεί μόνο μία ή δύο πλήρεις περιστροφές της ατράκτου. Αυτό είναι τυπικά πολύ λιγότερο από 1 δευτερόλεπτο. Να είστε προσεκτικοί, όταν επιλέγετε τη διάρκεια, επειδή μεγάλη διάρκεια παύσης είναι απώλεια χρόνου κύκλων. Σε μερικές περιπτώσεις αυτό δεν έχει καμμία σημασία, αλλά σε επαναλαμβανόμενες παραγωγές μεγάλου όγκου (πάνω από χιλιάδες κύκλων), αξίζει να υπολογίσετε ότι αν π.χ. χρειάζονται μόνο 100 ms παύσης σε μία κατεργασία, τότε μπορείτε για ασφάλεια να βάλετε 200ms , αλλά το να βάλετε 1000ms  είναι απλώς σπατάλη χρόνου (πάρα πολύ μεγάλη διάρκεια).  G05 P10000  Έλεγχος καμπύλης υψηλής ακρίβειας (High-precision contour control, HPCC) M Χρησιμοποιεί έναν buffer πρόβλεψης μεγάλου βάθους και επεξεργασία εξομοίωσης, για να πετύχει καλύτερη κίνηση επιτάχυνσης και επιβράδυνσης των αξόνων κατά το φρεζάρισμα μιας διαδρομής. G05.1 Q1.  AI Advanced Preview Control  M Χρησιμοποιεί έναν buffer πρόβλεψης μεγάλου βάθους και επεξεργασία εξομοίωσης, για να πετύχει καλύτερη κίνηση επιτάχυνσης και επιβράδυνσης των αξόνων κατά το φρεζάρισμα μιας διαδρομής. G06.1   ΜηχανούργησηNon-uniform rational B-spline (NURBS) M  Ενεργοποιεί παρεμβολή Non-Uniform Rational B, για μηχανούργηση πολύπλοκων καμπυλών και κυματομορφών (αυτός ο κώδικας έχει επιβεβαιωθεί σε προγραμματισμό  Mazatrol 640M ISO) G07 Δήλωση φανταστικού άξονα M  G09  Έλεγχος ακριβούς σταματήματος, μη παραμένουσα εντολή
(Exact stop check, non-modal) M  T  Η επιτάχυνση της μηχανής έχει σαν αποτέλεσμα το στρογγύλεμα των γωνιών. Όταν θέλουμε οξείες γωνίες, τότε πρέπει να σταματήσουν εντελώς οι άξονες. Σε αυτή την περίπτωση χρησιμοποιούμε την εντολή G09.  
Η παραμένουσα μορφή της εντολής είναι G61.  G10 Εισαγωγή προγραμματιζόμενων δεδομένων που αφορούν συστήματα συντεταγμένων (Fixtures), αποκλίσεις εργαλείων, αντιστάθμιση φθοράς εργαλείων M  TΤροποποιεί τις τιμές των μετατοπίσεων των συστημάτων συντεταγμένων εργασίας και τις αποκλίσεις των εργαλείων G11  Ακύρωση εγγραφής δεδομένων  M  T  G12  Κατεργασία πλήρους κύκλου με ωρολογιακή φορά(Full-circle interpolation, clockwise) M    Τυποποιημένος κύκλος για την διευκόλυνση του προγραμματισμού κυκλικών παρεμβολών  360° με  blend-radius lead-in and lead-out. Δεν είναι στάνταρτ στους ελεγκτές Fanuc. G13  Κατεργασία πλήρους κύκλου  με αντιωρολογιακή φορά.
(Full-circle interpolation, counterclockwise)  M  G17  Επιλογή επιπέδου XY  M Καθορίζει ότι το επίπεδο κατεργασίας θα είναι το XY G18  Επιλογή επιπέδου ZX M  T  Καθορίζει ότι το επίπεδο κατεργασία θα είναι το ZX
Στους περισσότερους τόρνους CNC  (που κατασκευάστηκαν ανάμεσα στο  1960 και το  2000), το επίπεδο  ZX είναι το μόνο διαθέσιμο και έτσι οι εντολές  G17 και G19 δεν χρησιμοποιούνται. Αυτό τώρα αλλάζει, καθώς ξεκινά η εποχή στην οποία τα live tooling, multitask/multifunction, και  mill-turn/turn-mill σταδιακά γίνονται το "νέο στάνταρτ". Αλλά ο απλός παραδοσιακός παράγοντας μορφής πιθανώς δεν θα εξαλειφθεί, απλώς θα παραμεριστεί για να κάνει χώρο για νέες διαμορφώσεις. Κοιτάξτε επίσης τη διεύθυνση  V. G19  Επιλογή επιπέδου YZ   M Καθορίζει ότι το επίπεδο κατεργασία θα είναι το YZ G20 Προγραμματισμός σε Ίντσες M  T Κάπως ασυνήθιστο έξω από τις Ηνωμένες Πολιτείες και σε (μικρότερη έκταση) τον Καναδά και το Ηνωμένο Βασίλειο. Όμως στην παγκόσμια αγορά, ο ανταγωνισμός ανάμεσα στις G20 και G21 φαίνεται να είναι απαραίτητος μερικές φορές. Η συνηθισμένη ελάχιστη μετατόπιση στην G20 είναι ένα δεκάκις χιλιοστό της Ίντσας  (0.0001"), η οποία είναι μεγαλύτερη από την συνηθισμένη ελάχιστη μετατόπιση στην G21 (ένα χιλιοστό του χιλιοστού, 0.001 mm, δηλ. ένα μικρόμετρο).  Αυτή η φυσική διαφορά μερικές φορές ευνοεί τον προγραμματισμό σε G21. G21  Προγραμματισμός σε millimeters (mm) M  T Στην παγκόσμια αγορά κυριαρχεί απέναντι στην G20. G28  Επιστροφή στη θέση home  (μηδενικό σημείο μηχανής, γνωστό επίσης και σαν σημείο αναφοράς της μηχανής)  M  T  Σαν παραμέτρους παίρνει τις διευθύνσεις  X Y Z μιας ενδιάμεσης θέσης  από την οποία θα περάσει η μύτη του εργαλείου, κατά την κίνησή της προς το μηδενικό σημείο της μηχανής. Αυτές οι συντεταγμένες δίνονται σε σχέση με το μηδενικό σημείο του τεμαχίου (ή με άλλα λόγια το μηδενικό σημείο του προγράμματος), ΟΧΙ το μηδενικό σημείο της μηχανής. Η εντολή είναι μη παραμένουσα (Non modal) G30  Επιστροφή σε δευτερεύουσα θέση home  (μηδενικό σημείο μηχανής, γνωστό επίσης σαν σημείο αναφοράς της μηχανής) M TΠαίρνει μία διεύθυνση  P η οποία καθορίζει ποιο μηδενικό σημείο της μηχανής θέλουμε, εάν η μηχανή έχει αρκετά μηδενικά σημεία (P1 έως P4). Παίρνει διευθύνσεις  X Y Z, οι οποίες καθορίζουν το ενδιάμεσο σημείο από το οποίο θα περάσει η μύτη του εργαλείου κατά την κίνησή του προς το μηδενικό σημείο της μηχανής. Οι συντεταγμένες αυτού του σημείου είναι ως προς το μηδενικό σημείο του τεμαχίου (δηλ. το μηδενικό σημείο του προγράμματος) και ΟΧΙ το μηδενικό σημείο της μηχανής.  G31  Λειτουργία παράλειψης (χρησιμοποιείται για  probes και συστήματα μέτρησης μήκους εργαλείων)  M  G32 Σπειροτόμηση απλού σημείου, τύπου longhand (εάν δεν χρησιμοποιείται κύκλος, π.χ. G76)(Single-point threading, longhand style (if not using a cycle, e.g., G76))   TΌμοια με την γραμμική παρεμβολή  G01, εκτός από τον αυτόματο συγχρονισμό της ατράκτου για σπειροτόμηση απλού σημείου. G33  Σπειροτόμηση σταθερού βήματος(Constant-pitch threading) M  G33  Σπειροτόμηση απλού σημείου, τύπου longhand (εάν δεν χρησιμοποιείται κύκλος, π.χ. G76)(Single-point threading, longhand style (if not using a cycle, e.g., G76))  T  Μερικοί ελεγκτές τόρνων αποδίδουν αυτό τον τρόπο λειτουργίας στην G33 αντί για την G32. G34 Σπειροτόμηση μεταβλητού βήματος M  G40  Ακύρωση της αντιστάθμισης της ακτίνας εργαλείου M  T  Απενεργοποιεί την αντιστάθμιση της ακτίνας του εργαλείου κοπής (CRC). Ακυρώνει την G41 ή την  G42. G41 Αριστερή αντιστάθμιση ακτίνας εργαλείου M  T Αριστερή αντιστάθμιση ακτίνας εργαλείου.

Ενεργοποιεί την αντιστάθμιση της ακτίνας του εργαλείου κοπής (cutter radius compensation - CRC), αριστερά, για climb φρεζάρισμα.

Φρεζάρισμα: Με δοσμένο ένα δεξιόστροφο ελικοειδές εργαλείο κοπής και M03 κατεύθυνση περιστροφής της ατράκτου, η G41 αντιστοιχεί σε climb milling (down milling). Παίρνει μία διεύθυνση (D ή H ή P) η οποία καλεί την τιμή ενός  καταχωρητή απόκλισης για την ακτίνα του χρησιμοποιούμενου εργαλείου.

Τόρνευση: Συχνά δεν χρειάζεται καμμία διεύθυνση D ή H στους τόρνους επειδή για όποιο εργαλείο είναι ενεργό, αυτόματα μαζί του καλείται και η γεωμετρική του απόκλιση. (Each turret station is bound to its geometry offset register). Για το φρεζάρισμα οι G41 και G42 έχουν εν μέρει αυτοματοποιηθεί και έχουν καταστεί περιττές (αν και όχι εξ' ολοκλήρου) αφότου έχει γίνει πιο συνηθισμένος ο προγραμματισμός  CAM. Τα συστήματα CAM επιτρέπουν στο χρήστη να προγραμματίζει, σαν να χρησιμοποιούσε κοπτικά εργαλεία μηδενικής διαμέτρου. Η θεμελιώδης έννοια της αντιστάθμισης της ακτίνας του εργαλείου κοπής είναι ακόμη εν λειτουργία (δηλ. ότι η επιφάνεια που παράγεται θα απέχει απόσταση R  από το κέντρο του εργαλείου κοπής), αλλά η νοοτροπία προγραμματισμού είναι διαφορετική. Ο άνθρωπος δεν χωροθετεί την διαδρομή του εργαλείου με λεπτομέρεια με χρήση των εντολών  G41, G42 και G40, επειδή το πρόγραμμα CAM φροντίζει γι' αυτό. Το πρόγραμμα έχει διάφορες μεθόδους επιλογής CRC , όπως computer, control, wear, reverse wear, off, μερικές από τις οποίες δεν χρησιμοποιούν καθόλου τις G41/G42  (που είναι καλές για ξεχόνδρισμα ή μεγάλες ανοχές φινιρίσματος) και άλλες που κάνουν μικροδιορθώσεις της φθοράς των εργαλείων (που είναι καλύτερες για πιο σφιχτές ανοχές φινιρίσματος).  G42 Δεξιά αντιστάθμιση ακτίνας εργαλείου M  T  Ενεργοποιεί την δεξιά αντιστάθμιση του εργαλείου κοπής για το παραδοσιακό φρεζάρισμα. Ίδιες επεξηγηματικές πληροφορίες όπως η  G41. Με δεδομένο ένα δεξιόστροφο εργαλείο κοπής ελίκων και M03 κατεύθυνση περιστροφής της ατράκτου, η G42 αντιστοιχεί στο παραδοσιακό φρεζάρισμα (up milling).  G43  Αρνητική αντιστάθμιση ύψους εργαλείου
(Tool height offset compensation negative)  M    Παίρνει μία διεύθυνση, συνήθως H, ώστε να καλέσει τον καταχωρητή απόκλισης μήκους του εργαλείου. Η τιμή είναι αρνητική, επειδή θα προστεθεί στην gauge line position. H G43 είναι η συνηθέστερη παραλλαγή (συγκριτικά με την G44). G44  Θετική αντιστάθμιση ύψους εργαλείου
(Tool height offset compensation positive)  M  Παίρνει μία διεύθυνση, συνήθως H, ώστε να καλέσει τον καταχωρητή απόκλισης μήκους του εργαλείου. Η τιμή είναι θετική επειδή θα αφαιρεθεί από την gauge line position. H G44 είναι η παραλλαγή που χρησιμοποιείται σπανιότερα (συγκριτικά με την G43). G45  Απλή αύξηση απόκλισης άξονα 
(Axis offset single increase)  M  G46  Απλή μείωση απόκλισης άξονα 
(Axis offset single decrease)  M  G47  Διπλή αύξηση απόκλισης άξονα 
(Axis offset double increase)  M  G48  Διπλή μείωση απόκλισης άξονα 
(Axis offset double decrease)  M  G49 Ακύρωση αντιστάθμισης μήκους εργαλείου M Ακυρώνει την G43 or ή την G44.  G50  Καθορίζει τη μέγιστη ταχύτητα του  spindle   T Παίρνει μία ακέραια διεύθυνση   S, η οποία ερμηνεύεται σαν  rpm. Χωρίς αυτό το χαρακτηριστικό, η μέθοδος G96 (CSS) θα περιέστρεφε την άτρακτο με τέρμα γκάζι ("wide open throttle") όταν πλησιάζει κοντά στον άξονα περιστροφής. G50 Ακύρωση συντελεστή κλιμάκωσης M  G50  Καταχωρητής θέσης (προγραμματισμός διανύσματος από το μηδενικό σημείο του εξαρτήματος μέχρι τη μύτη του εργαλείου)      T  Ο καταχωρητής θέσης είναι μία από τις πρώτες μεθόδους που συσχέτιζαν το σύστημα συντεταγμένων του εξαρτήματος (προγράμματος) με τη θέση το εργαλείου, η οποία εμέσως το συσχέτιζε με το σύστημα συνταταγμένων της μηχανής, τη μόνη θέση που "γνωρίζει" στην πραγματικότητα ο ελεγκτής της μηχανής. Δεν χρησιμοποιείται τόσο συχνά πλέον, επειδή οι G54 έως G59 (WCSs) είναι μία καλύτερη νεότερη μέθοδος. Καλείται με την G50 για τόρνευση, και την G92 για το φρεζάρισμα. Αυτοί οι κώδικες G έχουν επίσης εναλλακτικές σημασίες. Οι καταχωρητές θέσης μπορεί να είναι ακόμη χρήσιμοι στον προγραμματισμό με μετακίνηση της αρχής του συστήματος συνταταγμένων. Ο διακόπτης "χειροκίνητου απόλυτου" ο οποίος έχει μικρή χρησιμότητα σε περιβάλλον WCS , ήταν πιο χρήσιμος στις έννοιες των καταχωρητών θέσης, επειδή επέτρεπε στον χειριστή να μετακινήσει το εργαλείο σε κάποια απόσταση από το εξάρτημα (για παράδειγμα αγγίζοντας ένα μετρητικό μπλοκ 2" και μετά δηλώνοντας στην μονάδα ελέγχου ότι η απόσταση που θα μετακινηθεί είναι 2").  G52 Τοπικό σύστημα συντεταγμένων
(Local Coordinate System,LCS) M  Μετακινεί προσωρινά το μηδενικό σημείο του προγράμματος σε μία νέα θέση. Είναι απλά μία "απόκλιση από μία απόκλιση" ("an offset from an offset"), δηλ. μία νέα απόκλιση προστίθεται στην απόκλιση  WCS. Αυτό σε μερικές περιπτώσεις απλοποιεί τον προγραμματισμό. Το τυπικό παράδειγμα είναι η μετακίνηση από εξάρτημα σε εξάρτημα, σε μία διάταξη πολλών εξαρτημάτων.Με ενεργή την G54, η G52 X140.0 Y170.0 μετακινεί το μηδενικό σημείο του προγράμματος  140 mm κατά μήκος του άξονα  X και 170 mm κατά μήκος του άξονα Y. Όταν κατασκευαστεί το εξάρτημα  που "βρίσκεται εκεί", η G52 X0 Y0 επιστρέφει το μηδενικό σημείο του προγράμματος στο κανονικό  G54 (μειώνοντας τις αποκλίσεις της G52 στο μηδέν). 
Το ίδιο αποτέλεσμα μπορεί επίσης να επιτευχθεί:

(1) χρησιμοποιώντας πολλαπλά  WCS, G54/G55/G56/G57/G58/G59;

(2) σε νεότερους ελεγκτές, G54.1 P1/P2/P3/κ.λ.π. (όλες οι τιμές μέχρι το P48), ή

(3) χρησιμοποιώντας την G10 για προγραμματιζόμενη είσοδο δεδομένων, κατά την οποία το πρόγραμμα μπορεί να γράψει νέες τιμές απόκλισης στους καταχωρητές απόκλισης. G53  Σύστημα συντεταγμένων της μηχανής(Machine coordinate system) M T Παίρνει τις απόλυτες συντεταγμένες  (X, Y, Z, A, B, C) με αναφορά στο μηδενικό σημείο της μηχανής και όχι ως προς το μηδενικό σημείο του προγράμματος. Μπορεί να είναι χρήσιμη για αλλαγές εργαλείων. Μη παραμένουσα (Non modal). Τα επόμενα μπλοκ ερμηνεύονται σαν  "επαναφορά στο G54", ακόμα και αν δεν προγραμματίζεται ρητά. G54 to G59  Συστήματα συντεταγμένων εργασίας
(Work coordinate systems, WCSs) M T  Έχουν αντικαταστήσει σε μεγάλο βαθμό τον καταχωρητή θέσης
(G50 και G92). Κάθε  tuple αποκλίσεων των αξόνων σχετίζει απ΄ ευθείας το μηδενικό σημείο του προγράμματος με το μηδενικό σημείο της μηχανής. Standard είναι 6 tuples (G54 to G59), με προαιρετική επέκταση στα  48 με τις εντολές G54.1 P1 έως P48. G54.1 P1 to P48 Επεκταμένα συστήματα συνταταγμένων εργασίας M  T Μέχρι 48 επιπλέον  WCSs εκτός από τα  6 που παρέχονται σαν στάνταρτ με τις εντολές G54 έως  G59. Παρατηρείστε την επέκταση των εντολών του κώδικα  G σε δεκαδικούς αριθμούς (νωρίτερα όλοι ήταν ακέραιοι). Έχουν παρουσιαστεί και άλλες περιπτώσεις (π.χ., G84.2). Οι μοντέρνοι ελεγτές έχουν hardware για τον χειρισμό τους. G61  Ακριβές σταμάτημα, παραμένουσα (modal)  M T Όταν είναι να κοπούν γωνίες σταματά την μηχανή στα σημεία αλλαγής διεύθυνσης, προτού γίνει η αλλαγή της διεύθυνσης. Αυτό βοηθά στο να μην γίνει στρογγυλοποίηση των γωνίων.  Μπορεί να ακυρωθεί με την G64.  Η μη παραμένουσα (non-modal) παραλλαγή είναι η G09.  G62 Αυτόματη υπέρβαση γωνιών
(Automatic corner override)  M  T  G64  Προεπιλεγμένη μέθοδος κοπής (ακυρώνει την κατάσταση ελέγχου ακριβούς σταματήματος G61)  M  T   Ακυρώνει την G61.  G68  Περιστροφή συστήματος συντεταγμενων.  M  Περιστρέφει το σύστημα συνταταγμένων στο τρέχον επίπεδο που δόθηκε με τις εντολές  G17, G18 και  G19. Το κέντρο περιστροφής δίνεται με δύο παραμέτρους, οι οποίες διαφέρουν ανάμεσα στις υλοποιήσεις των διαφόρων κατασκευαστών. Δηλ. στην πραγματικότητα μπορούμε να κάνουμε ταυτόχρονα και μετατόπιση και περιστροφή του συστήματος συντεταγένων γύρω από ένα σημείο της επιλογής μας. Η γωνία περιστροφής γίνεται με ένα όρισμα που δίνεται με την R. Αυτό μπορεί για παράδειγμα να χρησιμοποιηθεί για την ευθυγράμμιση  του συστήματος συντεταγμένων με ένα μη ευθυγραμμισμένο εξάρτημα. Μπορεί επίσης να χρησιμοποιηθεί για την επανάληψη μιας σειράς κινήσεων γύρω από ένα κέντρο. Η περιστροφή του συστήματος συντεταγμένων δεν υποστηρίζεται από όλους τους κατασκευαστές. G69 Απενεργοποίηση περιστροφής συστήματος συντεταγμένων M  Ακυρώνει την G68. G70  Τυποποιημένος κύκλος, πολλαπλοί επαναλλαμβανόμενοι κύκλοι για φινίρισμα (συμπεριλαμβανομένων καμπυλών)
(Fixed cycle, multiple repetitive cycle, for finishing -including contours) T G71  Τυποποιημένος κύκλος, πολλαπλοί επαναλλαμβανόμενοι κύκλοι για ξεχόνδρισμα
(όταν ο κύριος  άξονας κοπής είναι ο  Ζ)
(Fixed cycle, multiple repetitive cycle, for roughing, Z-axis emphasis)  T G72  Τυποποιημένος κύκλος, πολλαπλοί επαναλαμβανόμενοι κύκλοι για ξεχόνδρισμα
(όταν ο κύριος  άξονας κοπής είναι ο Χ)
(Fixed cycle, multiple repetitive cycle, for roughing, X-axis emphasis)  T  G73  Τυποποιημένος κύκλος, πολλαπλοί επαναλαμβανόμενοι κύκλοι για ξεχόνδρισμα, με επανάληψη σχεδίου.
(Fixed cycle, multiple repetitive cycle, for roughing, with pattern repetition) T  G73  Κύκλος βηματικού τρυπήματος  υψηλής-ταχύτητας (Δεν γίνεται πλήρης επιστροφή από τα βήματα)
(Peck drilling cycle for milling – high-speed, NO full retraction from pecks) M  Δεν γίνεται πλήρης επιστροφή του εργαλείου  από τα βήματα, όπως στον G81, αλλά επιστρέφει όσο ένα  clearance increment (που είναι μία παράμετρος του συστήματος π.χ. 0.1 ίντσες). Χρησιμοποιείται όταν η κύρια έγνοια μας είναι το σπάσιμο των γρέζων και όχι η συγκόλλησή τους στις αυλακώσεις. Συγκρίνετέ την με την  G83.  G74 Κύκλος βηματικού τρυπήματος για τόρνευση T  G74  Κύκλος εσωτερικής (θηλυκής) σπειροτόμησης για φρεζάρισμα, αριστερά πάσα, Μ04 κατεύθυνση περιστροφής της ατράκτου 
(Tapping cycle for milling, lefthand thread, M04 spindle direction)  M  Δείτε τις σημειώσεις στην G84. G75  Βηματικός κύκλος αυλάκωσης  για τόρνευση (Peck grooving cycle for turning) T  G76  Κύκλος φινιρίσματος οπής για φρεζάρισμα(Fine boring cycle for milling) M  Ο κύκλος αυτός επιτρέπει στον χρήστη να σταματήσει την άτρακτο και να απομακρύνει το εργαλείο από τα τοιχώματα, πριν από την επιστροφή. Αυτό επιτρέπει την γρήγορη επιστροφή του εργαλείου, χωρίς να χαράσει τα τοιχώματα.   G76  Κύκλος σπειροτόμησης για τόρνευση, πολλαπλοί επαναλαμβανόμενοι κύκλοι(Threading cycle for turning, multiple repetitive cycle) T G80  Ακύρωση τυποποιημένου κύκλου(Cancel canned cycle) M  T  Φρεζάρισμα: Ακυρώνει όλους τους κύκλους όπως G73, G81, G83 κ.λ.π. Ο άξονας Z επιστρέφει είτε στην αρχική στάθμη Z ή τη στάθμη  R όπως έχει προγραμματιστεί (αντίστοιχα με τις G98 ή  G99). Τόρνευση: Συνήθως δεν χρειάζεται στους τόρνους επειδή μία νέα εντολή G, της ομάδας G  (G00 έως G03) ακυρώνει οποιονδήποτε κύκλο ήταν ενεργός. G81  Απλός κύκλος διάτρησης(Simple drilling cycle) M  Δεν έχει ενσωματωμένη παύση. G82  Κύκλος διάτρησης με παύση(Drilling cycle with dwell) M  Κάνει παύση στον πάτο της οπής (στο βάθος Ζ) για το χρόνο που καθορίζεται στην παράμετρο P.  Είναι καλή, όταν μας ενδιαφέρει το φινίρισμα του πάτου της οπής. Good for spot drilling because the divot will be certain to clean up evenly. Κοιτάξτε τη σημείωση "επιλογή του χρόνου παύσης" στη G04. G83  Βηματικός κύκλος διάτρησης (πλήρης επιστροφή από τα βήματα)(Peck drilling cycle (full retraction from pecks)) M  Χρησιμοποιείται για το τρύπημα βαθιών οπών. Επιστρέφει στο επίπεδο R μετά από κάθε βήμα. Είναι καλός για το σπάσιμο των γρέζων και  για το καθάρισμα των αυλών των ελικώσεων από τα γρέζια (απόβλητα). Επίσης επιτρέπει την καλύτερη εφαρμογή του ψυκτικού υγρού, με την πλήρη απόσυρση του εργαλείου από την οπή ανάμεσα στα βήματα. Η επιστροφή και η βύθιση του εργαλείου στο προηγούμενο βάθος γίνονται με τη μέγιστη ταχύτητα, αλλά κάθε βήμα (peck) γίνεται με την προγραμματισμένη πρόωση.  G84  Κύκλος εσωτερικής σπειροτόμησης, δεξιόστροφο πάσο(Tapping cycle, righthand thread), M03 κατεύθυνση περιστροφής της ατράκτου M  Ο κύκλος αυτός χρησιμοποιείται για τη δημιουργία οπών με πάσα με τη χρήση ενός tap. Η σπειροτόμηση αυτή απαιτεί το ταίριασμα των στροφών της ατράκτου με την πρόωση, ανάλογα με το βήμα του σπειρώματος που κόβεται. 
Κοιτάξτε και την G74 για αριστερόστροφη σπειροτόμηση. G84.2  Κύκλος εσωτερικής σπειροτόμησης, δεξιόστροφο πάσο, M03 κατεύθυνση περιστροφής ατράκτου, άκαμπτος  συγκρατητής εργαλείου.(Tapping cycle, righthand thread, M03 spindle direction, rigid toolholder) M   Κοιτάξτε τις παρατηρήσεις στην  G84. Η άκαμπτη εσωτερική σπειροτόμηση συγχρονίζει την ταχύτητα περιστροφής και την πρόωση της ατράκτου σύμφωνα με την επιθυμητή έλικα του σπειρώματος. Δηλ. συγχρονίζει τις μοίρες της ατράκτου με τα μικρά της μετατόπισης του άξονα.Therefore, it can use a rigid toolholder to hold the tap. This feature is not available on old machines or newer low-end machines, which must use "tapping head" motion (G74/G84). G84.3  Κύκλος εσωτερικής σπειροτόμησης, αριστερόστροφο πάσο, M04 κατεύθυνση περιστροφής ατράκτου, άκαμπτος  συγκρατητής εργαλείου.(Tapping cycle, lefthand thread, M04 spindle direction, rigid toolholder) M   Κοιτάξτε τις παρατηρήσεις στις  G84 και G84.2  G85  Κύκλος διεύρυνσης και φινιρίσματος οπών, είσοδος/έξοδος με την προγραμματισμένη πρόωση, η άτρακτος σε λειτουργία(boring cycle, feed in/feed out) M          
 Κατάλληλος κύκλος για  reamer. 
 Σε μερικές περιπτώσεις καλή για εργαλείο διεύρυνσης απλού-σημείου (single-point boring tool), αν και σε άλλες περιπτώσεις η απουσία βάθους κοπής κατά την επιστροφή είναι κακιά για το φινίρισμα της επιφάνειας. Στην περίπτωση αυτή αντίθετα μπορεί να χρησιμοποιηθεί η   G76 (OSS/shift). 
 Εάν είναι απαραίτητη παύση στον πάτο της οπής κοιτάξτε την  G89. G86  Κύκλος διεύρυνσης και φινιρίσματος οπών, είσοδος με την προγραμματισμένη πρόωση, σταμάτημα ατράκτου, έξοδος με τη μέγιστη ταχύτητα. Αυτό όμως μπορεί να αφήσει γρατσουνιές στα σημεία όπου τα κοπτικά εργαλεία ακουμπούν στην επιφάνεια
(boring cycle, feed in/spindle stop/rapid out) M  Το εργαλείο διεύρυνσης θα αφήσει μία μικρή γρατσουνιά στον δρόμο της επιστροφής. Κατάλληλος κύκλος για μερικές εφαρμογές. Σε άλλες αντί γι' αυτόν μπορεί να χρησιμοποιηθεί ο  G76 (OSS/shift). G87  Κύκλος διεύρυνσης από την απέναντι πλευρά(boring cycle, backboring) M Για διεύρυνση από την απέναντι πλευρά. Επιστρέφει μόνο στην αρχική κατάσταση  
(G98). Αυτός ο κύκλος δεν μπορεί να χρησιμοποιήσει G99, επειδή το επίπεδο  R είναι στην απομακρυσμένη πλευρά του εξαρτήματος μακρύα από την  κεφαλή  της ατράκτου. G88  Κύκλος διεύρυνσης, πρόωση του εργαλείου στην οπή, παύσης, χειροκίνητη επιστροφή εργαλείου
(boring cycle, feed in/spindle stop/manual operation) M  G89  Κύκλος διεύρυνσης, πρόωση του εργαλείου στην οπή, παύση, έξοδος εργαλείου με την προγραματισμένη πρόωση(boring cycle, feed in/dwell/feed out) M    Η εντολή G89 είναι όμοια με την  G85, αλλά έχει προστεθεί μία παύση στον πάτο της οπής.  G90 Απόλυτος προγραμματισμός. Δηλ. οι συντεταγμένες που ακολουθούν την εντολή είναι οι απόλυτες συντεταγμένες στο επιλεγμένο σύστημα αναφοράς. M T (B)  Η θέση καθορίζεται σε σχέση με το μηδενικό σημείο του εξάρτήματος.
Φρεζάρισμα: Πάντα όπως αναφέρεται παραπάνω.Τόρνευση:Μερικές φορές, όπως παραπάνω (Ομάδα Fanuc τύπος B και όμοιοι σχεδιασμοί), αλλά στους περισσότερους τόρνους (ομάδα Fanuc τύπος  A και όμοιοι σχεδιασμοί), G90/G91 δεν χρησιμοποιούνται  για απόλυτους σχετικούς τρόπους. Αντίθετα οι U και W είναι οι σχετικές και οι X και Z είναι οι απόλυτες διευθύνσεις. Σ' αυτούς τους τόρνους η  G90 είναι αντίθετα μια σταθερή διεύθυνση για ξεχόνδρισμα.  G90  Σταθερός κύκλος, απλός κύκλος για ξεχόνδρισμα (Έμφαση στον άξονα -Ζ)(Fixed cycle, simple cycle, for roughing (Z-axis emphasis)) T (A)  Όταν δεν χρησιμοποιείται για απόλυτο προγραμματισμό (βλέπε παραπάνω). G91  Σχετικός προγραμματισμός
(Incremental programming)

Δηλ. οι συντεταγμένες που ακολουθούν την εντολή είναι σχετικές συντεταγμένες δηλ. μετατοπίσεις σχετικά με την τρέχουσα θέση του εργαλείου.   M  T (B) Η σχέση προσδιορίζεται σε σχέση με την προηγούμενη θέση.
Φρεζάρισμα: Ισχύουν πάντοτε τα παραπάνω

Τόρνευση:
Μερικές φορές, όπως παραπάνω (Ομάδα Fanuc τύπος B και όμοιοι σχεδιασμοί), αλλά στους περισσότερους τόρνους (ομάδα Fanuc τύπος A και όμοιοι σχεδιασμοί), G90/G91 δεν χρησιμοποιούνται για απόλυτους σχετικούς τρόπους. Αντίθετα τα  U και W είναι οι σχετικές και οι X και Z είναι οι απόλυτες διευθύνσεις. Σ' αυτούς τους τόρνους η G90 είναι αντίθετα μια διεύθυνση συγκεκριμένου κύκλου για ξεχόνδρισμα.g.  G92  Καταχωρητής θέσης (προγραμματισμός του διανύσματος από το μηδενικό σημείο του εξαρτήματος, μέχρι τη μύτη του εργαλείου)  M  T (B)  Ίδιες πληροφορίες όπως στον καταχωρητή θέσης  G50 . Φρεζάρισμα: Πάντα ισχύουν αυτά που αναφέρονται παραπάνω. Τόρνευση: Μερικές φορές, όπως παραπάνω (Ομάδα Fanuc τύπος B και όμοιοι σχεδιασμοί), αλλά στους περισσότερους τόρνους (ομάδα Fanuc τύπος A και όμοιοι σχεδιασμοί), ο καταχωρητής θέσης είναι ο  G50.  G92  Κύκλος σπειροτόμησης, απλός κύκλος(Threading cycle, simple cycle) T (A)  G94  Ρυθμός πρόωσης ανά λεπτό(Feedrate per minute) M  T (B)  Καθορίζει την ταχύτητα με την οποία θα μετατοπίζεται η άτρακτος σε μονάδες μήκους/ανά λεπτό. Η μονάδα ποικίλει ανάλογα με τις χρησιμοποιούμενες μονάδες και μπορεί να είναι mm/ανά λεπτό, inches/ανά λεπτό ή σε περιστροφικούς άξονες μοίρες/ανά λεπτό. Η εντολή είναι παραμένουσα (modal).
Σε τόρνους της ομάδας  A, η πρόωση ανά λεπτό είναι η   G98.  G94  Τυποποιημένος κύκλος, απλός κύκλος για ξεχόνδρισμα (Έμφαση στον άξονα -Ζ)(Fixed cycle, simple cycle, for roughing (X-axis emphasis))  T (A)Όταν χρησιμεύει σαν πρόωση ανά λεπτό  (βλέπε παραπάνω).  G95  Πρόωση ανά περιστροφή
(Feedrate per revolution) M  T (B)  Στις φρέζες η πρόωση/ανά περιστροφή χρησιμοποιείται σε κύκλους εσωτερικής σπειροτόμησης (tapping). Σ' αυτήν την περίπτωση ο ρυθμός πρόωσης ισούται με το βήμα της έλικας. 
Σε τόρνους της ομάδας A, η πρόωση ανά περιστροφή είναι   η G99. G96  Σταθερή επιφανειακή ταχύτητα(Constant surface speed, CSS)  T Μεταβάλλει αυτόματα την ταχύτητα της ατράκτου, ώστε να πετύχει μία σταθερή επιφανειακή ταχύτητα. Κοιτάξτε τα θέματα για την ταχύτητα και την πρόωση.
Παίρνει μία ακέραια διεύθυνση  S η οποία ερμηνεύεται σαν  sfm, στην κατάσταση λειτουργίας G20 και σαν  m/min  στην κατάσταση λειτουργίας G21. G97  Σταθερή ταχύτητα περιστροφής  της ατράκτου M  T  Παίρνει μία ακέραια διεύθυνση S, η οποία ερμηνεύεται σαν στροφές ανά λεπτό (rev/min, (rpm). Αυτή είναι η προεπιλεγμένη κατάσταση της μηχανής, αν δεν προγραμματιστεί διαφορετικά.  G98  Επιστροφή στο αρχικό επίπεδο (ύψοσ)  Z σε τυποποιημένους κύκλους M Καθορίζει ότι οι τυποποιημένοι κύκλοι τερματίζονται στο επίπεδο (ύψος) Ζ από το οποίο ξεκίνησαν. Η μηχανή ανασηκώνεται στο ύψος Ζ και ανάμεσα στις γρήγορες κινήσεις. Η εντολή τερματίζεται είτε άμεσα με την G80, που ακυρώνει όλους τους τυποποιημένους κύκλους, είτε έμμεσα επιλέγοντας μία εντολή που δεν είναι τυποποιημένος κύκλος. Η εναλλαγή ανάμεσα σε τυποποιημένους κύκλους (π.χ. G82 και G83) δεν την ακυρώνει. Είναι χρήσιμη για την αποφυγή εμποδίων (π.χ. μέγγενεις) κατά την κίνηση της ατράκτου.   G98  Πρόωση ανά λεπτό  (ομάδα τύπου A)   T (A)Στην ομάδα τύπου B, η πρόωση ανά λεπτό είναι η εντολή  G94.  G99 Επιστροφή στο επίπεδο R σε τυποποιημένους κύκλους M Καθορίζει ότι ένας τυποποιημένος κύκλος τερματίζεται στο επίπεδο (ύψος) που καθορίζει η λέξη  R, που δίνεται στον τυποποιημένο κύκλο. Μπορεί να χρησιμοποιηθεί για να ελαττώσσει τις υπερβολικές κινήσεις της μηχανής, όταν π.χ. κάνουμε οπές σε μία επίπεδη επιφάνεια.   G99  Πρόωση ανά περιστροφή(ομάδα τύπου  A)  T (A)Στην ομάδα τύπου B, η πρόωση ανά περιστροφή είναι η εντολή  G95 .  G100 Μέτρηση μήκους εργαλείου M 

 Κατάλογος των M-codes που συναντώνται συνήθως στα χειριστήρια FANUC και σε όμοια χειριστήρια 
Εντολή   Περιγραφή Φρεζάρισμα
( M )  Τόρνευση 
( T )  Σχετικές πληροφορίες M00 Υποχρεωτική παύση M  T  Η μηχανή σταματά πάντα, όταν συναντά  M00 κατά την εκτέλεση του προγράμματος M01  Προαιρετική παύση M  T  Όταν κατά την εκτέλεση του προγράμματος η μηχανή συναντήσει την εντολή  M01, θα σταματήσει μόνο εάν ο χειριστής έχει πατήσει το  πλήκτρο προαιρετικής παύσης M02  Τέλος του προγράμματος M  T  Τέλος προγράμματος. Η εκτέλεση μπορεί να επιστρέψει ή να μην επιστρέψει  στην αρχή του προγράμματος (ανάλογα με την μονάδα ελέγχου). Μπορεί να μηδενίσει ή να μην μηδενίσει τους καταχωρητές. Η  M02 ήταν η αρχική εντολή τέλους προγράμματος, τώρα όμως θεωρείται παρωχημένη. Υποστηρίζεται όμως  ακόμη για λόγους συμβατότητας προς τα πίσω ..  Πολλές μοντέρνες μονάδες ελέγχου αντιμετωπίζουν την M02 σαν ισοδύναμη με την  M30. Κοιτάξτε την M30 για επιπλέον πληροφορίες για την κατάσταση ελέγχου κατά την εκτέλεση της M02 ή της M30. M03  Ενεργοποίηση της ατράκτου  (περιστροφή κατά  την ωρολογιακή φορά-CW)  M  T  Η ταχύτητα της ατράκτου καθορίζεται από τη διεύθυνση  S, είτε σε στροφές ανά λεπτό  (G97κατάσταση, που είναι και η  προεπιλογή ) ή σε επιφανειακά πόδια ανά λεπτό  [ή επιφανειακά μέτρα ανά λεπτό (κατάσταση G96  [CSS] κάτω από την  G20 ή την G21). Για τον προσδιορισμό της ωρολογιακής ή αντιωρολογιακής κατεύθυνσης μπορεί να χρησιμοποιηθεί ο κανόνας του δεξιού χεριού.
Right-hand-helix screws moving in the tightening direction (and right-hand-helix flutes spinning in the cutting direction) are defined as moving in the M03 direction, and are labeled "clockwise" by convention. The M03 direction is always M03 regardless of local vantage point and local CW/CCW distinction. M04 Ενεργοποίηση της ατράκτου (περιστροφή με αντιωρολογιακή φορά-CCW)  M  T  Δείτε παραπάνω τα σχόλια στη M03. M05 Παύση της περιστροφής της ατράκτου M  T  M06 Αυτόματη αλλαγή Εργαλείου (Automatic Τool Change, ATC)  M  T (μερικές φορές)  Πολλοί τόρνοι δεν χρησιμοποιούν την  M06, επειδή η διεύθυνση T από μόνη της δείχνει τον πύργο (turret). Ο προγραμματισμός σε μία συγκεκριμένη εργαλειομηχανή, απαιτεί να γνωρίζουμε ποιά μέθοδο χρησιμοποιεί  η εργαλειομηχανή.  Για να καταλάβει κάποιος πώς δουλεύει η διεύθυνση T και πώς αλληλεπιδρά (ή όχι) με την M06, πρέπει να μελετήσει διάφορες μεθόδους, όπως προγραμματισμό πύργου τόρνου, επιλογή εργαλείου  ATC, ATC random memory tool selection, την έννοια του "επόμενου εργαλείου σε αναμονή", και εκκένωσης εργαλείου. M07 Παροχή ψυκτικού, νέφωση (mist)  M  T  M08  Παροχή ψυκτικού, πλημμύρισμα  (flood)  M  T  M09  Παύση παροχής ψυκτικού υγρού M  T  M10  Τοποθέτηση παλέτας(Pallet clamp on) M  Για κέντρα κατεργασίας με εναλλάκτες παλετών (pallet changers) M11  Αφαίρεση παλέτας(Pallet clamp off) M Για κέντρα κατεργασίας με εναλλάκτες παλετών (pallet changers) M13  Ενεργοποίηση της περιστροφής της ατράκτου (κατά την ωρολογιακή φορά) και παροχή ψυκτικού υγρού (πλημμύρισμα-flood) M  Αυτός ο κώδικας M-κάνει τη δουλειά και των δύο,  των M03 και M08. Δεν είναι ασυνήθιστο για συγκεκριμένα μοντέλα μηχανών να έχουν τέτοιες συνδυασμένες εντολές, οι οποίες κάνουν τα προγράμματα μικρότερα και τη συγγραφή των προγραμμάτων  γρηγορότερη. M19  Προσανατολισμός Ατράκτου M  T  Ο προσανατολισμός της ατράκτου συχνότερα καλείται μέσα σε κύκλους (αυτόματα) ή κατά τη ρύθμιση  (χειροκίνητα), αλλά είναι επίσης διαθέσιμος κάτω από τον έλεγχο του προγράμματος με την M19. Η συντομογραφία  OSS (oriented spindle stop, προσανατολισμένη παύση του spindle) μπορεί να συναντηθεί σε μία αναφορά σε μία προσανατολισμένη παύση μέσα σε κύκλους. M21  Καθρεφτισμός του άξονα- X M  M21  Tailstock forward  Τ M22 Καθρεφτισμός του άξονα-Y M  M22  Tailstock backward  Τ M23  Απενεργοποίηση καθρεφτισμού  M  M23  Ενεργοποίηση σταδιακής εξόδου κατά την σπειροτόμηση  Τ M24  Απενεργοποίηση σταδιακής εξόδου κατά την σπειροτόμηση  Τ M30  Τέλος προγράμματος με επιστροφή στην αρχή M  T  Σήμερα η M30 θεωρείται η κανονική εντολή τέλους προγράμματος και η εκτέλεση θα επιστρέψει στην αρχή του προγράμματος. Επίσης οι  περισσότεροι ελεγκτές υποστηρίζουν ακόμη την αρχική εντολή τέλους προγράμματος, M02, συνήθως αντιμετωπίζοντάς την σαν ισοδύναμη με την M30.  
Επιπλέον πληροφορία: Σύγκριση της  M02 με την M30. Πρώτα δημιουργήθηκε η M02, την εποχή που οι διάτρητες ταινίες ήταν τόσο μικρές σε μήκος, ώστε τα άκρα τους ενώνονταν σε ένα συνεχή  βρόχο. Για το λόγο αυτό η Μ02 δεν έκανε επιστροφή στην αρχή.  Ο άλλος κώδικας τέλους του προγράμματος, ο M30, προστέθηκε αργότερα για να συμπεριλάβει διάτρητες ταινίες μεγαλύτερου μήκους οι οποίες τυλιγόταν σε καρούλι και έτσι έπρεπε να γίνει επιστροφή στην αρχή, πριν να ξεκινήσει ένας άλλος κύκλος εκτέλεσης του προγράμματος.  Σε πολλούς νεότερους ελεγκτές, δεν υπάρχει πλέον καμιά διαφορά στην εκτέλεση των δύο εντολών. Και οι δύο λειτουργούν όπως η  M30.  M41  Επιλογή γραναζιού – γρανάζι 1 Τ M42 Επιλογή γραναζιού – γρανάζι  2  Τ M43  Επιλογή γραναζιού – γρανάζι  3  Τ M44  Επιλογή γραναζιού – γρανάζι  4  Τ M48  Επίτρεψη υπέρβασης ρυθμού τροφοδοσίας M  T  M49 Απαγόρευση υπέρβασης ρυθμού τροφοδοσίας  M  T  Απαγόρευση Χειροκίνητης Υπέρβασης Τροφοδοσίας (Manual Feed Overight) MFO. Αυτό συνήθως συμβαίνει (αυτόματα) μέσα σε κύκλους σπειροτόμησης  ή κύκλους σπειροτόμηση απλού σημείου,  όπου η πρόωση σχετίζεται με ακρίβεια με την ταχύτητα. Είναι ίδια με την υπέρβαση της ταχύτητας περιστροφής της ατράκτου (Spindle Speed Override SSO), το πλήκτρο παύσης της πρόωσης. Μερικές μονάδες ελέγχου μπορεί επίσης να παρέχουν  SSO and MFO κατά την σπειροτόμηση. M52  Αφαίρεση του τελευταίου εργαλείου από την άτρακτο  M  T  Επίσης αδειάζει την άτρακτο. M60  Αυτόματη αλλαγή παλέτας (APC)  M  Για κέντρα κατεργασίας με εναλλάκτες παλετών (pallet changers) M98  Κλήση υποπρογράμματος M  T  Παίρνει μία διεύθυνση  P για να καθορίσει ποιο υποπρόγραμμα θα καλέσει, για παράδειγμα  η  "M98 P8979" καλεί το υποπρόγραμμα O8979. M99  Τέλος υποπρογράμματος M  T  Συνήθως τοποθετείται στο τέλος του υποπρογράμματος και επιστρέφει την εκτέλεση του προγράμματος στο κύριο πρόγραμμα. Η προεπιλογή είναι ο έλεγχος (δηλ. η εκτέλεση του προγράμματος) να επιστρέψει στη πρόταση (block) που ακολουθεί τη M98 στο κύριο πρόγραμμα.  Επιστροφή σε μία διαφορετική μπορεί να καθοριστεί με μία διεύθυνση  P. Π.χ η εντολή Μ99 P30 επιστρέφει στην πρόταση 30 του κυρίου προγράμματος και όχι στην εντολή που ακολουθεί την εντολή Μ98.  Η M99 μπορεί επίσης να χρησιμοποιηθεί σε ένα κύριο πρόγραμμα σε συνδυασμό με μία παράκαμψη πρότασης (block skip) για ατέρμονα βρόχο εκτέλεσης του κυρίου προγράμματος σε bar work τόρνους (μέχρι ο χειριστής να απενεργοποιήσει το block skip).

 Παράδειγμα προγράμματος 
δεξιά|μικρογραφία|200x200εσ|Tool Path for program
Αυτό είναι ένα γενικό πρόγραμμα το οποίο επιδεικνύει τη χρήση του κώδικα  G-Code για την κατασκευή σε τόρνο  ενός εξαρτήματος  διαμέτρου 1" X 1" μήκος.  Ας υποθέσουμε ότι μία ράβδος υλικού είναι τοποθετημένη στη μηχανή και ότι έιναι λίγο μεγαλύτερη σε μήκος και διάμετρο και εξέχει μία ίντσα από το πρόσωπο του τσοκ.  (Προσοχή: Αυτή είναι μία γενική μορφή κώδικα και μπορεί να  μην λειτουργεί σε μία συγκεκριμένη μηχανή. Δώστε ιδιαίτερη προσοχή από το σημείο 5 και παρακάτω.)
+ ΜπλοκΚώδικαςΠεριγραφή% Σηματοδοτεί την αρχή των δεδομένων κατά την μεταφορά του αρχείου. Αρχικά χρησίμευε για να σταματήσει το γύρισμα πίσω της ταινίαςκαι όχι απαραίτητα την αρχή του προγράμματος. Για μερικούς ελεγκτές (FANUC) το πρώτο LF (EOB) είναι η αρχή του προγράμματος. Ο ISO χρησιμοποιεί το  %, η EIA χρησιμοποιεί το  ER (0x0B). O4968 (Προαιρετική περιγραφή του προγράμματος ή σχόλιο)Τα σχόλια περικλείονται σε παρενθέσειςN01M216  Ενεργοποίηση του παρακολουθητή φορτίουN02G20 G90 G54 D200 G40 Μονάδες σε ίντσες. Απόλυτες συντεταγμένες. Ενεργοποίηση συστήματος συντεταγμένων εργασίας (το G54). Ενεργοποίηση απόκλισης εργαλείου.Απενεργοποίηση αντιστάθμισης ακτίνας μύτης του εργαλείου.N03G50 S2000  Ρύθμιση της μέγιστης ταχύτητας της ατράκτου σε  rev/min — Αυτή η ρύθμιση θα επηρεάσει την κατάσταση λειτουργίας σταθερής επιφανειακής ταχύτητας. N04T0300  Index turret to tool 3. Clear wear offset (00).N05G96 S854 M03  Σταθερή επιφανειακή ταχύτητα  [Μεταβάλει αυτόματα την ταχύτητα της ατράκτου], 854 sfm, ξεκινά την περιστροφή της ατράκτου κατά την φορά των δεικτών του ρολογιού.N06G41 G00 X1.1 Z1.1 T0303 M8  Ενεργοποίηση της αντιστάθμισης της ακτίνας του εργαλείου κοπής, χρήγορη τοποθέτηση  0.55" κεντρική γραμμή του άξονα (1.1" σε διάμετρο) και 1.1 inches στα θετικά από την αρχή του άξονα εργασίας Z, ενεργοποίηση πλυμηρίσματος ψυκτικού υγρού.N07G01 Z1.0 F.05  Οριζόντια πρόωση με ταχύτητα  0.050" ανά περιστροφή της ατράκτου μέχρι το εργαλείο να φτάσει σε απόσταση  1" θετικά από την αρχή των αξόνων.N08X-0.016  Πρόωση του εργαλείου ελαφρά πέρα από το κέντρο. Η μύτη του εργαλείου πρέπει να προχωρήσει τουλάχιστον κατά την ακτίνα της μύτης του εργαλείου πέρα από το κέντρο , αλλιώς θα παραμείνει εκεί ένα σκαλοπάτι.N09G00 Z1.1 Γρήγορη τοποθέτηση. Επαναφορά στο σημείο ξεκινήματος.N10X1.0 Γρήγορη τοποθέτηση. Επόμενο πέρασμαN11G01 Z0.0 F.05  Οριζόντια πρόωση κόβοντας τη ράβδο σε διάμετρο  1" σ΄ όλο το μήκος μέχρι την αρχή των αξόνων, με 0.05in/revN12G00 X1.1 M05 M09 Καθαρισμός εξαρτήματος, σταμάτημα ατράκτου, διακοπή παροχής ψυκτικού υγρού.N13G91 G28 X0  Home X axis — επιστροφή στη θέση home του άξονα  X της μηχανήςN14G91 G28 Z0  Home Z axis — επιστροφή στη θέση home του άξονα Ζ  της μηχανήςN15G90  Επιστροφή στον απόλυτο τρόπο. Απενεργοποίηση του load monitorN16M30  Τέλος προγράμματος. Επιστροφή στην αρχή του προγράμματος και αναμονή για το πάτημα του πλήκτρου έναρξης κύκλου (cycle start).% Σηματοδοτεί το τέλος των δεδομένων κατά την μεταφορά του αρχείου.Αρχικά χρησίμευε για να σηματοδοτήσει το τέλος της ταινίαςκαι όχι απαραίτητα το τέλος  του προγράμματος.Ο ISO χρησιμοποιεί το  %, η EIA χρησιμοποιεί το  ER (0x0B).
 Υπάρχει η δυνατότητα διαφορετικών στύλ προγραμματισμού, ακόμη και σε αυτό το μικρό πρόγραμμα. Η ομαδοποίηση των εντολών, όπως  στη γραμμή N06, μπορεί να γίνει με διάφορους τρόπους. Κάνοντάς το αυτό, πολλές φορές κάνει ευκολότερη την παρακολούθηση της εκτέλεσης του προγράμματος.
 Πολλοί κώδικες είναι "παραμένοντες"  "modal", που σημαίνει ότι παραμένουν σε ισχύ μέχρι να ακυρωθούν ή να αντικατασταθούν με έναν αντιτιθέμενο κώδικα. Για παράδειγμα, όταν επιλεγεί ο κώδικας σταθερής επιφανειακής ταχύτητας (CSS- G96), θα παραμείνει σε ισχύ μέχρι το τέλος του προγράμματος. Κατά τη λειτουργία η ταχύτητα της ατράκτου θα αυξάνεται, καθώς το εργαλείο πλησιάζει το κέντρο, ώστε να διατηρηθεί η σταθερή επιφανειακή ταχύτητα. Όμοια μόλις επιλεχθεί ο κώδικας υψηλής ταχύτητας (G00), όλες οι κινήσεις του εργαλείου θα είναι γρήγορες μέχρι να επιλεγεί κάποιος άλλος κώδικας, που να ρυθμίζει διαφορετικά την ταχύτητα  (G01, G02, G03).
  Στις μηχανές CNC είναι κοινή πρακτική η χρήση ενός επιτηρητή φορτίου. Ο επιτηρητής φορτίου ( load monitor) θα σταματήσει τη μηχαν,ή  εάν το φορτίο της ατράκτου ή της πρόωσης ξεπεράσει μια προτοποθετημένη τιμή, η οποία καθορίζεται κατά τη ρύθμιση της μηχανής. Οι αρμοδιότητες του επιτηρητή φορτίου είναι διάφορες:
 Προλαμβάνει τις ζημιές στη μηχανή σε περίπτωση θραύσης του εργαλείου ή προγραμματιστικού λάθους. 
 Αυτό είναι ιδιαίτερα σημαντικό επειδή επιτρέπει την ασφαλή μηχανούργηση κατά την απουσία μας. Σε αυτήν ο χειριστής ρυθμίζει την εργασία και την ξεκινά κατά τη διάρκεια της ημέρας, στη συνέχεια πηγαίνει στο σπίτι του, αφήνοντας τη μηχανή να λειτουργεί και να κόβει εξαρτήματα κατά τη διάρκεια της νύχτας. Επειδή δεν βρίσκεται γύρω κανένας άνθρωπος να ακούσει, να δεί, να μυρίσει ένα πρόβλημα, όπως για παράδειγμα ένα σπασμένο εργαλείο, ο επιτηρητής φορτίου παίζει το ρόλο του φρουρού. Όταν αντιληφθεί κατάσταση υπερφόρτωσης, η οποία υποδηλώνει ένα αμβλύ ή σπασμένο εργαλείο, διατάζει το σταμάτημα της μηχανής. Σήμερα υπάρχει η τεχνολογική δυνατότητα να σταλεί κάπιο μήνυμα, εάν είναι απαραίτητο, έστε να έρθει να αντιμετωπίσει το πρόβλημα και να  ξαναξεκινήσει την παραγωγή και να φύγει πάλι.  
 Προειδοποιεί για ένα εργαλείο το οποίο έχει αμβλυνθεί και πρέπει να αλλαχθεί ή να ακονιστεί. Έτσι ένας χειριστής που ασχολείται με πολλές μηχανές, ειδοποιείται για το πρόβλημα από τη μηχανή.
 Είναι κοινή πρακτική η γρήγορη μετακίνηση του εργαλείου σε ένα "ασφαλές σημείο" το οποίο είναι κοντά στο εξάρτημα (στο παράδειγμά μας σε απόσταση  0.1" από αυτό) και στη συνέχεια να ξεκινήσει η πρόωση του εργαλείου. Το πόσο κοντά είναι αυτή η "ασφαλής απόσταση" εξαρτάται από τον προγραμματιστή και τον χειριστή, αλλά και από την κατάσταση του ακατέργαστου υλικού. 
 Εάν υπάρχει λάθος στο πρόγραμμα, υπάρχει μέγαλη πιθανότητα να συγκρουστεί η μηχανή ή  το εργαλείο με το εξάρτημα με μεγάλη ταχύτητα. Αυτό μπορεί να κοστίσει πολύ, ιδιαίτερα σε νεότερα κέντρα μηχανούργησης. Είναι δυνατόν να διασπείρουμε στο πρόγραμμα προαιρετικές παύσεις (κώδικας  M01 ), οι οποίες επιτρέπουν στο πρόγραμμα να τρέχει τμηματικά για λόγους ελέγχου. Οι προαιρετικές παύσεις παραμένουν στο πρόγραμμα, αλλά αγνοούνται κατά την κανονική εκτέλεση του προγράμματος. Ευτυχώς τα περισσότερα προγράμματα CAD/CAM συνοδεύονται από εξομοιωτές  CNC, οι οποίοι εμφανίζουν την κίνηση του εργαλείου καθώς εκτελείται το πρόγραμμα. Σήμερα τα γύρω αντικείμενα (chuck, clamps, fixture, tailstock, και άλλα) συμπεριλαμβάνονται στα τρισδιάστατα μοντέλα και η εξομοίωση μοιάζει με βιντεοπαιχνίδι ή περιβάλλον εικονικής πραγματικότητας, καθιστώντας τις απρόσμενες συγκρούσεις απίθανες. Πολλές μοντέρνες μηχανές CNC επιτρέπουν επίσης στους προγραμματιστές να εκτελούν τα προγράμματα σε κατάσταση εξομοίωσης και να παρατηρούν τις παραμέτρους της μηχανής σε ένα συγκεκριμένο σημείο του προγράμματος.    Αυτό δίνει την δυνατότητα στους προγραμματιστές να ανακαλύψουν semantic errors (σε αντίθεση με τα συντακτικά λάθη) προτού να χάσουν υλικό ή εργαλεία λόγω ενός λανθασμένου προγράμματος.  Για λόγους ελέγχου, ανάλογα με το μέγεθος του εξαρτήματος, μπορούν επίσης να χρησιμοποιηθούν μπλοκ κεριού.
 Στο παραπάνω πρόγραμμα έχουν συμπεριληφθεί αριθμοί γραμμών για εκπαιδευτικούς σκοπούς. Συνήθως δεν είναι απαραίτητοι για τη λειτουργία της μηχανής και στη βιομηχανία χρησιμοποιούνται σπάνια. Αν όμως χρησιμοποιούνται εντολές διακλάδωσης ή βρόχων, οι αριθμοί γραμμών χρησιμοποιούνται σαν προορισμοί γι' αυτές τις εντολές. (π.χ  GOTO N99).
 Μερικές μηχανές δεν επιτρέπουν πολλούς κώδικες  M στην ίδια γραμμή.ΣΣ

 Προγραμματιστικά περιβάλλοντα 
Τα περιβάλλοντα προγραμματισμού σε κώδικα G έχουν εξελιχθεί παράλληλα με εκείνα του γενικού προγραμματισμού- από τα προγενέστερα περιβάλλοντα (π.χ το γράψιμο προγραμμάτων με το μολύβι, ή δακτυλογράφησή τους σε έναν διατρητή ταινιών) στα τελευταία περιβάλλοντα τα οποία συνδυάζουν  CAD (σχεδιασμό υποβοηθούμενο από Η/Υ. computer-aided design), CAM (παραγωγή υποβοηθούμενη από Η/Υ, computer-aided manufacturing), και επεξεργαστές κώδικα G με πολλά γνωρίσματα. (επεξεργαστές G ανάλογους με επεξεργαστές XML που χρησιμοποιούν χρώματα και εσοχές  [συν επιπλέον χαρακτηριστικά], ώστε να βοηθούν τον χρήστη με τρόπους που οι βασικοί επεξεργαστές δεν μπορούν. Τα πακέτα CAM είναι ανάλογα με τα IDEs στον γενικό προγραμματισμό.)

Έγιναν δύο  σημαντικές αλλαγές  (1) εγκατάλειψη του  "χειροκίνητου προγραμματισμού" (που δεν απαιτούσε παρά ένα μολύβι ή έναν επεξεργαστή κειμένου και το ανθρώπινο μυαλό) και χρήση των προγραμμάτων CAM software τα οποία δημιουργούν αυτόματα τον κώδικα  G με χρήση μεταεπεξεργαστών (postprocessors) ανάλογους με την ανάπτυξη οπτικών μεθόδων στον γενικό προγραμματισμό, και (2) εγκατάλειψη των ανελαστικών δομών πρός όφελος παραμέτρικών (analogous to the difference in general programming between hardcoding a constant into an equation versus declaring it a variable and assigning new values to it at will; and to the object-oriented approach in general). Ο Μακροπρογραμματισμός (παραμετρικός προγραμματισμός ) των CNC χρησιμοποιεί ονόματα μεταβλητών φιλικά προς τους ανθρώπους, relational operators, and loop structures much as general programming does, to capture information and logic with machine-readable semantics. Whereas older manual CNC programming could only describe particular instances of parts in numeric form, macro programming describes abstractions which can be flowed with ease into a wide variety of instances. The difference has many analogues, both from before the computing era and from after its advent, such as (1) creating text as bitmaps versus using character encoding with glyphs; (2) the abstraction level of tabulated engineering drawings, with many part dash numbers parametrically defined by the one same drawing and a parameter table; or (3) the way that HTML passed through a phase of using content markup for presentation purposes, then matured toward the CSS model. In all of these cases, a higher layer of abstraction was introduced in order to pursue what was missing semantically.

STEP-NC reflects the same theme, which can be viewed as yet another step along a path that started with the development of machine tools, jigs and fixtures, and numerical control, which all sought to "build the skill into the tool". Recent developments of G-code and STEP-NC aim to build the information and semantics into the tool. The idea itself is not new; from the beginning of numerical control, the concept of an end-to-end CAD/CAM environment was the goal of such early technologies as DAC-1 and APT. Those efforts were fine for huge corporations like GM and Boeing. However, for small and medium enterprises, there had to be an era in which the simpler implementations of NC, with relatively primitive "connect-the-dots" G-code and manual programming, ruled the day until CAD/CAM could improve and disseminate throughout the economy.

Μία εργαλειομηχανή με μεγάλο αριθμό αξόνων, ατράκτων και σταθμούς εργαλείων, είναι δύσκολο να προγραμματιστεί χειροκίνητα. Γινόταν στο παρελθόν, αλλά όχι εύκολα.  This challenge has existed for decades in CNC screw machine and rotary transfer programming, and it now also arises with today's newer machining centers called "turn-mills", "mill-turns", "multitasking machines", and "multifunction machines". Σήμερα που χρησιμοποιούνται πλατιά τα συστήματα CAD/CAM, ο προγραμματισμός των CNC (επίσης  με χρήση του κώδικα G) απαιτεί προγράμματα CAD/CAM (σε αντίθεση με το χειροκίνητο προγραμματισμό) για να είναι εφαρμόσιμος και ανταγωνιστικός στο κομμάτι της αγοράς που εξυπηρετείται από τις μηχανές αυτής της κατηγορίας. As Smid says, "Combine all these axes with some additional features, and the amount of knowledge required to succeed is quite overwhelming, to say the least.". At the same time, however, programmers still must thoroughly understand the principles of manual programming and must think critically and second-guess some aspects of the software's decisions.

Από τα μέσα της δεκαετίας του -2000s, δινόταν η εντύπωση ότι έφτασε η εποχή  "του τέλους του χειροκίνητου προγραμματισμού" (δηλ. της συγγραφής κώδικα G-code, χωρίς τη βοήθεια προγραμμάτων CAD/CAM ). Όμως μόνο από κάποιες πλευρές μπορούμε να πούμε ότι ο χειροκίνητος προγραμματισμός είναι ξεπερασμένος. Παρότι είναι αλήθεια  ότι ο προγραμματισμός CAM μπορεί και γίνεται από ανθρώπους που δεν γνωρίζουν καν χειροκίνητο προγραμματισμό CNC, δεν μπορούμε να πούμε ότι αυτό μπορεί να γίνει τόσο καλά και τόσο αποτελεσματικά από ανθρώπου που δεν γνωρίζουν τη γλώσσα προγραμματισμού G.  Το να προσαρμόσουμε και να βελτιστοποιήσουμε ένα πρόγραμμα CNC σε μία συγκεκριμένη μηχανή, είναι μία περιοχή όπου είναι πιο εύκολο και πιο αποτελεσματικό να επεξεργαστούμε απ' ευθείας τον κώδικα  G, από το να επεξεργαστούμε τις διαδρομές του εργαλείου που παράγει το πρόγραμμα  CAM και να επαναπεξεργαστούμε το ίδιο το πρόγραμμα CAM.

 Συντομογραφίες που χρησιμοποιούνται από τους προγραμματιστές και χειριστές 
Αυτή η λίστα είναι μόνο μια επιλογή και, εκτός από μερικούς βασικούς όρους, ως επί το πλείστον αποφεύγει την επανάληψη των πολλών συντομογραφιών που αναφέρονται στο  συντομογραφίες και σύμβολα μηχανολογικών σχεδίων (βλέπε επίσης).
 Συντόμευση  Επεξήγηση  Σχετικές πληροφορίες APC Αυτόματος εναλλάκτης παλετών Δείτε την  M60. ATC Αυτόματος εναλλάκτης εργαλείων Δείτε την   M06. CAD/CAM  Σχεδιασμός υποβοηθούμενος από Η/Υ(computer-aided design)
και 
Παραγωγή υποβοηθούμενη από Η/Υ
(computer-aided manufacturing) CCW  Αντιωρολογιακή φορά(counterclockwise) Δείτε τη M04. CNC  Αριθμητικός έλεγχος με Η/Υ(computer numerical control) CRC  Αντιστάθμιση ακτίνας εργαλείου κοπής(cutter radius compensation)Δείτε επίσης G40, G41 και G42. CS  Ταχύτητα κοπής(cutting speed) Αναφέρεται στην ταχυτήτα κοπής  (επιφανειακή ταχύτητα) σε επιφανειακά πόδια ανά λεπτό (sfm, sfpm) ή μέτρα ανά λεπτό (m/min). CSS  Σταθερή επιφανειακή ταχύτητα(constant surface speed)Δείτε επίσης την G96 για επεξήγηση. CW  Κατά την ωρολογιακή φορά
(clockwise) Δείτε την M03. DNC  Άμεσος αριθμητικός έλεγχος ή κατανεμημένος αριθμητικός έλεγχος
(direct numerical control or distributed numerical control) EOB  Τέλος μπλοκ
(end of block)  Το συνώνυμα στον κώδικα G του τέλους της γραμμής (end of line, EOL).  Είναι ένας χαρακτήρας ελέγχου που εξισώνεται με τη νέα γραμμή.  Σε πολλές υλοποιήσεις του κώδικα  G  (όπως επίσης γενικότερα, σε πολλές γλώσσες προγραμματισμού), το ερωτηματικό  (;)  είναι συνώνυμο με το  EOB. Σε πολλούς ελεγκτές (ιδιαίτερα στους παλαιότερους) πρέπι να τυπωθεί ρητά και να εμφανιστεί. Άλλο λογισμικό τον αντιμετωπίζει σαν μη εκτυπούμενο/μη ορατό χαρακτήρα, με τον ίδιο τρόπο που επεξεργαστές κειμένου χειρίζονται το  (¶). E-stop  Παύση έκτακτης ανάγκης 
(emergency stop)  EXT Εξωτερικό On the operation panel, one of the positions of the mode switch is "external", sometimes abbreviated as "EXT", referring to any external source of data, such as tape or DNC, in contrast to the computer memory that is built into the CNC itself. FIM  full indicator movement  FPM  Πόδια Ανά Λεπτό (feet per minute)  Κοιτάξτετην  SFM. HBM  οριζόντιο φρεζάρισμα διεύρυνσης 
(horizontal boring mill)  Ένας τύπος μηχανής που εξειδικεύεται στο  boring, τυπικά μεγάλες οπές σε μεγάλα κατεργαζόμενα τεμάχια. HMC  Οριζόντιο κέντρο μηχανούργησης 
(horizontal machining center)  HSM  μηχανούργηση υψηλής ταχύτητας
(high speed machining) Αναφέρεται σε ταχύτητες μηχανούργησης, που θεωρούνται μεγάλες με τα παραδοσιακά standards.   HSS  Χάλυβας υψηλής ταχύτητας(high speed steel) Τύπος χάλυβα που χρησιμοποιείται για την κατασκευή εργαλείων κοπής. Χρησιμοποιείται  ευρέως και σήμερα   (γενικής χρήσης, οικονομικός, ικανοποιητικός) αν και τα  καρβίδια (carbides)  και άλλα υλικά συνεχίζουν να διαβρώνουν το μερίδιο του στην αγορά. in  inch(es)  IPF  Ίντσες ανά αυλάκωση
(inches per flute)  Γνωστή επίσης και σαν chip load ή IPT. Δείτε τη διεύθυνση F και το ρυθμό τροφοδότησης. IPM  Ίντσες ανά λεπτό
(inches per minute)  Κοιτάξτε διεύθυνση F  και ρυθμός πρόωσης IPR  Ίντσες ανά περιστροφή 
(inches per revolution)  Κοιτάξτε διεύθυνση F  και ρυθμός πρόωσης. IPT  Ίντσες ανά δόντι
(inches per tooth)  Γνωστή επίσης και σαν chip load ή IPF. Δείτε τη διεύθυνση F και το ρυθμό τροφοδότησης. MDI  Χειροκίνητη εισαγωγή δεδομένων(manual data input) Μία κατάσταση λειτουργίας στην οποία ο χειριστής μπορεί να δακτυλογραφήσει γραμμές προγράμματος  (blocks κώδικα ) και να τις εκτελέσει πιέζοντας το πλήκτρο cycle start. MEM  Μνήμη(memory) Στον πίνακα του χειριστή, μία από τις θέσεις του διακόπτη κατάστασης είναι "memory" (μνήμη),η οποία μερικές φορές συντομεύεται στην "MEM",και αφορά την μνήμη του υπολογιστή ο οποίος είναι ενσωματωμένος στο ίδιο το CNC, σε αντίθεση με οποιαδήποτε εξωτερική μνήμη, όπως ταινία ή  DNC. MFO  Χειροκίνητη υπέρβαση ρυθμού πρόωσης
(manual feedrate override)   Τα πλήκτρα ή ο επιλογέας MFO επιτρέπουν σεν έναν χειριστή CNC να πολαπλασιάσει τον προγραμματισμένο ρυθμό πρόωσης με ένα ποσοστό τυπικά ανάμεσα στο 10% και το 200%. This is to allow fine-tuning of speeds and feeds to minimize chatter, improve surface finish, lengthen tool life, and so on. The SSO and MFO features can be locked out for various reasons, such as for synchronization of speed and feed in threading, or even to prevent "soldiering"/"dogging" by operators.  On some newer controls, the synchronization of speed and feed in threading is sophisticated enough that SSO and MFO can be available during threading, which helps with fune-tuning speeds and feeds to reduce chatter on the threads or in repair work involving the picking up of existing threads. mm  millimetre(s)  MPG  Χειροκίνητη γεννήτρια παλμών(manual pulse generator) Αναφέρεται στο χειριστήριο (handwheel) (κάθε κλικ του χειριστηρίου, δημιουργεί έναν παλμό εισόδου στο σερβομηχανισμό ή το βηματικό κινητήρα) NC  Αριθμητικός έλεγχος(numerical control) OSS  προσανατολισμένο σταμάτημα της ατράκτου  Δείτε τα σχόλια στη M19. SFM  Επιφανειακά πόδια ανά λεπτό(surface feet per minute) Κοιτάξτε επίσης  speeds and feeds και την G96. SFPM  Επιφανειακά πόδια ανά λεπτό
 (surface feet per minute) Κοιτάξτε επίσης  speeds and feeds και την G96. SPT  Σπειροτόμηση απλού σημείου(single-point threading) SSO  Υπέρβαση ταχύτητας της ατράκτου(spindle speed override) Το χειριστήριο ή τα μπουτόν επιτρέπουν στο χειριστή του  CNC να πολλαπλασιάσει την προγραμματισμένη ταχύτητα με ένα ποσοστό τυπικά ανάμεσα στο 10%  και το  200%. Αυτό επιτρέπει τη λεπτομερή ρύθμιση των ταχυτήτων και των προώσεων, ώστε να ελαχιστοποιηθούν οι τριγμοί, να βελτιωθεί το φινίρισμα των επιφανειών, να επιμηκυνθεί η διάρκεια ζωής των εργαλείων κ.λ.π.  Τα χαρακτηριστικά SSO και MFO μπορούν να αποκλειστούν για άλλους λόγους, όπως για το συγχρονισμό των ταχυτήτων και των προώσεων στη σπειροτόμηση, ή ακόμη να προλάβει  "soldiering"/"dogging" από τους χειριστές. Σε μερικούς νεότερους ελεγκτές, ο συγχρονισμός ταχύτητας και πρόωσης κατά την σπειροτόμηση είναι τόσο εξελιγμένος, ώστε τα χαρακτηριστικά SSO και MFO μπορούν να είναι διαθέσιμα και κατά τη σπειροτόμηση. TC or T/C  Αλλαγή εργαλείου, εναλλάκτης εργαλείου(tool change, tool changer) TIR  total indicator reading  TPI Σπείρες ανά Ίντσα(threads per inch) USB  Universal Serial Bus 'Ενας τύπος διαδρόμου για τη σειριακή μεταφορά δεδομένων VMC  Κάθετο κέντρο μηχανούργησης(vertical machining center) VTL Τόρνος κάθετου πύργου(vertical turret lathe) Ένα τύπος εργαλειομηχανής, ο οποίος είναι ουσιαστικά ένας τόρνος με τον άξονα Z να περιστρέφεται κάθετα, allowing the faceplate to sit like a large turntable. Η έννοια VTL επικαλύπτεται με τη έννοια της κάθετης boring mill.

 Κοιτάξτε επίσης 
 3D printing
 Canned cycle
 LinuxCNC - a free CNC software with many resources for G-code documentation

 Extended developments 
 Direct Numerical Control (DNC)
 STEP-NC
 MTConnect

 Ανάλογες έννοιες 
 Αρχεία Gerber

 Σημεία προσοχής κατά την εφαρμογή 
 Cutter location, cutter compensation, offset parameters
 Coordinate systems

 Αναφορές 

 Βιβλιογραφία 

 Εξωτερικοί σύνδεσμοι 
 CNC G-Code and M-Code Programming
 Tutorial for G-code

 http://museum.mit.edu/150/86  Has several links (including history of MIT Servo Lab)
 Complete list of G-code used by most 3D printers
 Fanuc and Haas G-code Reference
 Fanuc and Haas G-code Tutorial

Κατηγορία:Κωδικοποιήσεις
Κατηγορία:Γλώσσες προγραμματισμού ειδικού σκοπού