Ìîäóëü: | 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"])