
很简单的一关啦
难点在于激光还在飞的时候,是不能够射出下一发的
所以一定要贴脸输出
5 #fire lazer
copy|output
1 #move forward 1 step
copy|output
#↑go to the right place
label normal_loop
3 #wait a second
copy|output
label finish
copy|6*8|3 #see what at front
normal_loop
equal_0 #front is empty
label rat_loop #front is rat
5 #fire lazer
copy|output
finish
always

太空入侵者
OVERTURE架构指令集:
最高两位为操作码,00立即数模式,01算术模式,10复制模式,11条件跳转模式 立即数模式下,1-6位是立即数,写入0号寄存器 算术模式下,1-3位为算术命令,000为OR,001为NAND, 010NOR, 011为AND, 100为ADD, 101为SUB, 110和111为UNUSED 复制模式下,1-3为目的,4-6为源,000-101对应寄存器,110对应输入/输出,111UNUSED 条件跳转模式下,1-3位为条件,000为NEVER, 001为=0, 010为<0, 011为<=0, 100为ALWAYS, 101为!=0, 110为>=0, 111为>0
自定义汇编别名:
copy:10000000(128) input/output:00000110(6) add:01000100(68) equal_0:11000001(193) always:11000100(196)