- 注册时间
- 2005-1-22
- 最后登录
- 1970-1-1
|
GVmaker虚拟指令意义
01 AA =push1B #$AA,push3B #$000000
02 AABB =push2B #$AABB,push2B #$0000
03 AABBCCDD =push4B #$AABBCCDD
04 CDAB =push1B $ABCD,push3B #$000000
05 CDAB =push2B $ABCD,push2B #$0000
06 CDAB =push4B $ABCD
07 ABCD =push1b $(abcd+pop4b)
08 ABCD =push2b $(abcd+pop4b)
09 ABCD =push4b $(abcd+pop4b)
0D xxxxxxxx00 =push4B 串地址,并把字符串到一个地方去
0A ABCD =ah1 (to address header1 pub)base at ABCD =add abcd,pop2b,push $0100
0B ABCD =ah2 (to address header2 pub)base at ABCD =add abcd,pop2b,push $0200
0C ABCD =ah4 (to address header4 pub)base at ABCD =add abcd,pop2b,push $0400
0E CDAB =push1B ($ABCD+BASE),push3B #$000000
0F CDAB =push2B ($ABCD+BASE),push2B #$0000
10 CDAB =push4B ($ABCD+BASE)
14 ABCD =ah1 (to address header1 env)base at ABCD =add abcd,pop2b,push $8100
15 ABCD =ah2 (to address header2 env)base at ABCD =add abcd,pop2b,push $8200
16 ABCD =ah4 (to address header4 env)base at ABCD =add abcd,pop2b,push $8400
17 XXYY =push4B #(pop4B+0x0000XXYY) similar as 45,using in address calc
19 XXYY =push4B (xxyy's absoulute address)
45 XXYY =push4B #(pop4B+0x0000XXYY)
46 XXYY =push4B #(pop4B-0x0000XXYY)
47 XXYY =push4B #(pop4B*0x0000XXYY)
48 XXYY =push4B #(pop4B\0x0000XXYY)
49 XXYY =push4B #(pop4B%0x0000XXYY)
4A XXYY =push4B #(pop4B<<0x0000XXYY)
4B XXYY =push4B #(pop4B>>0x0000XXYY)
4C XXYY =push4B #(pop4B==XXXX)
4D XXYY =push4B #(pop4B!=XXXX)
4E XXYY =push4B #(pop4B>XXXX)
4F XXYY =push4B #(pop4B<XXXX)
50 XXYY =push4B #(pop4B>=XXXX)
51 XXYY =push4B #(pop4B<=XXXX)
1A =push4byte _TEXT
1B =push4byte _GRAPH
42 =push4byte _GBUF
21 ="+" = push4B #(pop4B+pop4B)
22 ="-" = push4B #(-pop4B+pop4B)
23 =&
24 =|
25.. ~
26 =^
27 =&&逻辑与运算符
28 =||逻辑或运算符
29 = "!"逻辑非运算符
2A ="*" = push4B #(pop4B*pop4B)
2B ="/" = push4B #(1/(pop4B/pop4B))
2C = "%"求余运算符
2D =<<
2E =>>
3C AB CD =START POINT @ 0xCDAB
34 = "<"
33 = ">"
32 = ">="
31 = "<="
2F = "=="
30 = "!="
1C = "-"负号运算符
35 赋值(堆栈寻址) 00 20 04 00,public 00 20 84 00,private
36 =push1B $pop4B,push3B #$000000
37 =pop2B,push2B #0400 ??
38 pop4b!!
1F x++(堆栈寻址)=inc x;push x
20 x--(堆栈寻址)
1D ++x =push x;inc x
1E --x
3D AB CD EF =CALL EFCDAB(file offset)
39 AB CD EF =IF FALSE GOTO EFCDAB(file offset)
3B AB CD EF =GOTO EFCDAB(file offset)
3E XX YY ZZ =函数头,YYXX:函数代码偏移,ZZ:函数参数个数
3F =RTS??
40 =END??
44 =#loadall
80 =putchar
81 =getchar
82 =printf
83 =strcpy
84 =strlen
85 =SetScreen
86 =UpdateLCD
87 =Delay
88 =WriteBlock
89 =Refresh
8A =TextOut
8B =Block
8C =Rectangle
8D =exit();
8E =ClearScreen
8F =abs();
90 =rand();
91 =srand();
92 =Locate
93 =Inkey();
94 =Point
95 =GetPoint
96 =Line
97 =Box
98 =Circle
99 =Ellipse
9A =Beep();
9B =isalnum
9C =isalpha
9D =iscntrl
9E =isdigit
9F =isgraph
A0 =islower
A1 =isprint
A2 =ispunct
A3 =isspace
A4 =isupper
A5 =isxdigit
A6 =strcat
A7 =strchr
A8 =strcmp
A9 =strstr
AA =tolower
AB =toupper
AC =memset();
AD =memcpy();
AE =fopen
AF =fclose
B0 =fread
B1 =fwrite
B2 =fseek
B3 =ftell
B4 =feof
B5 =rewind
B6 =getc
B7 =putc
B8 =sprintf
B9 =MakeDir
BA =DeleteFile
BB =Getms
BC =CheckKey
BD =memmove
BE =Crc16
BF =Secret
C0 =ChDir
C1 =FileList
C2 =GetTime
C3 =SetTime
C4 =GetWord
C5 =XDraw
C6 =ReleaseKey
C7 =GetBlock
C8 =Sin
C9 =Cos
CA =FillArea
|
|