【发布时间】:2014-08-26 08:16:31
【问题描述】:
当我从位于不同 *.c 文件中的 main.c 调用 C 函数时,会引发运行时异常。我捕捉到中断 6(无效的操作码)。我不明白。 gcc 没有给出错误。我多次检查该功能,但没有发现任何错误。因为我是学Kernel开发的,所以机器上没有OS。谢谢。
编辑:我注意到按位运算符不接受变量作为右手表达式。当我使用一个值而不是 off 变量时,它可以工作。我该怎么办?
uint8_t off = OFFSET_FROM_BIT(frame);
frames[idx] |= (0x00000001 << off);
【问题讨论】:
-
从我的角度来看,我也没有看到任何错误。如果您想获得答案,您必须提供更多信息。
-
谢谢。您需要什么样的信息?
标签: kernel