易码技术论坛

 找回密码
 加入易码
搜索
查看: 123222|回复: 3

GVmaker虚拟指令意义

[复制链接]
发表于 2005-2-21 18:03:00 | 显示全部楼层
这个.......好象是N久前WQXNET上的
发表于 2005-2-21 18:20:00 | 显示全部楼层
RWK让偶到NET上去找
偶没有找到的
发表于 2005-2-21 18:45:00 | 显示全部楼层
笨呗
 楼主| 发表于 2005-2-21 15:53:02 | 显示全部楼层 |阅读模式
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
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2024-3-29 15:52 , Processed in 0.011311 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表