【图灵完备 Turing Complete】游戏经验攻略分享 Part.5 编程

编程部分的话,第一关会让你输入机器码,这一章节还是比较简单的,因为操作码是固定给出的,只需要根据题意去编写,完成这章目的是为了解锁下面的关卡。


输入,移动COPY之后进行运算,然后输出。

激光炮直瞄:

这里注释写明了,立即数会直接到0号寄存器,相加是1号寄存器和2号相加传入3号。下面代码中给出的那个3就是立即数了,后面是起的汇编别名,看名字应该就知道功能是什么,然后自己对照去取就会复现通关结果。

复制代码
# number immediate -> reg0
# add: reg1 + reg2 -> reg3
# change addr depend on reg4
3
reg0_to_reg1
reg0_to_reg2
add
in_to_reg4
reg4_to_reg5

reg3_to_reg0
reg4_to_reg1
reg5_to_reg2
add
reg3_to_reg4

reg0_to_reg1
1
reg0_to_reg2
sub
6
IFg3_bigger0

reg4_to_reg1
reg5_to_reg2
sub
reg3_to_reg4
reg4_to_out

太空入侵者:

先用上下左右键试探, 然后立即数输入,直接输出。一个一个输出就行了。

密码锁:

逐个数字遍历去试探。需要移动到可以进行判断的寄存器里,之后进行判断大小,主要是考验JMP的运用。

复制代码
0
reg0_to_reg1
1
reg0_to_reg2
reg1_to_reg3
# up is the first judge 
label judge
reg3_to_out
reg3_to_reg1
in_to_reg3

be_big
IFg3_bigger0
be_small
IFg3_equal0
# down is judge small should be add 1
label be_big
sub
judge
jmp

label be_small
add
judge
jmp

时间掩码:

模4取余,那么就可以直接的去和0000 0011做与,那么剩下的就是最后两位了,也就是模4的结果。

复制代码
3
reg0_to_reg2
in_to_reg1
and
reg3_to_out

迷宫:

照着这个写代码就行。

复制代码
label origin
1
goAway
0
goAway
label judgeWhat
in_to_reg1
3
reg0_to_reg2
sub
end
IFg3_equal0
1
reg0_to_reg2
sub
IFwall
IFg3_equal0
origin
jmp

label IFwall
2
goAway
judgeWhat
jmp

label end
4
goAway
相关推荐
FakeOccupational2 小时前
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
网络·游戏
从零开始学习人工智能9 小时前
从游戏到自动驾驶:互联网时代强化学习如何让机器学会自主决策?
人工智能·游戏·自动驾驶
豆沙沙包?21 小时前
2025年- H77-Lc185--45.跳跃游戏II(贪心)--Java版
java·开发语言·游戏
国科安芯1 天前
抗辐照MCU在卫星载荷电机控制器中的实践探索
网络·嵌入式硬件·硬件工程·智能硬件·空间计算
南玖yy1 天前
硬盘寻址全解析:从 CHS 三维迷宫到 LBA 线性王国
汇编·硬件架构·lba模式·chs模式
程序员大辉1 天前
游戏常用运行库合集 | GRLPackage 游戏运行库!
游戏
不伤欣1 天前
游戏设计模式 - 子类沙箱
游戏·unity·设计模式
阿阳微客2 天前
Steam 搬砖项目深度拆解:从抵触到真香的转型之路
前端·笔记·学习·游戏
贝塔实验室2 天前
FPGA 动态重构配置流程
驱动开发·fpga开发·硬件架构·硬件工程·射频工程·fpga·基带工程
m0_552200822 天前
《UE5_C++多人TPS完整教程》学习笔记37 ——《P38 变量复制(Variable Replication)》
c++·游戏·ue5