9 223 372 036 854 775 807 (nombre)
# 9 223 372 036 854 775 807 (nombre)

Le nombre entier 9 223 372 036 854 776 000 est le nombre de Mersenne $M_{63}$ = $2^{63}$ − 1 donc le nombre double de Mersenne $M_{M6}.$ Sa décomposition en produit de facteurs premiers est $7^2$ · 73 · 127 · 337 · 92737 · 649657, qui est égal à $Φ_3(2)$ · $Φ_7(2)$ · $Φ_9(2)$ · $Φ_{21}(2)$ · $Φ_{63}(2).$

C'est la valeur maximale d'un nombre signé dans certains langages informatiques.

De même, $M_{64}$ est la valeur maximale d'un nombre non signé.

## Présentation

Le nombre 9 223 372 036 854 776 000, équivalent à la valeur hexadécimale $7FFF,FFFF,FFFF,FFFF_{16},$ est la valeur maximale d'un entier signé 64 bits. Il s'agit donc de la valeur maximale pour une variable déclarée comme un entier long (long​, long long int​ ou bigint​) dans de nombreux langages de programmation fonctionnant sur des ordinateurs $modernes^,^,.$ La présence de la valeur peut refléter un débordement d'entier ou une erreur.

Cette valeur est également le plus grand décalage d'adresse signée positive pour les processeurs 64 bits utilisant l'adressage de mémoire à extension de signe (comme l'architecture x86-64, qui appelle cet adressage étendu "forme canonique"). Comme sa valeur est impaire, son apparition peut refléter une adresse mémoire erronée (mal alignée).

Le type de données de bibliothèque standard C time_t, utilisé sur les systèmes d'exploitation tels qu'Unix, est généralement implémenté comme une valeur entière signée 32 ou 64 bits, comptant le nombre de secondes depuis le début de l'époque Unix (minuit UTC du 1er janvier 1970). Les systèmes employant un type 32 bits sont sensibles au problème de l'an 2038, de nombreuses implémentations sont donc passées à un type 64 bits plus large, avec une valeur maximale de $2^{63}$ – 1 correspondant à un nombre de secondes 292 milliards d'années depuis le début de l'époque Unix.

La valeur FILETIME utilisée dans Windows est une valeur de 64 bits correspondant au nombre d'intervalles de 100 nanosecondes depuis minuit UTC du 1er janvier 1601. La dernière heure pouvant être représentée à l'aide de cette valeur est 02: 48: 05.4775807 UTC le 14 septembre 30828 (correspondant à 9 223 372 036 854 776 000 intervalles de 100 nanosecondes depuis le 1er janvier 1601). Au-delà de ce jour, Windows affichera une erreur "heure système invalide" au démarrage.

D'autres systèmes codent l'heure système sous la forme d'un nombre entier signé de 64 bits du nombre de graduations depuis une certaine date . Sur certains systèmes (comme la bibliothèque standard Java), chaque tic est d'une durée d'une milliseconde, ce qui donne une plage de temps utilisable s'étendant sur 292 millions d'années dans le futur.

En C et C ++, cela est disponible en tant que type de données long long signé ou non ; en C #, long. La constante est disponible aussi en tant quelong.Dans le .NET Framework, il est disponible en tant que structure Int64 .

L'équivalent non signé est $M_{64}$ = $2^{64}$ – 1 = 18 446 744 073 709 551 615.

