var v = DateTime.Now.Ticks;
var masksize = sizeof(long)*8 - bitshift;
var mask = (long.MaxValue<<masksize)&v;
Console.WriteLine(Convert.ToString(mask,2).PadLeft(8,'0'));
Console.WriteLine(Convert.ToString(mask&v,2).PadLeft(8,'0'));
Console.WriteLine(Convert.ToString(v,2).PadLeft(8,'0'));
Console.WriteLine(masksize);
Console.WriteLine(v.ToString("X2") + " "+ new DateTime(v).ToString("yyyy-MMM-dd hh:mm:ss.ffffff"));
Console.WriteLine(v.ToString("X2")+" "+ new DateTime(mask|v).ToString("yyyy-MMM-dd hh:mm:ss.ffffff"));
Console.WriteLine(Convert.ToString(v,2).PadLeft(8,'0'));