试用、检查、修改

二十个完整示例

将示例载入实验室,逐步执行,再修改数值。每个示例包含预期输出。

你好,世界

你的第一个表情符号程序!载入并输出一个数字。

入门 · 基础

📥 42
🖨️
⏹️

迷你计算器

执行多个算术运算。

入门 · 基础

📥 100
➕ 50
🖨️
➖ 30
🖨️
✖️ 2
🖨️
➗ 4
🖨️
⏹️

输出: 150, 120, 240, 60

打开“迷你计算器” →

倒计时

用循环从 10 倒数到 1。

入门 · 基础

LOAD 10
again: PRINT
SUB 1
JUMP_IF_ZERO done
JUMP again
done: HALT

输出: 10, 9, 8, 7, 6, 5, 4, 3, 2, 1

打开“倒计时” →

斐波那契数列

用寄存器和有界循环生成八个斐波那契数。

中级 · 算法

LOAD 1 R1
LOAD 1 R2
LOOP 8
LOAD R1
PRINT
COPY R0 R3
ADD R2
COPY R2 R1
COPY R0 R2
RETURN
HALT

输出: 1, 1, 2, 3, 5, 8, 13, 21

打开“斐波那契数列” →

二的幂

输出 2⁰ 到 2⁷:1、2、4、8、16、32、64、128。

中级 · 算法

📥 1
🖨️
✖️ 2
🖨️
✖️ 2
🖨️
✖️ 2
🖨️
✖️ 2
🖨️
✖️ 2
🖨️
✖️ 2
🖨️
✖️ 2
🖨️
⏹️

输出: 1, 2, 4, 8, 16, 32, 64, 128

打开“二的幂” →

内存操作

保存两个字节,清零 R0,再实际从内存读回。

中级 · 基础

LOAD 42
STORE 0
LOAD 99
STORE 1
LOAD 0
LOAD [0]
PRINT
LOAD [1]
PRINT
HALT

偶数还是奇数

用 MOD 检查数字是偶数还是奇数。

中级 · 算法

📥 7
📊 2
🖨️
📥 8
📊 2
🖨️
⏹️

栈操作

在栈中压入和弹出数值。

高级 · 进阶

📥 10
⬆️
📥 20
⬆️
📥 30
⬆️
⬇️
🖨️
⬇️
🖨️
⬇️
🖨️
⏹️

输出: 30, 20, 10

打开“栈操作” →

按位魔法

演示 AND、OR 和 XOR 运算。

高级 · 进阶


📥 12
🔀 10
🖨️
📥 12
🔃 3
🖨️
📥 12
🔄 15
🖨️
📥 255
❌
🖨️
⏹️

输出: 8, 15, 3, -256

打开“按位魔法” →

从一加到 N

计算 1 到 10 的总和。

入门 · 算法

LOAD 1 R1
LOAD 0 R2
LOOP 10
LOAD R2
ADD R1
COPY R0 R2
LOAD R1
ADD 1
COPY R0 R1
RETURN
LOAD R2
PRINT
HALT

阶乘计算器

用循环计算 5!(5 的阶乘为 120)。

中级 · 算法

LOAD 5 R1
LOAD 1 R2
LOOP 5
LOAD R2
MUL R1
COPY R0 R2
LOAD R1
SUB 1
COPY R0 R1
RETURN
LOAD R2
PRINT
HALT

两个数字的最大值

用有符号 32 位符号掩码,选择两个较小非负整数中的较大值。

入门 · 基础

LOAD 15 R1
LOAD 25 R2
LOAD R1
SUB R2
AND -2147483648
JUMP_IF_ZERO first
LOAD R2
JUMP show
first: LOAD R1
show: PRINT
HALT

交换两个值

用栈交换 R1 和 R2 的值。

入门 · 基础


📥 10
📋 R0 R1
📥 20
📋 R0 R2
📥 R1
🖨️
📥 R2
🖨️
📥 R1
⬆️
📥 R2
📋 R0 R1
⬇️
📋 R0 R2
📥 R1
🖨️
📥 R2
🖨️
⏹️

输出: 10, 20, 20, 10

打开“交换两个值” →

绝对值

用符号掩码求较小有符号 32 位整数的绝对值。

入门 · 算法

LOAD -42 R1
LOAD R1
AND -2147483648
JUMP_IF_ZERO positive
LOAD R1
MUL -1
JUMP show
positive: LOAD R1
show: PRINT
HALT

先倒数,再顺数

从 3 数到 1,再从 1 数到 3。

入门 · 基础


📥 3
🖨️
➖ 1
❓ 5
⏭️ 1
📥 1
🖨️
➕ 1
⚖️ 4
❓ 11
⏭️ 6
⏹️

移位等效乘法

用加法将 7 加倍两次,等效于乘以 4。

中级 · 进阶


📥 7
📋 R0 R1
📥 R1
➕ R1
📋 R0 R1
📥 R1
➕ R1
📋 R0 R1
📥 R1
🖨️
⏹️

三角数

输出前五个三角数:1、3、6、10、15。

中级 · 算法

LOAD 0 R2
LOAD 1 R1
LOOP 5
LOAD R2
ADD R1
COPY R0 R2
PRINT
LOAD R1
ADD 1
COPY R0 R1
RETURN
HALT

输出: 1, 3, 6, 10, 15

打开“三角数” →

寄存器级联

将数值依次复制到全部八个寄存器。

中级 · 进阶


📥 42
📋 R0 R1
📋 R1 R2
📋 R2 R3
📋 R3 R4
📋 R4 R5
📋 R5 R6
📋 R6 R7
📥 R7
🖨️
⏹️