Bug sur type Quad pour les version de PB x64

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Lord Nelson
Messages : 355
Inscription : dim. 01/déc./2013 15:29

Bug sur type Quad pour les version de PB x64

Message par Lord Nelson »

Bonjour,

Y à t-il un bug avec ce code ?
Le résultat devrais être je crois 4294967296 non ?

J'ai du zappé quelque chose s'en doute :?
Je travail avec 5.31 x 64 bits.

Code : Tout sélectionner

Rouge = 0
Vert = 0
Bleu = 0
Alpha = 0
Omegat = 1

A.Q = Rouge + (Vert * 256) + (Bleu * 65536) + (Alpha * 16777216) + (Omegat * 4294967296)
Debug A.Q
Avatar de l’utilisateur
GallyHC
Messages : 1708
Inscription : lun. 17/déc./2007 12:44

Re: Bug ?

Message par GallyHC »

Bonjour,

A regarder cela je suis sceptique :

Code : Tout sélectionner

Define ivartest.i = 1

Debug ivartest

Debug (Omegat * 4294967296)
Debug (1 * 4294967296)


Cordialement,
GallyHC
Configuration : Tower: Windows 10 (Processeur: i7 "x64") (Mémoire: 16Go) (GeForce GTX 760 - 2Go) - PureBasic 5.72 (x86 et x64)
Lord Nelson
Messages : 355
Inscription : dim. 01/déc./2013 15:29

Re: Bug ?

Message par Lord Nelson »

Tu veux dire:

Code : Tout sélectionner

Define ivartest.i = 1

Debug ivartest

Debug (ivartest * 4294967296)
Debug (1 * 4294967296)
PAPIPP
Messages : 534
Inscription : sam. 23/févr./2008 17:58

Re: Bug ?

Message par PAPIPP »

Bonjour Lord Nelson

Il ni a pas de bug.
les type par défaut sont .l de 4 octets il faut des types .q de 8 octets 4294967296 dépasse la capacité du type .l.

Long .l 4 bytes -2147483648 to +2147483647
Quad .q 8 bytes -9223372036854775808 to +9223372036854775807 ou ((2^63)-1)

Comme cela.

Code : Tout sélectionner

Rouge.q=0
Vert.q=0
Bleu.q=0
Alpha.q=0
Omegat.q=1

A.Q=Rouge+(Vert*256)+(Bleu*65536)+(Alpha*16777216)+(Omegat*4294967296)
Debug A.Q
A+
Il est fort peu probable que les mêmes causes ne produisent pas les mêmes effets.(Einstein)
Et en logique positive cela donne.
Il est très fortement probable que les mêmes causes produisent les mêmes effets.
Lord Nelson
Messages : 355
Inscription : dim. 01/déc./2013 15:29

Re: Bug ?

Message par Lord Nelson »

Bonjour PAPIPP,
PAPIPP a écrit :Bonjour Lord Nelson

Il ni a pas de bug.
les type par défaut sont .l de 4 octets il faut des types .q de 8 octets 4294967296 dépasse la capacité du type .l.

Long .l 4 bytes -2147483648 to +2147483647
Quad .q 8 bytes -9223372036854775808 to +9223372036854775807 ou ((2^63)-1)

Comme cela.

Code : Tout sélectionner

Rouge.q=0
Vert.q=0
Bleu.q=0
Alpha.q=0
Omegat.q=1

A.Q=Rouge+(Vert*256)+(Bleu*65536)+(Alpha*16777216)+(Omegat*4294967296)
Debug A.Q
A+
Ah oui, c'est sur, ton code là il marche trop bien :roll:
J'y est pensé figure toi et le résultat, bha ta qua tester ton code avent de le mettre sur le forum tien, ça t'apprendra :wink:

Non c'est pas méchant mais quand tu poste un code, assure toi qu'il fonctionne car là ta crédibilité en prends un bon gros coup :mrgreen:
Merci et le prends pas mal hein :wink: , c'est juste que ça me fais un peut rager se genre de truc :mrgreen:
Désoler si j'ai été un peut crue ou maladroits, c'est pas méchant :)

Ya bien un bug je pense.
Avatar de l’utilisateur
TazNormand
Messages : 1297
Inscription : ven. 27/oct./2006 12:19
Localisation : Calvados (14)

