【发布时间】:2021-12-04 22:05:18
【问题描述】:
本质上,我需要让用户输入一些值 x,执行此操作:
2^x
然后打印出任何值。我不确定解决这个问题的最佳方法是什么。我应该只做循环乘法(比如乘 2 * 2 x 次)还是有其他方法?
【问题讨论】:
-
是的,有更好的方法。想想二进制是如何工作的,以及将二进制中的值加倍有什么作用。
-
也许做一些移位(SLL)
本质上,我需要让用户输入一些值 x,执行此操作:
2^x
然后打印出任何值。我不确定解决这个问题的最佳方法是什么。我应该只做循环乘法(比如乘 2 * 2 x 次)还是有其他方法?
【问题讨论】:
由于二进制到十进制是 2 的幂...假设您没有超过寄存器中的最大空间...您可以使用左移逻辑命令将位从 1 推到 2 的插槽。 ..等等
【讨论】: