也许问题就是这么简单...在枚举和位操作
有一个枚举定义:
enum uop_flags_enum {
FICOMP = 0x001,
FLCOMP = 0x002,
FFCOMP = 0x004,
FMEM = 0x008,
FLOAD = 0x010,
FSTORE = 0x020,
FCTRL = 0x040,
FCALL = 0x080,
FRET = 0x100,
FCOND = 0x200
};
某处在代码中有:
if (uop->flags & FCTRL)
当这条件是真的,当它不是?
uop-> flags = 0x140 =>是否为真? – mahmood
是因为0x140&0x040的结果是0x040。 – Lou
有关按位运算的更多详细信息,请参见http://en.wikipedia.org/wiki/Bitwise_operation。 – Lou