public static Offset Diff(Offset a, Offset b) { // assume a <= b int bytes = b._bytes - a._bytes; int bits = b._bits - a._bits; if (bits < 0) { bits += 8; bytes--; } return new Offset(bytes, bits); }