Skip to content

操作类型指令

包含了变量表, 操作栈控制与 PC 指令计数器控制的指令

其他操作

操作码助记符操作数功能
pushusize_t: 常量表索引将常量表元素压入操作栈
call无操作数栈顶提取引用并发送函数调用请求
nol无操作数空操作 (仅增加 PC 计数)
return无操作数终止当前栈帧执行并提取栈顶元素返回到父栈帧操作栈

变量表操作

操作码助记符操作数功能
loadusize_t: 变量表索引将栈顶元素加载到指定局部变量表槽位
storeusize_t: 变量表索引将局部变量加载到栈顶
load_globalusize_t: 变量表索引将栈顶元素加载到指定全局变量表槽位
store_globalusize_t: 变量表索引将全局变量加载到栈顶
load_array_globalusize_t: 变量表索引
usize_t: 提取长度
将指定栈顶元素以数组形式加载到全局变量表
load_arrayusize_t: 变量表索引
usize_t: 提取长度
将指定栈顶元素以数组形式加载到局部变量表
set_array_globalusize_t : 变量表索引提取栈顶赋值元素和数组索引, 赋值到全局变量
set_arrayusize_t : 变量表索引提取栈顶赋值元素和数组索引, 赋值到局部变量

跳转指令

跳转指令的 pc 计数全部为绝对计数值, 不为指令偏移.
所有跳转只能在当前栈帧进行, 跨栈帧需要 call return 指令.

操作码助记符操作数功能
jumpusize_t: pc计数无条件跳转到指定位置
jump_falseusize_t: pc计数栈顶条件为假跳转

本文档采用 知识共享 署名-相同方式共享 4.0 协议 进行许可。