<bytecode> ::= <magic_number> <adress> <operation_list>
<magic_number> ::= "E\fE\f" ; 0x45 0xc 0x45 0xc
<adress> ::= <byte> <byte> <byte> <byte> <byte> <byte> <byte> <byte>
<operation_list> ::= <operation> | <operation> <operation_list>
<operation> ::= <not>
| <lnot>
| <neg>
| <and>
| <or>
| <xor>
| <shl>
| <shr>
| <land>
| <lor>
| <add>
| <sub>
| <mult>
| <div>
| <mod>
| <gt>
| <ge>
| <lt>
| <le>
| <eq>
| <diff>
| <updz>
| <push_stack>
| <pop_stack>
| <pop>
| <call>
| <ret>
| <jmp>
| <zjmp>
| <aff>
| <affs>
| <push_value>
| <push_label>
<not> ::= "\003"
<lnot> ::= "\004"
<neg> ::= "\005"
<and> ::= "\006"
<or> ::= "\a"
<land> ::= "\b"
<lor> ::= "\t"
<xor> ::= "\n"
<shl> ::= "\v"
<shr> ::= "\f"
<add> ::= "\r"
<sub> ::= "\016"
<mult> ::= "\017"
<div> ::= "\020"
<mod> ::= "\021"
<gt> ::= "\022"
<ge> ::= "\023"
<lt> ::= "\024"
<le> ::= "\025"
<eq> ::= "\026"
<diff> ::= "\027"
<updz> ::= "\030"
<push_stack> ::= "\035" <arguments>
<pop_stack> ::= "\036" <arguments>
<pop> ::= "\037"
<call> ::= """
<ret> ::= "#"
<jmp> ::= "$"
<zjmp> ::= "%"
<aff> ::= "&"
<affs> ::= "'" <arguments> <string>
<push_value> ::= "Y" <arguments>
<push_label> ::= "[" <arguments>
<arguments> ::= <byte> <byte> <byte> <byte> <byte> <byte> <byte> <byte>
<string> ::= <byte> | <byte> <string>
<byte > = "\0" .. "ΓΏ"