static public BitField operator& (BitField a, BitField b) { if(a.Width != b.Width) throw new BitFieldException("width not match"); ulong val = a.Value & b.Value; return new BitFieldImmediate(a.Msb, a.Lsb, val); }