发布于 2015-02-06 13:14:03
5楼
定义变量:
输入变量:
db_no:pointer//输入db号:p#dbxxx.dbx0.0
临时变量:
temar1:dword//地址寄存器
temar2:dword//地址寄存器
ar1data:dword//数据地址1
ar2data:dword//数据地址2
DB_ID:word
count:int
L 84
t count//一共有84套
TAR1 #temp_ar1
TAR2 #temp_ar2
L P##db_no
LAR1
L W [AR1,P#0.0]
T #DB_ID
OPN DB [#DB_ID]
LAR1 P#6.0
m001: TAR1 #ar1data1
TAR1 #ar1data2
L dbd[ar2data]//每一套的第一个数据
L 33
=i
jcn m1
等于33需要执行的程序
m1:nop 0
LAR1 #ar1data2
+AR1 P#1.0
TAR1 #ar1data2//每次偏移1个字节所以这里指针+1
L dbd[ar2data]//每一套的第二个数据
L 37
=i
jcn m2
等于37需要执行的程序
m2:nop 0
LAR1 #ar1data2
+AR1 P#1.0
TAR1 #ar1data2//每次偏移1个字节所以这里指针+1
L dbd[ar2data]//每一套的第三个数据
L 31
=i
jcn m3
等于31需要执行的程序
m3:nop 0
L count
L 1
-i
L 0
>i//循环比较一次后计数减1,如果计数大于说明至少还有一套没有比较完继续循环比较
jcn MM1
LAR1 #ar1data1
+AR1 P#64.0//每套偏移64个字节所以这里指针+64
loop
MM1:nop 0
以上程序纯手写的,难免会有小问题,意思是这个意思。
活到老,学到老!为了生活学习吧!