Dá se s trochou nadsázky mluvit o funkci "inverzní" k funkci rpnproc_makejob(). Z výsledku převodu textového tvaru programu na binární dělá zpět tvar textový. Je zřejmé, že těžiště využití této funkce tkví především v možnosti kontroly a dokumentace. Proč dokumentace? Textový výstup nekopíruje slepě předchozí textový vstup, ale přeci jen mu dává jistou "přidanou hodnotu" ve formě "štábní kultury".
Ale teď vážně - co to v praxi znamená a jaký to má skutečný přínos.
Předně - každá řádka instrukce je doplněna o adresu instrukce. Adresou instrukce je dvojice čísel:
Dalším zlepšením je zvýšení estetické úrovně výpisu. Ve vstupní textové podobě lze pro zápis instrukcí a jejich parametrů libovolně užívat malá a velká písmena. Výstupní tvar (realizovaný touto funkcí) použití malých a velkých písmen podřizuje zvyklostem kalkulátorů HP, resp. zvyklostem známým z jejich dokumentace (návody k použití, ...).
Jak tedy vstup a výstup může vypadat, ukazují následující řádky.
10 lbl 2 xeq 9 1 - x!= 0 gto 2 rtn lbl 9 pse rtn |
###:0000 10 002:0000 LBL 002 002:0001 XEQ 009 002:0002 1 002:0003 - 002:0004 x!= 0 002:0005 GTO 002 002:0006 RTN 009:0000 LBL 009 009:0001 PSE 009:0002 RTN |
Argumenty funkce mají následující významy:
Funkce vrací hodnotu 0 v případě, že výše popisované činnosti proběhly korektně. V opačném případě vrátí hodnotu nenulovou.
Typ rpnprocjobp_t je popsán zde, typ rpnproclsjval_t tady.