本帖最后由 橙子 于 2019-4-3 10:46 编辑
赞!那是我理解错了,因为我看说明书
movr 是随机赋予一个0~x-1的值。下面这段话
movr p2 $str(p3)时,得到的数字就是0-s41的值,也就是说p2的下限是0,上限=s41
我一直理解的是下面这样的:
READRANDOMSTR ..\QuestDiary\游戏数据\颜色.TXT S40
;随机读取颜色.txt 文本的一行数据保存至变量S40
SPLIT $STR(S40) | S40
;分割读取到的S40变量为 S40 | S41
MOV P1 $STR(S41)
;把S41的值赋予给变量P1
MOV P3 $STR(S41)
;把S41的值赋予给变量P3
INC P3 1
;用P3+1
MOVR P2 $STR(P3)
;随机赋予变量P2的值为0~(P3-1)
DEC P1 $STR(P2)
;把P1减去 P2的值
#ELSEACT
BREAK
====================
运算过程,当变量S41=5时;
P1为5
p3为5
P3=P3+1=6=当前P3的值
P2=0~(6-1)=当前P2的值
P1-P2=5-(0~5)
====================
当S41=5时,P1=0,1,2,3,4,5。P2=0,1,2,3,4,5.
请指出我哪里错了,多谢!