Bonjour,
Je me permets de vous solliciter sur l'allocation mémoire de variables en VBA et notamment sur les types de variables Integer & Currency.
I. Côté Integer :
Valeurs possibles de -32 768 à +32 767 = 65 536 (en prenant en compte le 0)
65 536 = 2^16
1 octet = 8 bits => codage des Integer sur 2 octets
II. Côté Currency
Valeurs possibles de Valeurs de -922 337 203 685 477.5808 à +922 337 203 685 477.5807
En appliquant la même méthode j'effectue les calculs suivants :
A. Valeurs positives :
+ Element 0 : => 1 valeur
+ Element de 0.01 à 922 337 203 685 477.0000 :
=> (922 337 203 685 477 x 10 000) valeurs
+ Element de 922 337 203 685 477.0001 à 922 337 203 685 477.5807 :
=> 5 807 valeurs
B. Valeurs négatives :
+ Element de -(0.01 à 922 337 203 685 477) :
=> (922 337 203 685 477 x 10 000) valeurs
+ Element de -(922 337 203 685 477.0001 à 922 337 203 685 477.5808) :
=> 5 808 valeurs
Au total :
922 337 203 685 477 + 922 337 203 685 477 = 1 844 674 407 370 954
1 844 674 407 370 954 x 1 0000 = 18 446 744 073 709 540 000
18 446 744 073 709 540 000 + (5 808 x 2) = 18 446 744 073 709 540 000 + 11 616
= 18 446 744 073 709 551 616
Le chiffre au-dessus est-il égal à 2^64 car j'ai du mal à avoir le calcul exact ?
Mon raisonnement est-il correct ?
Est ce que j'aurais raté un concept ?
Merci d'avance de vos éclaircissements.
Cordilalement
ElGringo1234567 qui n'en finit pas d'apprendre ....
Je me permets de vous solliciter sur l'allocation mémoire de variables en VBA et notamment sur les types de variables Integer & Currency.
I. Côté Integer :
Valeurs possibles de -32 768 à +32 767 = 65 536 (en prenant en compte le 0)
65 536 = 2^16
1 octet = 8 bits => codage des Integer sur 2 octets
II. Côté Currency
Valeurs possibles de Valeurs de -922 337 203 685 477.5808 à +922 337 203 685 477.5807
En appliquant la même méthode j'effectue les calculs suivants :
A. Valeurs positives :
+ Element 0 : => 1 valeur
+ Element de 0.01 à 922 337 203 685 477.0000 :
=> (922 337 203 685 477 x 10 000) valeurs
+ Element de 922 337 203 685 477.0001 à 922 337 203 685 477.5807 :
=> 5 807 valeurs
B. Valeurs négatives :
+ Element de -(0.01 à 922 337 203 685 477) :
=> (922 337 203 685 477 x 10 000) valeurs
+ Element de -(922 337 203 685 477.0001 à 922 337 203 685 477.5808) :
=> 5 808 valeurs
Au total :
922 337 203 685 477 + 922 337 203 685 477 = 1 844 674 407 370 954
1 844 674 407 370 954 x 1 0000 = 18 446 744 073 709 540 000
18 446 744 073 709 540 000 + (5 808 x 2) = 18 446 744 073 709 540 000 + 11 616
= 18 446 744 073 709 551 616
Le chiffre au-dessus est-il égal à 2^64 car j'ai du mal à avoir le calcul exact ?
Mon raisonnement est-il correct ?
Est ce que j'aurais raté un concept ?
Merci d'avance de vos éclaircissements.
Cordilalement
ElGringo1234567 qui n'en finit pas d'apprendre ....