Ìîäóëü: | FLibSYS |
²ì'ÿ: | Á³áë³îòåêà ôóíêö³é ñèñòåìíîãî API. |
Òèï: | Ñïåö³àëüí³ |
Äæåðåëî: | spec_FLibSYS.so |
Âåðñ³ÿ: | 1.3.0 |
Àâòîð: | Ðîìàí Ñàâî÷åíêî |
Îïèñ: | Íàäຠá³áë³îòåêó ñèñòåìíîãî API ñåðåäîâèùà êîðèñòóâàöüêîãî ïðîãðàìóâàííÿ. |
˳öåíç³ÿ: | GPL |
Ñïåö³àëüíèé ìîäóëü FLibSYS íàäຠâ ñèñòåìó OpenSCADA ñòàòè÷íó á³áë³îòåêó ôóíêö³é äëÿ ðîáîòè ç ñèñòåìîþ OpenSCADA íà ð³âí³ ¿¿ ñèñòåìíîãî API. Ö³ ôóíêö³¿ ìîæóòü âèêîðèñòîâóâàòèñÿ ó ñåðåäîâèù³ êîðèñòóâàöüêîãî ïðîãðàìóâàííÿ ñèñòåìè OpenSCADA äëÿ îðãàí³çàö³¿ íåîðäèíàðíèõ àëãîðèòì³â âçàºìî䳿.
Äëÿ àäðåñàö³¿ äî ôóíêö³¿ ö³º¿ á³áë³îòåêè ìîæíà âèêîðèñòîâóâàòè ñòàòè÷íó àäðåñó âèêëèêó "Special.FLibSYS.{Func}()" àáî äèíàì³÷íó "SYS.Special.FLibSYS["{Func}"].call()", "SYS.Special.FLibSYS.{Func}()". Äå {Func} — ³äåíòèô³êàòîð ôóíêö³¿ ó á³áë³îòåö³.
Íèæ÷å íàâåäåíî îïèñ êîæíî¿ ôóíêö³¿ á³áë³îòåêè. Äëÿ êîæíî¿ ôóíêö³¿ çä³éñíþâàëàñÿ îö³íêà ÷àñó âèêîíàííÿ. Âèì³ðþâàííÿ çä³éñíþâàëîñÿ íà ñèñòåì³ ç íàñòóïíèìè ïàðàìåòðàìè: Athlon 64 3000+ (ALTLinux 4.0(32á³ò)) øëÿõîì çàì³ðó çàãàëüíîãî ÷àñó âèêîíàííÿ ôóíêö³¿ ïðè âèêëèêó ¿¿ 1000 ðàç³â. Âèá³ðêà çä³éñíþâàëàñÿ ³ç ï'ÿòè îá÷èñëåíü ³ç îêðóãëåííÿì äî ìåíøîãî ö³ëîãî. ×àñ îòî÷óºòüñÿ êóòîâèìè äóæêàìè òà âèì³ðþºòüñÿ ó ì³êðîñåêóíäàõ.
Îïèñ: Çä³éñíþº âèêëèê êîíñîëüíèõ êîìàíä ÎÑ. Ôóíêö³ÿ â³äêðèâຠøèðîê³ ìîæëèâîñò³ êîðèñòóâà÷ó OpenSCADA øëÿõîì âèêëèêó áóäü-ÿêèõ ñèñòåìíèõ ïðîãðàì, óòèë³ò òà ñêðèïò³â, à òàêîæ îòðèìàííÿ çà ïîñåðåäíèöòâîì íèõ äîñòóïó äî âåëè÷åçíîãî îá'ºìó ñèñòåìíèõ äàíèõ. Íàïðèêëàä êîìàíäà "ls -l" ïîâåðíå äåòàë³çîâàíèé âì³ñò ðîáî÷î¿ òåêè.
Ïàðàìåòðè:
ID | ²ì'ÿ | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðÿäîê | Ïîâåðíåííÿ | |
com | Êîìàíäà | Ðÿäîê | Âõ³ä |
Ïðèêëàä:
using Special.FLibSYS; test=sysCall("ls -l"); messPut("Example",0,"Example: "+test);
Îïèñ: Ôîðìóâàííÿ SQL-çàïèòó äî ÁÄ.
Ïàðàìåòðè:
ID | ²ì'ÿ | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Îá'ºêò(Ìàñèâ) | Ïîâåðíåííÿ | |
addr | Àäðåñà ÁÄ | ðÿäîê | Âõ³ä | |
req | SQL-çàïèò | Ðÿäîê | Âõ³ä |
Îïèñ: Ñòâîðåííÿ îá'ºêòó âóçëà XML.
Ïàðàìåòðè:
ID | ²ì'ÿ | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Îá'ºêò(XMLNodeObj) | Ïîâåðíåííÿ | |
name | ²ì'ÿ | Ðÿäîê | Âõ³ä |
Ïðèêëàä:
using Special.FLibSYS; //Ñòâîðåííÿ îá'ºêòó "get" âóçëà XML. req = xmlNode("get"); //Ñòâîðåííÿ îá'ºêòó "get" âóçëà XML ³ç ñòâîðåííÿì àòðèáóò³â. //sub_DAQ/mod_ModBus/cntr_1/prm_1 — øëÿõ çã³äíî ñòðóêòóðè ïðîåêòó req = xmlNode("get").setAttr("path",);
Îïèñ: Çàïèò ³íòåðôåéñó óïðàâë³ííÿ äî ñèñòåìè çà ïîñåðåäíèöòâîì XML. Çâè÷àéíèé çàïèò çàïèñóºòüñÿ ó âèãëÿä³ "<get path="/OPath/%2felem"/>". Ïðè âêàçàíí³ ñòàíö³¿ çä³éñíþºòüñÿ çàïèò äî çîâí³øíüî¿ ñòàíö³¿.
Ïàðàìåòðè:
ID | ²ì'ÿ | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðÿäîê | Ïîâåðíåííÿ | |
req | Çàïèò | Îá'ºêò(XMLNodeObj) | Âèõ³ä | |
stat | Ñòàíö³ÿ | Ðÿäîê | Âõ³ä |
Ïðèêëàä:
using Special.FLibSYS; //Îòðèìàííÿ îçíàêè "Âêëþ÷åíèé/Âèêëþ÷åíèé" ïàðàìåòðàó "1" êîíòðîëåðó "1" ìîäóëÿ "ModBus". //sub_DAQ/mod_ModBus/cntr_1/prm_1 — øëÿõ çã³äíî ñòðóêòóðè ïðîåêòó req = xmlNode("get").setAttr("path",); rez = xmlCntrReq(req); messPut("test",0,"Çíà÷åííÿ: "+req.text()); //Âñòàíîâëåííÿ îçíàêè "Âêëþ÷åíèé" ïàðàìåòðó "1" êîíòðîëåðó "1" ìîäóëÿ "ModBus". req = xmlNode("set").setAttr("path",).setText(1); rez = xmlCntrReq(req); //Âñòàíîâëåííÿ îçíàêè "Âèêëþ÷åíèé" ïàðàìåòðó "1" êîíòðîëåðó "1" ìîäóëÿ "ModBus". req = xmlNode("set").setAttr("path",).setText(0); rez = xmlCntrReq(req);
Îïèñ: Îòðèìàííÿ îá'ºêòó àðõ³âó çíà÷åíü (VArchObj) øëÿõîì ï³äêëþ÷åííÿ äî àðõ³âó çà éîãî àäðåñîþ.
Ïàðàìåòðè:
ID | ²ì'ÿ | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Îá'ºêò(VArchObj) | Ïîâåðíåííÿ | |
name | ²ì'ÿ, àäðåñà äî àòðèáóòó ïàðàìåòðà ç àðõ³âîì (DAQ.{Module}.{Cntr}.{Prm}.{Attr}) àáî áåçïîñåðåäíüî äî àðõ³âó çíà÷åíü (Archive.va_{ValArchive}). | Ðÿäîê | Âõ³ä |
Ôóíêö³¿:
Ïðèêëàä:
using Special.FLibSYS; val = vArh(strPath2Sep(addr)).get(time,uTime,0,archivator); return val.isEval() ? "Ïîðîæíüî" : real2str(val,prec);
Îïèñ: Îòðèìàííÿ îá'ºêòó áóôåðó àðõ³âó çíà÷åíü (VArchObj) äëÿ âèêîíàííÿ ïðîì³æíèõ îïåðàö³é íàä êàäðàìè äàíèõ.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Îá'ºêò(VArchObj) | Ïîâåðíåííÿ | |
tp | Òèï çíà÷åíü àðõ³âó (0-Boolean, 1-Integer, 4-Real, 5-String) | Ö³ëèé | Âõ³ä | 1 |
sz | Ìàêñèìàëüíèé ðîçì³ð áóôåðó | Ö³ëèé | Âõ³ä | 100 |
per | Ïåð³îäè÷í³ñòü áóôåðó (ó ì³êðîñåêóíäàõ) | Ö³ëèé | Âõ³ä | 1000000 |
hgrd | Ðåæèì "Æîðñòêà ìåðåæà ÷àñó" | Ëîã³÷íèé | Âõ³ä | 0 |
hres | Ðåæèì "Âèñîêî¿ ðîçä³ëüíî¿ çäàòíîñò³ ÷àñó (ì³êðîñåêóíäè)" | Ëîã³÷íèé | Âõ³ä | 0 |
Îïèñ: Ââ³ä/Âèâ³ä ó: ôàéë, ñòðîêîâèé ïîò³ê.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Îá'ºêò(IO) | Ïîâåðíåííÿ | |
name | ²ì'ÿ ôàéëó àáî äàí³ (äëÿ ñòðîêîâîãî ïîòîêó) | Ðÿäîê | Âõ³ä | |
accs | Äîñòóï äî ôàéëó (''-ñòðîêîâèé ïîò³ê;'r[+]'-÷èòàííÿ;'w[+]'-çàïèñ ç íóëÿ;'a[+]'-äîäàííÿ;...) | Ðÿäîê | Âõ³ä | |
mFormat | Ôîðìàò äàíèõ ìàøèíè ('n'-ñèñò. ïîðÿäîê;'b'-BigEndian;'l'-LittleEndian) | Ö³ëå | Âõ³ä | "n" |
enc | Êîäóâàííÿ ðÿäêó ó ôàéë³ | Ëîã³÷íèé | Âõ³ä |
Çíà÷åííÿ:
Âëàñòèâîñò³:
Ôóíêö³¿:
Îïèñ: Ïåðåòâîðþº àáñîëþòíèé ÷àñ ó ðÿäîê ïîòð³áíîãî ôîðìàòó. Çàïèñ ôîðìàòó â³äïîâ³äຠPOSIX-ôóíêö³¿ strftime.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
val | Ðÿäîê ïîâíî¿ äàòè | Ðÿäîê | Ïîâåðíåííÿ | |
sec | Ñåêóíäè | Ö³ëå | Âõ³ä | 0 |
form | Ôîðìàò | Ðÿäîê | Âõ³ä | %Y-%m-%d %H:%M:%S |
Ïðèêëàä:
using Special.FLibSYS; test=tmFStr(SYS.time(),); messPut("Example",0,"tmFStr(): "+test);
Îïèñ: Ïîâåðòຠïîâíèé ÷àñ ó ñåêóíäàõ, õâèëèíàõ, ãîäèíàõ òà ³íøå, âèõîäÿ÷è ç àáñîëþòíîãî ÷àñó â ñåêóíäàõ â³ä åïîõè 1.1.1970.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
fullsec | Ïîâí³ ñåêóíäè | Ö³ëèé | Âõ³ä | 0 |
sec | Ñåêóíäè [0...59] | Ö³ëèé | Âèõ³ä | 0 |
min | Õâèëèíè [0...59] | Ö³ëèé | Âèõ³ä | 0 |
hour | Ãîäèíè [0...23] | Ö³ëèé | Âèõ³ä | 0 |
mday | Äåíü ì³ñÿöÿ [1...31] | Ö³ëèé | Âèõ³ä | 0 |
month | ̳ñÿöü [0...11] | Ö³ëèé | Âèõ³ä | 0 |
year | гê, â³ä 1900 | Ö³ëèé | Âèõ³ä | 0 |
wday | Äåíü òèæíÿ [0...6] | Ö³ëèé | Âèõ³ä | 0 |
yday | Äåíü ó ðîêó [0...365] | Ö³ëèé | Âèõ³ä | 0 |
isdst | ˳òí³é ÷àñ | Ö³ëèé | Âèõ³ä | 0 |
Ïðèêëàä:
using Special.FLibSYS; curMin=curHour=curDay=curMonth=curYear=0; tmDate(tmTime(),0,curMin,curHour,curDay,curMonth,curYear); messPut("test",0,"Ïîòî÷íà õâèëèíà: "+curMin); messPut("test",0,"Ïîòî÷íà ãîäèíà: "+curHour); messPut("test",0,"Ïîòî÷íèé äåíü: "+curDay); messPut("test",0,"Ïîòî÷íèé ì³ñÿöü: "+curMonth); messPut("test",0,"Ïîòî÷íèé ð³ê: "+curYear);
Îïèñ: Ïîâåðòຠàáñîëþòíèé ÷àñ â ñåêóíäàõ â³ä åïîõè 1.1.1970 òà ì³êðîñåêóíäàõ, ÿêùî usec âñòàíîâëåíî ó ïîçèòèâíå çíà÷åííÿ.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
sec | Ñåêóíäè | Ö³ëèé | Ïîâåðíåííÿ | 0 |
usec | ̳êðîñåêóíäè | Ö³ëèé | Âèõ³ä | -1 |
Îïèñ: Ïîâåðòຠ÷àñ ó ñåêóíäàõ â³ä åïîõè 1.1.1970, âèõîäÿ÷è ³ç ñòðîêîâîãî çàïèñó ÷àñó, ó â³äïîâ³äíîñò³ ç âêàçàíèì øàáëîíîì. Íàïðèêëàä, øàáëîíó "%Y-%m-%d %H:%M:%S" â³äïîâ³äຠ÷àñ "2006-08-08 11:21:55". Îïèñ ôîðìàòó øàáëîíó ìîæíà îòðèìàòè ³ç äîêóìåíòàö³¿ íà POSIX-ôóíêö³þ "strptime".
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
sec | Ñåêóíäè | Ö³ëèé | Ïîâåðíåííÿ | 0 |
str | Ðÿäîê äàòè | Ðÿäîê | Âõ³ä | |
form | Ôîðìàò çàïèñó äàòè | Ðÿäîê | Âõ³ä | %Y-%m-%d %H:%M:%S |
Ïðèêëàä:
using Special.FLibSYS; curMin=curHour=curDay=curMonth=curYear=0; tmDate(tmTime(),0,curMin,curHour,curDay,curMonth,curYear); test = tmStrPTime(""+curYear+"-"+(curMonth+1)+"-"+curDay+" 9:0:0",); messPut("Example",0,"tmStrPTime(): "+test);
Îïèñ: Ïîâåðòຠ÷àñ, ñïëàíîâàíå ó ôîðìàò³ ñòàíäàðòó Cron ïî÷èíàþ÷è â³ä áàçîâîãî ÷àñó àáî â³ä ïîòî÷íîãî ÿêùî áàçîâèé íå âêàçàíèé.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
res | Ðåçóëüòàò | Ö³ëèé | Ïîâåðíåííÿ | 0 |
str | Çàïèñ ó ñòàíäàðò³ Cron | Ðÿäîê | Âõ³ä | * * * * * |
base | Áàçîâèé ÷àñ | Ö³ëèé | Âõ³ä | 0 |
Îïèñ: Êîðîòêèé ñîí â³ä íàíîñåêóíä òà äî STD_INTERF_TM (5 ñåêóíä).
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
res | Ðåçóëüòàò | Ö³ëèé | Ïîâåðíåííÿ | 0 |
tm | ×àñ | Ðåàëüíèé | Âõ³ä | 0 |
Îïèñ: Çàïèò ñèñòåìíèõ ïîâ³äîìëåíü.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Îá'ºêò(Ìàñèâ) | Ïîâåðíåííÿ | |
btm | ×àñ ïî÷àòêó | Ö³ëå | Âõîä | |
etm | ×àñ ê³íöÿ | Ö³ëå | Âõ³ä | |
cat | Êàòåãîð³ÿ ïîâ³äîìëåííÿ | Ðÿäîê | Âõ³ä | |
lev | гâåíü ïîâ³äîìëåííÿ | Ö³ëèé | Âõ³ä | |
arch | Àðõ³âàòîð | Ðÿäîê | Âõ³ä |
Îïèñ: Ôîðìóâàííÿ ñèñòåìíîãî ïîâ³äîìëåííÿ.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
cat | Êàòåãîð³ÿ ïîâ³äîìëåííÿ | ðÿäîê | Âõ³ä | |
lev | гâåíü ïîâ³äîìëåííÿ | Ö³ëèé | Âõ³ä | |
mess | Òåêñò ïîâ³äîìëåííÿ | Ðÿäîê | Âõ³ä |
Ïðèêëàä:
rnd_sq_gr11_lineClr="red"; Special.FLibSYS.messPut("Example",1,"Event: "+rnd_sq_gr12_leniClr);
Îïèñ: Âèêîðèñòîâóºòüñÿ äëÿ îòðèìàííÿ ðîçì³ðó.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ö³ëèé | Ïîâåðíåííÿ | |
str | Ðÿäîê | Ðÿäîê | Âõ³ä |
Ïðèêëàä:
Special.FLibSYS.messPut("Example",1,"ReturnString: "+strSize("Example"));
Îïèñ: Âèêîðèñòîâóºòüñÿ äëÿ îòðèìàííÿ ÷àñòèíè ðÿäêà.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðÿäîê | Ïîâåðíåííÿ | |
str | Ðÿäîê | Ðÿäîê | Âõ³ä | |
pos | Ïîçèö³ÿ | Ö³ëèé | Âõ³ä | 0 |
n | ʳëüê³ñòü | Ö³ëèé | Âõ³ä | -1 |
Ïðèêëàä:
using Special.FLibSYS; test=strSubstr("Example", 0, strSize("Example")-1); messPut("Example",1,"ReturnString: "+test);
Îïèñ: Âèêîðèñòîâóºòüñÿ äëÿ âñòàâêè îäíîãî ðÿäêà äî ³íøîãî.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
str | Ðÿäîê | Ðÿäîê | Âèõ³ä | |
pos | Ïîçèö³ÿ | Ö³ëèé | Âõ³ä | 0 |
ins | Ðÿäîê äëÿ âñòàâêè | Ðÿäîê | Âõ³ä |
Îïèñ: Âèêîðèñòîâóºòüñÿ äëÿ çàì³íè ÷àñòèíè ðÿäêà ³íøèì ðÿäêîì.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
str | Ðÿäîê | Ðÿäîê | Âèõ³ä | |
pos | Ïîçèö³ÿ | Ö³ëèé | Âõ³ä | 0 |
n | ʳëüê³ñòü | Ö³ëèé | Âõ³ä | -1 |
repl | Ðÿäîê ùî çàì³íþº | Ðÿäîê | Âõ³ä |
Îïèñ: Âèêîðèñòîâóºòüñÿ ó ðîçáîð³ ðÿäêà çà ðîçä³ëüíèêîì.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðÿäîê | Ïîâåðíåííÿ | |
str | Ðÿäîê | Ðÿäîê | Âõ³ä | |
lev | гâåíü | Ö³ëèé | Âõ³ä | |
sep | Ðîçä³ëüíèê | Ðÿäîê | Âõ³ä | "." |
off | Çì³ùåííÿ | Ö³ëèé | Âèõ³ä |
Ïðèêëàä:
using Special.FLibSYS; ExapleString="Example:123"; test=strParse(ExapleString,1,":"); messPut("Example",0,"strParse(): "+test);
Îïèñ: Âèêîðèñòîâóºòüñÿ ó ðîçáîð³ øëÿõó íà åëåìåíòè.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðÿäîê | Ïîâåðíåííÿ | |
path | Øëÿõ | Ðÿäîê | Âõ³ä | |
lev | гâåíü | Ö³ëèé | Âõ³ä | |
off | Çì³ùåííÿ | Ö³ëèé | Âèõ³ä |
Ïðèêëàä:
using Special.FLibSYS; test=strParsePath(path,0,"/"); messPut("Example",1,"strParsePath(): "+test);
Îïèñ: Âèêîðèñòîâóºòüñÿ äëÿ ïåðåòâîðåííÿ øëÿõó ó ðÿäîê ç ðîçä³ëüíèêîì.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðÿäîê | Ïîâåðíåííÿ | |
src | Äæåðåëî | Ðÿäîê | Âõ³ä | |
sep | Ðîçä³ëüíèê | Ðÿäîê | Âõ³ä | "." |
Ïðèêëàä:
//Ïåðåòâîðþº çíà÷åííÿ "/ses_AGLKS/pg_so" àòðèáóòà "path" ó çíà÷åííÿ "ses_AGLKS.pg_so" using Special.FLibSYS; test = strPath2Sep(path); messPut("Example",0,"path: "+path); messPut("Example",0,"strPath2Sep(): "+test);
Îïèñ: Âèêîðèñòîâóºòüñÿ äëÿ êîäóâàííÿ ðÿäêà äëÿ âèêîðèñòàííÿ ó âèõ³äíîìó êîä³ HTML.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðÿäîê | Ïîâåðíåííÿ | |
src | Äæåðåëî | Ðÿäîê | Âõ³ä |
Îïèñ: Âèêîðèñòîâóºòüñÿ äëÿ êîäóâàííÿ òåêñòó ó á³íàðíèé âèãëÿä, ³ç ôîðìàòó <00 A0 FA DE>.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðÿäîê | Ïîâåðíåííÿ | |
src | Äæåðåëî | Ðÿäîê | Âõ³ä |
Îïèñ: Âèêîðèñòîâóºòüñÿ äëÿ äåêîäóâàííÿ òåêñòó ³ç á³íàðíîãî âèãëÿäó ó ôîðìàò <00 A0 FA DE>.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðÿäîê | Ïîâåðíåííÿ | |
src | Äæåðåëî | Ðÿäîê | Âõ³ä |
Îïèñ: Âèêîðèñòîâóºòüñÿ äëÿ ïåðåòâîðåííÿ ðåàëüíîãî ó ðÿäîê.
Ïàðàìåòðè:
ID | ²ì'ÿ | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðÿäîê | Ïîâåðíåííÿ | |
val | Çíà÷åííÿ | Ðåàëüíå | Âõ³ä | |
prc | Òî÷í³ñòü | Ö³ëå | Âõ³ä | 4 |
tp | Òèï | Ðÿäîê | Âõ³ä | "f" |
Îïèñ: Âèêîðèñòîâóºòüñÿ äëÿ ïåðåòâîðåííÿ ö³ëîãî ó ðÿäîê.
Ïàðàìåòðè:
ID | ²ì'ÿ | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðÿäîê | Ïîâåðíåííÿ | |
val | Çíà÷åííÿ | Ö³ëå | Âõ³ä | |
base | Áàçà, ï³äòðèìóþòüñÿ: 8, 10, 16 | Ö³ëå | Âõ³ä | 10 |
Îïèñ: Âèêîðèñòîâóºòüñÿ äëÿ ïåðåòâîðåííÿ ðÿäêà ó ðåàëüíå.
Ïàðàìåòðè:
ID | ²ì'ÿ | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðåàëüíå | Ïîâåðíåííÿ | |
val | Çíà÷åííÿ | Ðÿäîê | Âõ³ä |
Îïèñ: Âèêîðèñòîâóºòüñÿ äëÿ ïåðåòâîðåííÿ ðÿäêà ó ö³ëå.
Ïàðàìåòðè:
ID | ²ì'ÿ | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ö³ëå | Ïîâåðíåííÿ | |
val | Çíà÷åííÿ | Ðÿäîê | Âõ³ä | |
base | Îñíîâà | Ö³ëèé | Âõ³ä | 0 |
Îïèñ: Ðåàë³çàö³ÿ Öèêë³÷íîãî Íàäëèøêîâîãî Êîäó äëÿ äîâæèí 8-64 á³ò.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ö³ëå | Ïîâåðíåííÿ | |
data | Äàí³ | Ðÿäîê | Âõ³ä | |
poly | Ïîë³íîì (ðåâåðñèâíèé) | Ö³ëèé | Âõ³ä | 40961 (0xA001) |
width | Øèðèíà | Ö³ëèé | Âõ³ä | 16 |
init | ²í³ö³àë³çàö³ÿ | Ö³ëèé | Âõ³ä | -1 (0xFFFFFFFFFFFFFFFF) |
Îïèñ: Ðîçðàõóíîê çë³ïêó ïîâ³äîìëåííÿ 5.
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðÿäîê | Ïîâåðíåííÿ | |
data | Äàí³ | Ðÿäîê | Âõ³ä |
Ïåðåêëàä
Îïèñ: Ïîä³ë float (4 áàéò³â) íà ñëîâà (2 áàéòè).
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
val | Çíà÷åííÿ | Ðåàëüíå | Âõ³ä | |
w1 | Ñëîâî 1 | Ö³ëèé | Âèõ³ä | |
w2 | Ñëîâî 2 | Ö³ëèé | Âèõ³ä |
Îïèñ: Îá'ºäíàííÿ float (4 áàéò³â) ³ç ñë³â (2 áàéòè).
Ïàðàìåòðè:
ID | Ïàðàìåòð | Òèï | Ðåæèì | Ïî çàìîâ÷åííþ |
rez | Ðåçóëüòàò | Ðåàëüíå | Ïîâåðíåííÿ | |
w1 | Ñëîâî 1 | Ö³ëèé | Âõ³ä | |
w2 | Ñëîâî 2 | Ö³ëèé | Âõ³ä |
Äåÿê³ îá'ºêòè ìîäóëÿ íàäàþòü ôóíêö³¿ êîðèñòóâàöüêîãî ïðîãðàìóâàííÿ.
Îá'ºêò "Á³áë³îòåêà ôóíêö³é" (SYS.Special.FLibSYS)
Îá'ºêò "Êîðèñòóâàöüêà ôóíêö³ÿ" (SYS.Special.FLibSYS["funcID"])