当前位置: 首页 > article >正文

【图灵完备 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


http://www.kler.cn/a/315257.html

相关文章:

  • 【MySQL 保姆级教学】事务的自动提交和手动提交(重点)--上(13)
  • 怎么选择香港服务器的线路?解决方案
  • 使用Element UI实现前端分页,及el-table表格跨页选择数据,切换分页保留分页数据,限制多选数量
  • 项目技术栈-解决方案-web3去中心化
  • 宗馥莉的接班挑战:内斗升级,竞品“偷家”
  • SpringBoot实战(三十一)集成iText5,实现RSA签署PDF
  • 【若依RuoYi-Vue | 项目实战】帝可得后台管理系统(二)
  • Linux自主学习篇
  • oracle中NUMBER(1,0)的字段如何映射到c#中
  • 【设计模式-适配】
  • SSC377/D, 5M30 64/128MB, 1Tops1. 支持双摄,甚至三摄;2. 夜视全彩;3. 省内存、省带宽;4. 算力较大,适合新的算法模型;
  • 图像处理与分析
  • Spring的任务调度
  • 怎么在路由器上使用tcpdump抓包
  • Redisson 分布式锁的使用详解
  • Vue3中shallowRef和ref区别
  • 确保在AWS上的资源安全:构建坚不可摧的云安全防线
  • C++ prime plus-2-编程练习
  • 解决 Torch not compiled with CUDA enabled 问题 | MiniCPM3-4B 【应用开发笔记】
  • Android 短信验证码自动填充
  • Unity 设计模式 之 创建型模式 -【单例模式】【原型模式】 【建造者模式】
  • 【力扣】2376. 统计特殊整数
  • Linux:虚拟文件系统/proc和self进程
  • 某招标公告公示搜索引擎爬虫逆向
  • git配置SSH
  • 第二届Apache Flink极客挑战赛冠军比赛攻略_SkyPeaceLL队