Problème de déclaration de variable de type byte signé, comme suit:
dim x as byte
x = 0
x = x - 1 ' ---> ERREUR DEPASSEMENT CAPACITE
???
Normalement un type byte peut être:
signé (signed) (-126 à 127)
ou
non signé (unsigned) (0 à 255)
Où qu'est l'erreur svp ???
--
Merci, @+, bye, Joe : ng75@noos.fr
----------------------------------------------------------
Avec une hache, celui qui tient le manche a toujours raison.
----------------------------------------------------------
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
ng
Salut,
L'erreur est qu'en VB le type byte n'est pas signé contrairement à l'integer et au long par exemple, ta variable ne peut donc prendre que des valeurs comprises dans l'interval [0,255]. Par ailleurs cela parait logique, en effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker du binaire.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
"le_troll" a écrit dans le message de news: #JEz#
Bonjour,
Problème de déclaration de variable de type byte signé, comme suit: dim x as byte x = 0 x = x - 1 ' ---> ERREUR DEPASSEMENT CAPACITE ???
Normalement un type byte peut être: signé (signed) (-126 à 127) ou non signé (unsigned) (0 à 255)
Où qu'est l'erreur svp ??? -- Merci, @+, bye, Joe : ---------------------------------------------------------- Avec une hache, celui qui tient le manche a toujours raison. ----------------------------------------------------------
Salut,
L'erreur est qu'en VB le type byte n'est pas signé contrairement à l'integer
et au long par exemple, ta variable ne peut donc prendre que des valeurs
comprises dans l'interval [0,255]. Par ailleurs cela parait logique, en
effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker du
binaire.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
"le_troll" <le_trol@paris.fr> a écrit dans le message de news:
#JEz#hx9DHA.2308@TK2MSFTNGP11.phx.gbl...
Bonjour,
Problème de déclaration de variable de type byte signé, comme suit:
dim x as byte
x = 0
x = x - 1 ' ---> ERREUR DEPASSEMENT CAPACITE
???
Normalement un type byte peut être:
signé (signed) (-126 à 127)
ou
non signé (unsigned) (0 à 255)
Où qu'est l'erreur svp ???
--
Merci, @+, bye, Joe : ng75@noos.fr
----------------------------------------------------------
Avec une hache, celui qui tient le manche a toujours raison.
----------------------------------------------------------
L'erreur est qu'en VB le type byte n'est pas signé contrairement à l'integer et au long par exemple, ta variable ne peut donc prendre que des valeurs comprises dans l'interval [0,255]. Par ailleurs cela parait logique, en effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker du binaire.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
"le_troll" a écrit dans le message de news: #JEz#
Bonjour,
Problème de déclaration de variable de type byte signé, comme suit: dim x as byte x = 0 x = x - 1 ' ---> ERREUR DEPASSEMENT CAPACITE ???
Normalement un type byte peut être: signé (signed) (-126 à 127) ou non signé (unsigned) (0 à 255)
Où qu'est l'erreur svp ??? -- Merci, @+, bye, Joe : ---------------------------------------------------------- Avec une hache, celui qui tient le manche a toujours raison. ----------------------------------------------------------
le_troll
Ouais, merci, ok, le byte n'est pas signé et est positif...
Ben tu dis que l'integer est signé, il me semble qu'il prend 2 octets lui, et tous les bits allumés ça fait 65.000 (et quelques), il ne reste aucun bit pour le signer, alors en suivant ton raisonnement, je ne vois pas non plus où tu mets le bit de signe (le dernier généralement), comme dans moult systèmes, ce n'est pas la taille réellement occupée en mémoire qui est annoncée pour la programmation, sinon l'integer à 65.000 prenant tous les bits de son Word, il lui faut au moins un quartet en plus pour signer... -- Merci, @+, bye, Joe : ---------------------------------------------------------- Avec une hache, celui qui tient le manche a toujours raison. ----------------------------------------------------------
"ng" a écrit dans le message de news:
Salut,
L'erreur est qu'en VB le type byte n'est pas signé contrairement à
l'integer
et au long par exemple, ta variable ne peut donc prendre que des valeurs comprises dans l'interval [0,255]. Par ailleurs cela parait logique, en effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker du binaire.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
"le_troll" a écrit dans le message de news: #JEz# > Bonjour, > > Problème de déclaration de variable de type byte signé, comme suit: > dim x as byte > x = 0 > x = x - 1 ' ---> ERREUR DEPASSEMENT CAPACITE > ??? > > Normalement un type byte peut être: > signé (signed) (-126 à 127) > ou > non signé (unsigned) (0 à 255) > > Où qu'est l'erreur svp ??? > -- > Merci, @+, bye, Joe : > ---------------------------------------------------------- > Avec une hache, celui qui tient le manche a toujours raison. > ---------------------------------------------------------- > > > >
Ouais, merci, ok, le byte n'est pas signé et est positif...
Ben tu dis que l'integer est signé, il me semble qu'il prend 2 octets
lui, et tous les bits allumés ça fait 65.000 (et quelques), il ne reste
aucun bit pour le signer, alors en suivant ton raisonnement, je ne vois pas
non plus où tu mets le bit de signe (le dernier généralement), comme dans
moult systèmes, ce n'est pas la taille réellement occupée en mémoire qui est
annoncée pour la programmation, sinon l'integer à 65.000 prenant tous les
bits de son Word, il lui faut au moins un quartet en plus pour signer...
--
Merci, @+, bye, Joe : ng75@noos.fr
----------------------------------------------------------
Avec une hache, celui qui tient le manche a toujours raison.
----------------------------------------------------------
"ng" <ng@ngsoft-fr.com> a écrit dans le message de news:
eU5l3ox9DHA.1768@TK2MSFTNGP09.phx.gbl...
Salut,
L'erreur est qu'en VB le type byte n'est pas signé contrairement à
l'integer
et au long par exemple, ta variable ne peut donc prendre que des valeurs
comprises dans l'interval [0,255]. Par ailleurs cela parait logique, en
effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker du
binaire.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
"le_troll" <le_trol@paris.fr> a écrit dans le message de news:
#JEz#hx9DHA.2308@TK2MSFTNGP11.phx.gbl...
> Bonjour,
>
> Problème de déclaration de variable de type byte signé, comme suit:
> dim x as byte
> x = 0
> x = x - 1 ' ---> ERREUR DEPASSEMENT CAPACITE
> ???
>
> Normalement un type byte peut être:
> signé (signed) (-126 à 127)
> ou
> non signé (unsigned) (0 à 255)
>
> Où qu'est l'erreur svp ???
> --
> Merci, @+, bye, Joe : ng75@noos.fr
> ----------------------------------------------------------
> Avec une hache, celui qui tient le manche a toujours raison.
> ----------------------------------------------------------
>
>
>
>
Ouais, merci, ok, le byte n'est pas signé et est positif...
Ben tu dis que l'integer est signé, il me semble qu'il prend 2 octets lui, et tous les bits allumés ça fait 65.000 (et quelques), il ne reste aucun bit pour le signer, alors en suivant ton raisonnement, je ne vois pas non plus où tu mets le bit de signe (le dernier généralement), comme dans moult systèmes, ce n'est pas la taille réellement occupée en mémoire qui est annoncée pour la programmation, sinon l'integer à 65.000 prenant tous les bits de son Word, il lui faut au moins un quartet en plus pour signer... -- Merci, @+, bye, Joe : ---------------------------------------------------------- Avec une hache, celui qui tient le manche a toujours raison. ----------------------------------------------------------
"ng" a écrit dans le message de news:
Salut,
L'erreur est qu'en VB le type byte n'est pas signé contrairement à
l'integer
et au long par exemple, ta variable ne peut donc prendre que des valeurs comprises dans l'interval [0,255]. Par ailleurs cela parait logique, en effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker du binaire.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
"le_troll" a écrit dans le message de news: #JEz# > Bonjour, > > Problème de déclaration de variable de type byte signé, comme suit: > dim x as byte > x = 0 > x = x - 1 ' ---> ERREUR DEPASSEMENT CAPACITE > ??? > > Normalement un type byte peut être: > signé (signed) (-126 à 127) > ou > non signé (unsigned) (0 à 255) > > Où qu'est l'erreur svp ??? > -- > Merci, @+, bye, Joe : > ---------------------------------------------------------- > Avec une hache, celui qui tient le manche a toujours raison. > ---------------------------------------------------------- > > > >
François Picalausa
Bonjour/soir,
Dim MyInt as Integer MyInt = 32768 'Erreur dépassement de capacité...
L'integer (codé sur deux bytes) est signé et a un champ allant de -32768 à 32767 Pour tester si un entier est positif: 2000 And &h8000
Mais l'Integer prend deux byte. Et il ne faut pas de bit supplémentaire pour le signe. Par conséquent, si une API demande un uint, que tu veux lui passer une valeur supérieure à 32767, il suffira de lui passer une valeur négative (selon la représentation VB)... pour 65535, -1 conviendra. Mais le plus simple reste la notation hexadécimale.. enfin, je trouve :-)
Ouais, merci, ok, le byte n'est pas signé et est positif...
Ben tu dis que l'integer est signé, il me semble qu'il prend 2 octets lui, et tous les bits allumés ça fait 65.000 (et quelques), il ne reste aucun bit pour le signer, alors en suivant ton raisonnement, je ne vois pas non plus où tu mets le bit de signe (le dernier généralement), comme dans moult systèmes, ce n'est pas la taille réellement occupée en mémoire qui est annoncée pour la programmation, sinon l'integer à 65.000 prenant tous les bits de son Word, il lui faut au moins un quartet en plus pour signer...
Bonjour/soir,
Dim MyInt as Integer
MyInt = 32768 'Erreur dépassement de capacité...
L'integer (codé sur deux bytes) est signé et a un champ allant de -32768 à
32767
Pour tester si un entier est positif:
2000 And &h8000
Mais l'Integer prend deux byte.
Et il ne faut pas de bit supplémentaire pour le signe.
Par conséquent, si une API demande un uint, que tu veux lui passer une
valeur supérieure à 32767, il suffira de lui passer une valeur négative
(selon la représentation VB)... pour 65535, -1 conviendra.
Mais le plus simple reste la notation hexadécimale.. enfin, je trouve :-)
"le_troll" <le_trol@paris.fr> a écrit dans le message de
news:OgAyz1x9DHA.3452@TK2MSFTNGP09.phx.gbl
Ouais, merci, ok, le byte n'est pas signé et est positif...
Ben tu dis que l'integer est signé, il me semble qu'il prend 2
octets lui, et tous les bits allumés ça fait 65.000 (et quelques), il
ne reste aucun bit pour le signer, alors en suivant ton raisonnement,
je ne vois pas non plus où tu mets le bit de signe (le dernier
généralement), comme dans moult systèmes, ce n'est pas la taille
réellement occupée en mémoire qui est annoncée pour la programmation,
sinon l'integer à 65.000 prenant tous les bits de son Word, il lui
faut au moins un quartet en plus pour signer...
Dim MyInt as Integer MyInt = 32768 'Erreur dépassement de capacité...
L'integer (codé sur deux bytes) est signé et a un champ allant de -32768 à 32767 Pour tester si un entier est positif: 2000 And &h8000
Mais l'Integer prend deux byte. Et il ne faut pas de bit supplémentaire pour le signe. Par conséquent, si une API demande un uint, que tu veux lui passer une valeur supérieure à 32767, il suffira de lui passer une valeur négative (selon la représentation VB)... pour 65535, -1 conviendra. Mais le plus simple reste la notation hexadécimale.. enfin, je trouve :-)
Ouais, merci, ok, le byte n'est pas signé et est positif...
Ben tu dis que l'integer est signé, il me semble qu'il prend 2 octets lui, et tous les bits allumés ça fait 65.000 (et quelques), il ne reste aucun bit pour le signer, alors en suivant ton raisonnement, je ne vois pas non plus où tu mets le bit de signe (le dernier généralement), comme dans moult systèmes, ce n'est pas la taille réellement occupée en mémoire qui est annoncée pour la programmation, sinon l'integer à 65.000 prenant tous les bits de son Word, il lui faut au moins un quartet en plus pour signer...
le_troll
Ah ok, 32.000 et le dernier bit en signe, ok, là ça colle...
-- Merci, @+, bye, Joe : ---------------------------------------------------------- Avec une hache, celui qui tient le manche a toujours raison. ----------------------------------------------------------
"François Picalausa" a écrit dans le message de news:
Bonjour/soir,
Dim MyInt as Integer MyInt = 32768 'Erreur dépassement de capacité...
L'integer (codé sur deux bytes) est signé et a un champ allant de -32768 à 32767 Pour tester si un entier est positif: 2000 And &h8000
Mais l'Integer prend deux byte. Et il ne faut pas de bit supplémentaire pour le signe. Par conséquent, si une API demande un uint, que tu veux lui passer une valeur supérieure à 32767, il suffira de lui passer une valeur négative (selon la représentation VB)... pour 65535, -1 conviendra. Mais le plus simple reste la notation hexadécimale.. enfin, je trouve :-)
"le_troll" a écrit dans le message de news: > Ouais, merci, ok, le byte n'est pas signé et est positif... > > Ben tu dis que l'integer est signé, il me semble qu'il prend 2 > octets lui, et tous les bits allumés ça fait 65.000 (et quelques), il > ne reste aucun bit pour le signer, alors en suivant ton raisonnement, > je ne vois pas non plus où tu mets le bit de signe (le dernier > généralement), comme dans moult systèmes, ce n'est pas la taille > réellement occupée en mémoire qui est annoncée pour la programmation, > sinon l'integer à 65.000 prenant tous les bits de son Word, il lui > faut au moins un quartet en plus pour signer...
Ah ok, 32.000 et le dernier bit en signe, ok, là ça colle...
--
Merci, @+, bye, Joe : ng75@noos.fr
----------------------------------------------------------
Avec une hache, celui qui tient le manche a toujours raison.
----------------------------------------------------------
"François Picalausa" <fpicalausa@chez.com> a écrit dans le message de news:
ek1pDKy9DHA.2368@TK2MSFTNGP11.phx.gbl...
Bonjour/soir,
Dim MyInt as Integer
MyInt = 32768 'Erreur dépassement de capacité...
L'integer (codé sur deux bytes) est signé et a un champ allant de -32768 à
32767
Pour tester si un entier est positif:
2000 And &h8000
Mais l'Integer prend deux byte.
Et il ne faut pas de bit supplémentaire pour le signe.
Par conséquent, si une API demande un uint, que tu veux lui passer une
valeur supérieure à 32767, il suffira de lui passer une valeur négative
(selon la représentation VB)... pour 65535, -1 conviendra.
Mais le plus simple reste la notation hexadécimale.. enfin, je trouve :-)
"le_troll" <le_trol@paris.fr> a écrit dans le message de
news:OgAyz1x9DHA.3452@TK2MSFTNGP09.phx.gbl
> Ouais, merci, ok, le byte n'est pas signé et est positif...
>
> Ben tu dis que l'integer est signé, il me semble qu'il prend 2
> octets lui, et tous les bits allumés ça fait 65.000 (et quelques), il
> ne reste aucun bit pour le signer, alors en suivant ton raisonnement,
> je ne vois pas non plus où tu mets le bit de signe (le dernier
> généralement), comme dans moult systèmes, ce n'est pas la taille
> réellement occupée en mémoire qui est annoncée pour la programmation,
> sinon l'integer à 65.000 prenant tous les bits de son Word, il lui
> faut au moins un quartet en plus pour signer...
Ah ok, 32.000 et le dernier bit en signe, ok, là ça colle...
-- Merci, @+, bye, Joe : ---------------------------------------------------------- Avec une hache, celui qui tient le manche a toujours raison. ----------------------------------------------------------
"François Picalausa" a écrit dans le message de news:
Bonjour/soir,
Dim MyInt as Integer MyInt = 32768 'Erreur dépassement de capacité...
L'integer (codé sur deux bytes) est signé et a un champ allant de -32768 à 32767 Pour tester si un entier est positif: 2000 And &h8000
Mais l'Integer prend deux byte. Et il ne faut pas de bit supplémentaire pour le signe. Par conséquent, si une API demande un uint, que tu veux lui passer une valeur supérieure à 32767, il suffira de lui passer une valeur négative (selon la représentation VB)... pour 65535, -1 conviendra. Mais le plus simple reste la notation hexadécimale.. enfin, je trouve :-)
"le_troll" a écrit dans le message de news: > Ouais, merci, ok, le byte n'est pas signé et est positif... > > Ben tu dis que l'integer est signé, il me semble qu'il prend 2 > octets lui, et tous les bits allumés ça fait 65.000 (et quelques), il > ne reste aucun bit pour le signer, alors en suivant ton raisonnement, > je ne vois pas non plus où tu mets le bit de signe (le dernier > généralement), comme dans moult systèmes, ce n'est pas la taille > réellement occupée en mémoire qui est annoncée pour la programmation, > sinon l'integer à 65.000 prenant tous les bits de son Word, il lui > faut au moins un quartet en plus pour signer...
Zoury
> Par ailleurs cela parait logique, en effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker du binaire.
je n'ai pas compris cette phrase... *tous* les types de données sont stockée en binaire.. il sont simplement *affiché* sous une autre base (décimal) afin de les rendre plus intelligible pour l'homme.
Merci de poster les réponses au groupe afin d'en faire profiter à tous
> Par ailleurs cela parait logique, en
effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker du
binaire.
je n'ai pas compris cette phrase... *tous* les types de données sont stockée
en binaire.. il sont simplement *affiché* sous une autre base (décimal) afin
de les rendre plus intelligible pour l'homme.
> Par ailleurs cela parait logique, en effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker du binaire.
je n'ai pas compris cette phrase... *tous* les types de données sont stockée en binaire.. il sont simplement *affiché* sous une autre base (décimal) afin de les rendre plus intelligible pour l'homme.
Ouais, merci, ok, le byte n'est pas signé et est positif...
Ben tu dis que l'integer est signé, il me semble qu'il prend 2 octets lui, et tous les bits allumés ça fait 65.000 (et quelques), il ne reste
RTFM !
Integer 2 bytes -32,768 to 32,767
le_troll
Salut Yanick, Il voulait dire à ma réponse, qu'en binaire, il n'y avait plus de bit de libre sur l'octet pour stocker le signe négatif > à (-127) Sinon, tu dis que c'est stocké en binaire, et que ça passe en décimal pour notre compréhension, tu oublies la phase intermédiaire des quartets qui permettent eux aussi une lecture intermédiaire en hexa, lol... -- Merci, @+, bye, Joe : ---------------------------------------------------------- Avec une hache, celui qui tient le manche a toujours raison. ----------------------------------------------------------
"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de news:
> Par ailleurs cela parait logique, en > effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker du > binaire.
je n'ai pas compris cette phrase... *tous* les types de données sont
stockée
en binaire.. il sont simplement *affiché* sous une autre base (décimal)
Merci de poster les réponses au groupe afin d'en faire profiter à tous
Salut Yanick,
Il voulait dire à ma réponse, qu'en binaire, il n'y avait plus de bit de
libre sur l'octet pour stocker le signe négatif > à (-127)
Sinon, tu dis que c'est stocké en binaire, et que ça passe en décimal pour
notre compréhension, tu oublies la phase intermédiaire des quartets qui
permettent eux aussi une lecture intermédiaire en hexa, lol...
--
Merci, @+, bye, Joe : ng75@noos.fr
----------------------------------------------------------
Avec une hache, celui qui tient le manche a toujours raison.
----------------------------------------------------------
"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de
news: ertFOgy9DHA.1424@TK2MSFTNGP12.phx.gbl...
> Par ailleurs cela parait logique, en
> effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker du
> binaire.
je n'ai pas compris cette phrase... *tous* les types de données sont
stockée
en binaire.. il sont simplement *affiché* sous une autre base (décimal)
Salut Yanick, Il voulait dire à ma réponse, qu'en binaire, il n'y avait plus de bit de libre sur l'octet pour stocker le signe négatif > à (-127) Sinon, tu dis que c'est stocké en binaire, et que ça passe en décimal pour notre compréhension, tu oublies la phase intermédiaire des quartets qui permettent eux aussi une lecture intermédiaire en hexa, lol... -- Merci, @+, bye, Joe : ---------------------------------------------------------- Avec une hache, celui qui tient le manche a toujours raison. ----------------------------------------------------------
"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de news:
> Par ailleurs cela parait logique, en > effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker du > binaire.
je n'ai pas compris cette phrase... *tous* les types de données sont
stockée
en binaire.. il sont simplement *affiché* sous une autre base (décimal)
Merci de poster les réponses au groupe afin d'en faire profiter à tous
Patrice Henrio
Non je ne crois pas qu'il oublie car en définitive même le quartet est lu en binaire dans le processeur. A moins de considérer celui-ci comme une boîte noire et dans ce cas ce n'est ni du binaire, ni du décimal mais du dWord. "Les données sont signées" signifie simplement que l'interprétation que le programme fera de ces données correspondra à un nombre signé ou non. Pour le processeur il n'y a aucune différence.
"le_troll" a écrit dans le message de news:
Salut Yanick, Il voulait dire à ma réponse, qu'en binaire, il n'y avait plus de bit de libre sur l'octet pour stocker le signe négatif > à (-127) Sinon, tu dis que c'est stocké en binaire, et que ça passe en décimal pour notre compréhension, tu oublies la phase intermédiaire des quartets qui permettent eux aussi une lecture intermédiaire en hexa, lol... -- Merci, @+, bye, Joe : ---------------------------------------------------------- Avec une hache, celui qui tient le manche a toujours raison. ----------------------------------------------------------
"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de news: > > Par ailleurs cela parait logique, en > > effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker
du
> > binaire. > > je n'ai pas compris cette phrase... *tous* les types de données sont stockée > en binaire.. il sont simplement *affiché* sous une autre base (décimal) afin > de les rendre plus intelligible pour l'homme. > > -- > Cordialement > Yanick Lefebvre - MVP pour Visual Basic > http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/ > http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/ > > Merci de poster les réponses au groupe afin d'en faire profiter à tous > >
Non je ne crois pas qu'il oublie car en définitive même le quartet est lu en
binaire dans le processeur.
A moins de considérer celui-ci comme une boîte noire et dans ce cas ce n'est
ni du binaire, ni du décimal mais du dWord.
"Les données sont signées" signifie simplement que l'interprétation que le
programme fera de ces données correspondra à un nombre signé ou non. Pour le
processeur il n'y a aucune différence.
"le_troll" <le_trol@paris.fr> a écrit dans le message de
news:OqFwtb59DHA.1672@TK2MSFTNGP12.phx.gbl...
Salut Yanick,
Il voulait dire à ma réponse, qu'en binaire, il n'y avait plus de bit de
libre sur l'octet pour stocker le signe négatif > à (-127)
Sinon, tu dis que c'est stocké en binaire, et que ça passe en décimal pour
notre compréhension, tu oublies la phase intermédiaire des quartets qui
permettent eux aussi une lecture intermédiaire en hexa, lol...
--
Merci, @+, bye, Joe : ng75@noos.fr
----------------------------------------------------------
Avec une hache, celui qui tient le manche a toujours raison.
----------------------------------------------------------
"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de
news: ertFOgy9DHA.1424@TK2MSFTNGP12.phx.gbl...
> > Par ailleurs cela parait logique, en
> > effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker
du
> > binaire.
>
> je n'ai pas compris cette phrase... *tous* les types de données sont
stockée
> en binaire.. il sont simplement *affiché* sous une autre base (décimal)
afin
> de les rendre plus intelligible pour l'homme.
>
> --
> Cordialement
> Yanick Lefebvre - MVP pour Visual Basic
> http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
> http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/
>
> Merci de poster les réponses au groupe afin d'en faire profiter à tous
>
>
Non je ne crois pas qu'il oublie car en définitive même le quartet est lu en binaire dans le processeur. A moins de considérer celui-ci comme une boîte noire et dans ce cas ce n'est ni du binaire, ni du décimal mais du dWord. "Les données sont signées" signifie simplement que l'interprétation que le programme fera de ces données correspondra à un nombre signé ou non. Pour le processeur il n'y a aucune différence.
"le_troll" a écrit dans le message de news:
Salut Yanick, Il voulait dire à ma réponse, qu'en binaire, il n'y avait plus de bit de libre sur l'octet pour stocker le signe négatif > à (-127) Sinon, tu dis que c'est stocké en binaire, et que ça passe en décimal pour notre compréhension, tu oublies la phase intermédiaire des quartets qui permettent eux aussi une lecture intermédiaire en hexa, lol... -- Merci, @+, bye, Joe : ---------------------------------------------------------- Avec une hache, celui qui tient le manche a toujours raison. ----------------------------------------------------------
"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de news: > > Par ailleurs cela parait logique, en > > effet un octet ayant une valeur de -1 c'est pas terrible pr y stocker
du
> > binaire. > > je n'ai pas compris cette phrase... *tous* les types de données sont stockée > en binaire.. il sont simplement *affiché* sous une autre base (décimal) afin > de les rendre plus intelligible pour l'homme. > > -- > Cordialement > Yanick Lefebvre - MVP pour Visual Basic > http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/ > http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/ > > Merci de poster les réponses au groupe afin d'en faire profiter à tous > >