我注意到指令集有一个LSL(逻辑左移),r<<<< 1(左移位寄存器1)。我希望能够以任意数字左移。我是否需要在循环中执行此操作,或者是否有一条指令可以为我执行此操作?
我认为只移位1位的原因是进位总是正常,但在我的情况下,我会将8位无符号数位向左移位最多8位,以得到无符号的16位数。所以我觉得我应该没问题?
谢谢,
Ž。
ps完全披露:我是学生,但这只是作业的一小部分。赋值是在没有MUL的情况下实现乘法。我想我应该在一个循环中做多个添加...但我想做一些不同的事情。所以我用位移递归实现它!这只是通向我解决方案的绊脚石之一。