Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试确定如何使用 LC-3 指令集将 16 位(两个字节)字的最后 8 位(即字节)左移。
例如,
0000 0000 1111 1111 -> 1111 1111 0000 0000
要进行左移,您所要做的就是将值添加到自身。创建一个简单的循环来执行此操作 8 次。
就像是
LD R1, count loop LD R0, word ADD R0, R0, R0 ;Left Shift ADD R1, R1, -1 ;Decrement shift counter BRp loop ;We still have shifts, go back to loop HALT count .fill #8
现在了解您在谈论 LC-3,我找到了LC-3b 微架构和这个关于指令集的演示文稿。
你需要实现一个逻辑转变。特别是逻辑左移。有多种方法可以做到这一点。
如果您了解二进制算术,您将能够以简单的方式做到这一点。