Rev 7693 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7693 | Rev 7696 | ||
---|---|---|---|
Line 7... | Line 7... | ||
7 | Âõîä - òåêñòîâûå ôàéëû ìîäóëåé ñ ðàñøèðåíèåì ".ob07", êîäèðîâêà ANSI èëè |
7 | Âõîä - òåêñòîâûå ôàéëû ìîäóëåé ñ ðàñøèðåíèåì ".ob07", êîäèðîâêà ANSI èëè |
8 | UTF-8 ñ BOM-ñèãíàòóðîé. |
8 | UTF-8 ñ BOM-ñèãíàòóðîé. |
9 | Âûõîä - èñïîíÿåìûé ôàéë ôîðìàòà PE32, ELF èëè MENUET01/MSCOFF. |
9 | Âûõîä - èñïîíÿåìûé ôàéë ôîðìàòà PE32, ELF èëè MENUET01/MSCOFF. |
10 | Ïàðàìåòðû: |
10 | Ïàðàìåòðû: |
11 | 1) èìÿ ãëàâíîãî ìîäóëÿ |
11 | 1) èìÿ ãëàâíîãî ìîäóëÿ |
12 | 2) èìÿ ðåçóëüòèðóþùåãî ôàéëà |
- | |
13 | 3) òèï ïðèëîæåíèÿ è ïëàòôîðìà |
12 | 2) òèï ïðèëîæåíèÿ |
14 | "console" - Windows console |
13 | "console" - Windows console |
15 | "gui" - Windows GUI |
14 | "gui" - Windows GUI |
16 | "dll" - Windows DLL |
15 | "dll" - Windows DLL |
17 | "kos" - KolibriOS |
16 | "kos" - KolibriOS |
18 | "obj" - KolibriOS DLL |
17 | "obj" - KolibriOS DLL |
19 | "elfexe" - Linux ELF-EXEC |
18 | "elfexe" - Linux ELF-EXEC |
20 | "elfso" - Linux ELF-SO |
19 | "elfso" - Linux ELF-SO |
21 | 4) íåîáÿçàòåëüíûå ïàðàìåòðû-êëþ÷è |
20 | 3) íåîáÿçàòåëüíûå ïàðàìåòðû-êëþ÷è |
22 | -stk |
21 | -out |
23 | -base àäðåñ çàãðóçêè èñïîëíÿåìîãî ôàéëà â êèëîáàéòàõ |
22 | ñîâïàäàåò ñ èìåíåì ãëàâíîãî ìîäóëÿ, íî ñ äðóãèì ðàñøèðåíèåì |
24 | -ver |
23 | (ñîîòâåòñòâóåò òèïó èñïîëíÿåìîãî ôàéëà) |
- | 24 | -stk |
|
- | 25 | äîïóñòèìî îò 1 äî 32 Ìá) |
|
25 | -nochk <"ptibcwra"> îòêëþ÷èòü ïðîâåðêè ïðè âûïîëíåíèè (ñì. íèæå) |
26 | -nochk <"ptibcwra"> îòêëþ÷èòü ïðîâåðêè ïðè âûïîëíåíèè (ñì. íèæå) |
- | 27 | -ver |
|
Line 26... | Line 28... | ||
26 | 28 | ||
27 | ïàðàìåòð -nochk çàäàåòñÿ â âèäå ñòðîêè èç ñèìâîëîâ: |
29 | ïàðàìåòð -nochk çàäàåòñÿ â âèäå ñòðîêè èç ñèìâîëîâ: |
28 | "p" - óêàçàòåëè |
30 | "p" - óêàçàòåëè |
29 | "t" - òèïû |
31 | "t" - òèïû |
Line 40... | Line 42... | ||
40 | Íàïðèìåð: -nochk it - îòêëþ÷èòü ïðîâåðêó èíäåêñîâ è îõðàíó òèïà. |
42 | Íàïðèìåð: -nochk it - îòêëþ÷èòü ïðîâåðêó èíäåêñîâ è îõðàíó òèïà. |
41 | -nochk a - îòêëþ÷èòü âñå îòêëþ÷àåìûå ïðîâåðêè. |
43 | -nochk a - îòêëþ÷èòü âñå îòêëþ÷àåìûå ïðîâåðêè. |
Line 42... | Line 44... | ||
42 | 44 | ||
Line 43... | Line 45... | ||
43 | Íàïðèìåð: |
45 | Íàïðèìåð: |
44 | 46 | ||
45 | Compiler.exe "C:\example.ob07" "C:\example.exe" console -stk 1 |
47 | Compiler.exe "C:\example.ob07" console -out "C:\example.exe" -stk 1 |
46 | Compiler.exe "C:\example.ob07" "C:\example.dll" dll |
48 | Compiler.exe "C:\example.ob07" dll -out "C:\example.dll" |
47 | Compiler.exe "C:\example.ob07" "C:\example.exe" gui -stk 4 |
49 | Compiler.exe "C:\example.ob07" gui -out "C:\example.exe" -stk 4 |
48 | Compiler.exe "C:\example.ob07" "C:\example.exe" console -nochk pti |
50 | Compiler.exe "C:\example.ob07" console -out "C:\example.exe" -nochk pti |
49 | Compiler.kex "/tmp0/1/example.ob07" "/tmp0/1/example.kex" kos -stk 2 |
51 | Compiler.kex "/tmp0/1/example.ob07" kos -out "/tmp0/1/example.kex" -stk 4 |
Line 50... | Line 52... | ||
50 | Compiler.kex "/tmp0/1/example.ob07" "/tmp0/1/example.obj" obj -ver 2.7 |
52 | Compiler.kex "/tmp0/1/example.ob07" obj -out "/tmp0/1/example.obj" -ver 2.7 |
51 | Compiler.exe "C:\example.ob07" "C:\example" elfexe |
53 | Compiler.exe "C:\example.ob07" elfexe -out "C:\example" -stk 1 -nochk a |
Line 52... | Line 54... | ||
52 | 54 | ||
Line 164... | Line 166... | ||
164 | Âñòàâêà ìàøèííîãî êîäà, |
166 | Âñòàâêà ìàøèííîãî êîäà, |
165 | byte1, byte2 ... - êîíñòàíòû â äèàïàçîíå 0..255, |
167 | byte1, byte2 ... - êîíñòàíòû â äèàïàçîíå 0..255, |
166 | íàïðèìåð: |
168 | íàïðèìåð: |
167 | SYSTEM.CODE(08BH, 045H, 008H) (* mov eax, dword [ebp + 08h] *) |
169 | SYSTEM.CODE(08BH, 045H, 008H) (* mov eax, dword [ebp + 08h] *) |
Line 168... | Line -... | ||
168 | - | ||
169 | Òàêæå â ìîäóëå SYSTEM îïðåäåëåí òèï CARD16 (2 áàéòà). Äëÿ òèïà CARD16 íå |
- | |
170 | äîïóñêàþòñÿ íèêàêèå ÿâíûå îïåðàöèè, çà èñêëþ÷åíèåì ïðèñâàèâàíèÿ. |
- | |
171 | Ïðåîáðàçîâàíèÿ CARD16 -> INTEGER è INTEGER -> CARD16 ìîãóò áûòü ðåàëèçîâàíû |
- | |
172 | òàê: |
- | |
173 | - | ||
174 | PROCEDURE Card16ToInt (w: SYSTEM.CARD16): INTEGER; |
- | |
175 | VAR i: INTEGER; |
- | |
176 | BEGIN |
- | |
177 | SYSTEM.PUT(SYSTEM.ADR(i), w) |
- | |
178 | RETURN i |
- | |
179 | END Card16ToInt; |
- | |
180 | - | ||
181 | PROCEDURE IntToCard16 (i: INTEGER): SYSTEM.CARD16; |
- | |
182 | VAR w: SYSTEM.CARD16; |
- | |
183 | BEGIN |
- | |
184 | SYSTEM.GET(SYSTEM.ADR(i), w) |
- | |
185 | RETURN w |
- | |
Line 186... | Line 170... | ||
186 | END IntToCard16; |
170 | |
Line 187... | Line 171... | ||
187 | 171 | ||
188 | Ôóíêöèè ïñåâäîìîäóëÿ SYSTEM íåëüçÿ èñïîëüçîâàòü â êîíñòàíòíûõ âûðàæåíèÿõ. |
172 | Ôóíêöèè ïñåâäîìîäóëÿ SYSTEM íåëüçÿ èñïîëüçîâàòü â êîíñòàíòíûõ âûðàæåíèÿõ. |