Вы можете найти эти определения макросов в Linux исходном коде :
#define U64_MAX ((u64)~0ULL)
#define S64_MAX ((s64)(U64_MAX >> 1))
#define S64_MIN ((s64)(-S64_MAX - 1))
Это означает:
U64_MAX
имеет все биты установлено значение 1. - Тогда для
S64_MAX
все биты, кроме самого высокого, установлены на 1. - И, наконец,
S64_MIN
будет иметь только самый высокий бит.
U64_MAX: 1111 1111 ... 1111 = 0xFFFF FFFF FFFF FFFF = 18,446,744,073,709,551,615
S64_MAX: 0111 1111 ... 1111 = 0x7FFF FFFF FFFF FFFF = 9,223,372,036,854,775,807
S64_MIN: 1000 0000 ... 0000 = 0x8000 0000 0000 0000 = -9,223,372,036,854,775,808