【发布时间】:2014-02-01 22:00:03
【问题描述】:
我有办法:
def mov destination_register, source
if source == :ax then send("#{destination_register}=", @ax) end
end
其中 destination_register 是一个符号(:ax, :bxm :cx, :dx)。我也有属性:@ax、@bx、@cx、@dx。如果 source 始终是 :ax, :bx, :cx, :dx 之间的符号,我如何将 destination_register 属性的值与 source 的值一起分配?我尝试了发送,但我仍然不知道它是否会起作用。有什么建议吗?
【问题讨论】:
-
没错。该方法是包含在具有 @ax 的类中的模块的一部分
-
我很困惑。在您的问题中,您是说
source是寄存器的名称,例如:ax这意味着mov将像mov(:ax, :bx)一样使用,但在此评论中您是说mov应该与一个值一起使用,例如mov(:ax, 2)? -
我也对您的回复感到困惑,但我假设您的问题是正确的(即
source是寄存器的符号)。我要删除我之前的评论。
标签: ruby methods properties variable-assignment send