Stundum þegar þú forritar vinnslu gætirðu lent í aðstæðum þar sem hópur forritahluta birtist oft í einu forriti eða er notaður í nokkrum forritum. Við getum dregið út þennan hóp dagskrárhluta, nefnt þá og geymt þá sérstaklega; þessi hópur dagskrárhluta er kallaður undirrútína. Undirrútína er hluti vinnsluforrita sem hægt er að kalla fram með viðeigandi leiðbeiningum um stýringar véla og hefur almennt sjálfstæða merkingu meðan á vinnslu stendur. Vinnsluforritið sem inniheldur leiðbeiningarnar um að kalla á fyrsta-undirrútínuna er kallað aðalforritið. Leiðbeiningin um að hringja í undiráætlun er einnig dagskrárhluti, sem venjulega samanstendur af undiráætlunarsímtalsleiðbeiningunni, nafni undiráætlunarinnar og fjölda símtala. Sérstakar reglur og snið eru mismunandi eftir kerfinu. Til dæmis, fyrir sömu leiðbeiningar „hringdu einu sinni í undiráætlun númer 55,“ notar FANUC kerfið „M98 P55.“ en bandaríska AB kerfið notar „P55x“.
Hægt er að hreiðra undirrútur, það er að segja eitt stig inni í öðru. Sambandið milli efri og neðra stigs er það sama og sambandið á milli aðalforritsins og fyrsta-undiráætlunarinnar. Hámarksfjöldi hreiðra stiga er ákvarðaður af tilteknu CNC kerfi. Form og samsetning undiráætlana er að mestu leyti það sama og í aðalforritinu: fyrsta línan er undiráætlunarnúmerið (nafn), og síðasta línan er "undiráætlunarlok" leiðbeiningin, með undiráætlunarhlutanum á milli. Hins vegar lýkur aðalforritinu aðalforritinu og endurstillir CNC kerfið; Leiðbeiningar þess eru staðlaðar, þar sem hvert kerfi notar M02 eða M30. Undiráætlunarlokaleiðbeiningin slítur aftur á móti undiráætluninni og fer aftur í aðalforritið eða fyrri undiráætlunina. Leiðbeiningar þess eru mismunandi eftir kerfum; til dæmis nota FANUC kerfi M99, Siemens kerfi nota M17 og AB (American A/B) kerfi nota M02.

