f77e2af2fdcc0c86e63370c840d8bfe7d760d5ee.jpg

基本指令

nop
该指令无效。

mov R/I R
将第一个操作数复制到第二个操作数中。

jmp L
跳到既定标签位置,执行下一行指令。

slp R/I
在操作数规定数量的时间单位内保持睡眠状态。

slx P
保持睡眠状态,直到可以从操作数中规定的 XBus 引脚读入数据。

算法指令

存储器可存储从 -999 到 999 之间的整数,包含边界值。如果一个算法操作的计算结果超出了该范围,系
统将保存允许的最接近数值。例如,如果 acc 的值为 800,对其执行 add 400 指令后,系统会将 999 存
入 acc。

add R/I
将第一个操作数的值与 acc 存储器的值相加,并将结果存入 acc 存储器。

sub R/I
从 acc 存储器的值中减去第一个操作数的值,并将结果存入 acc 存储器。

mul R/I
将第一个操作数的值与 acc 存储器的值相乘,并将结果存入 acc 存储器。

not
如果 acc 的值为 0,则将 100 值存入 acc。否则,将 0 值存入 acc。

dgt R/I
从 acc 存储器中分离出操作数规定的位数值,并将结果存入 acc 存储器。

dst R/I R/I
分离出 acc 值中第一个操作数规定的位数值,将该值设为第二个操作数的数值。

测试提示

teq R/I R/I
测试第一个操作数 (A) 是否等于第二个操作数 (B) 的值。

tgt R/I R/I
测试第一个操作数 (A) 是否大于第二个操作数 (B) 的值。

tlt R/I R/I
测试第一个操作数 (A) 是否小于第二个操作数 (B) 的值。

tcp R/I R/I
比较第一个操作数 (A) 和第二个操作数 (B) 的值。

 

隐藏指令

gen P R/I R/I
生成一个心跳,第一个R/I代表开启100的长度,第二个R/I代表关闭0的长度

@
只运行一次,用来初始化代码