0

例子:

int Global;

void outputFunction(void) {
    int local1;
    int local2;
    local1 = 10;
    local2 = 5 + local1;
    Global = local2;
}

在前面的示例中local1,并且local2不在范围内。我正在使用实时软件(从 simulink-coder 生成),我需要找到一种方法将信号(1 到 5000)用作本地信号,以便我可以从高执行或周转时间中受益,但同时在执行代码时,我需要随时访问任何信号。如果我在每个局部变量分配之后添加标签和 nops,我考虑过在运行时覆盖。并在运行时找到一种方法来覆盖这些 nop 以将寄存器移动到范围寄存器,如 %%xmm7。

4

1 回答 1

0

我的回答是,不,除非你有一个带有高端调试器/数据记录器的套接字处理器,它允许完全访问所有寄存器和内存。如果您的应用程序必须生活在恶劣的环境中,这可能会很昂贵,至少需要 10,000 美元,而且价值微乎其微。如果这是生成的代码,我强烈建议不要在代码生成之后对其进行编辑。当您尝试重新创建以前的构建时,这可能会带来各种乐趣,除非您对开发非常自律,这在研发中很少见。:-)

于 2013-06-13T14:34:08.760 回答