Skip to main content

指令构成

在操作编程器时,我们需要在编辑模式下以程序行的形式来输入。
当程序进入运行模式,系统默认从第000行开始,按行号递增顺序逐行执行。

tip

我们也可以根据程序运行时需要的功能,通过跳转类指令,直接或者有条件地改变顺序执行逻辑,跳转到其他部分继续运行。

主程序的编辑模式界面长这样:

编辑模式界面

编辑模式下,所有元素都按十六进制格式输入。

info

指令和运算元概念在编程器上的使用源自Solaris x86汇编语言,详情请参考Oracle相关文档。

行号

我们可以自由编辑512行程序,从0001FF均为有效行号。尝试编辑200或以上的行号时,屏幕上会给出以下提示:

主屏幕
MAX Line Exceeded

指令

指令的长度是1字节,按照功能指令集可以分成

等几个类型。指令集列表、功能和范例程序可以参考相关页面。

运算元和子运算元

两个运算元(OP)均为双字节长度,即16-bit。
每个OP由两个单字节,也就是8-bit长度的子运算元(sOP)构成

OP-0OP-1
sOP00sOP10
sOP01sOP11

在程序运行过程中,系统会根据指令以OP或者sOP的方式进行处理。
依据指令的类型与功能定义,OP所代表的含义可能不同。

一些指令在执行时并不需要OP作为参数代入。
比如程序结束指令0F,显示背景指令54等等。
执行这类指令时,OP的值会被忽略。

caution

OP表示的字节在一些情况下,也可能表示非数值类的含义。

延时指令

比如在使用延时指令02时,OP-0OP-1就分别代表延时的数值和单位。

INST_PROG_DELAY编号OP-0sOP10sOP11
延时 1000 毫秒0203E80000
02 03E8 0000

其中03E8对应十进制值1000,而0000则代表延时的单位为毫秒。

LED颜色指令

再以全彩LED灯颜色配置指令E4为例,

E4 02FF 8000

语句表示将02号LED设置为RGB颜色代码FF8000所表示的橙色

RGB
FF8000

所以在本语句中,各sOP值如下表:

sOP00sOP01sOP10sOP11
02FF8000

在输入程序时,我们可以通过组合键+️操作,进行单双字节切换

tip

本文档中,除非特别标注,组合键描述中+左侧的按钮应先于+右侧键按下。