Re: Bug ?

Message par TazNormand »

Je confirme ce que dis Lord Nelson, d'autant qu'un simple :

Code : Tout sélectionner

Omegat.q = 1
A.q = (Omegat * 4294967296)
b.d = (Omegat * 4294967296)

Debug A
Debug b
Donne aussi 0 (Sous PB 5.22, 5.23, 5.30 et 5.31) pour les Quads, et bien 4294967296.0 pour le Double

Je crée un topic dans Bugs sur le forum Anglais
Image
Image
PAPIPP
Messages : 534
Inscription : sam. 23/févr./2008 17:58

Re: Bug ?

Message par PAPIPP »

Bonjour à tous.

Les arguments "ad-hominem" ne sont jamais bons.
Un peu de réserve et de respect ne sont pas de trop ici.
Chez moi sur xp sp3 32 bits.

le résultat est sur le test de TazNormand :

Code : Tout sélectionner

Omegat.q = 1
A.q = (Omegat * 4294967296)
b.d = (Omegat * 4294967296)

Debug A
Debug b
Résultats en 32 bits
4294967296
4294967296.0

Je confirme il ni a pas de BUG en 32 bits
Testez en 32 bits.
Dernière modification par PAPIPP le sam. 20/déc./2014 0:01, modifié 1 fois.
Il est fort peu probable que les mêmes causes ne produisent pas les mêmes effets.(Einstein)
Et en logique positive cela donne.
Il est très fortement probable que les mêmes causes produisent les mêmes effets.
Avatar de l’utilisateur
raven
Messages : 222
Inscription : jeu. 06/janv./2005 15:45

Re: Bug ?

Message par raven »

chez moi c'a donne ça:
pb_5.24 x86 lts:

Code : Tout sélectionner

4294967296
4294967296.0
Pb 5.31x86:

Code : Tout sélectionner

4294967296
4294967296.0
Pb 5.24 x64:

Code : Tout sélectionner

0
4294967296.0
Pb 5.31 x64:

Code : Tout sélectionner

0
4294967296.0
Pb5.24 Lts/5.31 Windows 7 64 nvidia 560 ti E8500 8g ram
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Bug ?

Message par falsam »

*Supprimé
Dernière modification par falsam le mar. 09/déc./2014 13:38, modifié 1 fois.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Lord Nelson
Messages : 355
Inscription : dim. 01/déc./2013 15:29

Re: Bug ?

Message par Lord Nelson »

Bonjour,

PAPIPP, je te fais mes sincères excuses, c'est vraie que j'ai été un peut sec surtout que, en faite il avais pas raison :oops:
Ceci me servira de leçon, encore désoler :oops:
J'ai été maladroit.
Avatar de l’utilisateur
TazNormand
Messages : 1297
Inscription : ven. 27/oct./2006 12:19
Localisation : Calvados (14)

Re: Bug ?

Message par TazNormand »

Oui, après coup, je viens de m'apercevoir que le problème n'intervenait uniquement sur les versions x64, et que ça fonctionne nickel sur x86. :oops:

Fred, si jamais tu passes par là, un petit commentaire serait le bienvenu :)
Image
Image
Avatar de l’utilisateur
GallyHC
Messages : 1708
Inscription : lun. 17/déc./2007 12:44

Re: Bug sur type Quad pour les version de PB x64

Message par GallyHC »

Bonjour,

Oui je voulais bien faire ce code :

Code : Tout sélectionner

Define ivartest.i = 1

Debug ivartest

Debug (ivartest * 4294967296)
Debug (1 * 4294967296)
Petite erreur a la copie du a un "ctr-z". Testé sur x32 (ok) et sur x64 (pas bon) et sur pb 5.31.

Cordialement,
GallyHC
Configuration : Tower: Windows 10 (Processeur: i7 "x64") (Mémoire: 16Go) (GeForce GTX 760 - 2Go) - PureBasic 5.72 (x86 et x64)
Lord Nelson
Messages : 355
Inscription : dim. 01/déc./2013 15:29

Re: Bug sur type Quad pour les version de PB x64

Message par Lord Nelson »

Alors c'est cool ça car je viens de soulever un bug, c'est trop fort ça et c'est la toute première fois ^^
Répondre