加5等于几

根据前面关卡设计,寄存器0存放立即数;ADD指令将寄存器1和寄存器2的值相加放到寄存器3;
在这里插入图片描述
把输入copy到寄存器1中,第一字节的指令按177填;寄存器0是作为立即数写入的元件;
在这里插入图片描述
接着把0号寄存器的值5移动至2号寄存器;
在这里插入图片描述
相加指令
在这里插入图片描述
copy寄存器3中的值到输出,完成输入加5到输出;
在这里插入图片描述

激光炮直瞄

计算圆周长
在这里插入图片描述
输入为半径r,把输入移到寄存器1,把立即数0存到寄存器2;add 指令进行一次r+0,将结果再次移回寄存器2,在于寄存器1里的r相加,累计六次,完成2Πr的操作(6r);
在这里插入图片描述
每条汇编都是8位的2进制,cp|38|2的意思是,cp 3左移三位到源寄存器,移到2号目的寄存器;最后一条将加法结果送到输出,等价于 cp|38|out;

太空入侵者

本关主要用到跳转指令;计算机在跳转模式下,判断三号寄存器的值是否满跳转指令,如果满足,则用0号寄存器的值来覆盖程序计数器;
在这里插入图片描述
前四行,发射激光并先前一步;
label wait_loop,设置一个等待的循环,输入立即数3到寄存器0,并移到输出,让机器人等待一回合;再设置检测面前是否有老鼠的循环;把等待循环的地址写入0号寄存器,输入放到判断寄存器3,若结果是0,则没有老鼠到面前,继续等待循环;若不是0,则面前有老鼠,发射激光并输出,此时再清空寄存器3,等待下一个状态;清空3后,下一次跳转会回到rat_loop,继续判断;

密码锁

要求输出一个正确的密码,提示说最简单的操作是覆盖全过程,从0开始每次加1,直到输出正确结果。
在这里插入图片描述
这种方式没有用到提示,大于密码真实值输入为1,小于真实值输入为0;下面做优化修改
在这里插入图片描述
在这里插入图片描述

时间掩码

在这里插入图片描述
小提示
在这里插入图片描述
按照提示,快速找到低两位的值即可,则用输入与上0‘b0000_0011,即3,实现低两位;
在这里插入图片描述

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