public static BinaryNumber ShiftRight(this BinaryNumber x, BinaryNumber places) { var result = x; places.Repeat(() => result = result.Rest); return result; }
public static BinaryNumber ShiftLeft(this BinaryNumber x, BinaryNumber places) { var result = x; places.Repeat(() => result = result.Double()); return result; }