Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1286 connectés 

  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  [Pascal] Conversion hexa -> decimal

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Pascal] Conversion hexa -> decimal

n°179411
fricky22
Audiomobile powaaaaa
Posté le 21-07-2002 à 14:54:36  profilanswer
 

Voila je tente de faire une routine de conversion byte par byte
ca donne ca :
 
var
len (longueurdelastringhexa) : Byte
decimal,temp,ecx : String;
A : TFGInt;
F(incrementeurdelastring) : Byte;
 
      Procedure Conversion;
      begin
 
        ecx := chr(ord(test[F]));
        Base256StringToFGInt(ecx,A);
        FGIntToBase10String(A,temp);
        FGIntDestroy(A);
        dec(len);
        inc(F);
        decimal := temp;
         
      end;
Ce qui me manque c'est comment faire la loop, comment avoir la longueur de la string
(len := Lenght(test);marche pas?)
et comment ajouter au fur et a mesure dans decimal les bytes convertis

mood
Publicité
Posté le 21-07-2002 à 14:54:36  profilanswer
 

n°179413
antp
Super Administrateur
Champion des excuses bidons
Posté le 21-07-2002 à 15:00:13  profilanswer
 

C'est pas clair ton truc là
pour la longueur tu peux prendre Test[0]


Message édité par antp le 21-07-2002 à 15:00:42

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°179414
fricky22
Audiomobile powaaaaa
Posté le 21-07-2002 à 15:04:26  profilanswer
 

Merde j'ai oublié test : String
pour le bytes c'est pas grave les nb sont moins longs que 255
(jutilise fgint parceque j'ai pas envie de refaire la routine de conversion)en fait il me faudrait un genre "repeat until" et ou
le decimal soit sans : decimal := temp+temp1+temp2


Message édité par fricky22 le 21-07-2002 à 15:10:04
n°179416
antp
Super Administrateur
Champion des excuses bidons
Posté le 21-07-2002 à 15:08:32  profilanswer
 

j'avais édité mon message entre temps :D
Si tu travailles en vieux Pascal string c'est 255 caractères max il me semble.
Enfait tout dépend si ce sont des ShortString ou des AnsiString/LongString...
Mais si tu es en Delphi par ex je crois que tu as intérêt à utiliser des Integer plutôt que des Byte, en mémoire y a pas trop d'intérêt à utiliser Byte plutôt que Integer niveau performance.


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°179608
fricky22
Audiomobile powaaaaa
Posté le 21-07-2002 à 22:18:58  profilanswer
 

Bon j'ai trouvé comment faire mais j'ai un problème
le until F=len(test) marche pas :(
 
var
   temp,ecx,test : String;
   A : TFGInt;
   i,F : integer;
 
     Procedure Conversion;
      begin
      F:=1;
       
        repeat
 
        ecx := chr(ord(test[F]));
        Base256StringToFGInt(ecx,A);
        FGIntToBase10String(A,temp);
        FGIntDestroy(A);
        inc(F);
        write(temp);
 
        until F=lenght(test);
 
      end;

n°179645
[SDF]Poire
Vive Grumly
Posté le 21-07-2002 à 23:26:51  profilanswer
 

antp a écrit a écrit :

Mais si tu es en Delphi par ex je crois que tu as intérêt à utiliser des Integer plutôt que des Byte, en mémoire y a pas trop d'intérêt à utiliser Byte plutôt que Integer niveau performance.




Beh pq ?
Un Byte C + petit  :D


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°179655
antp
Super Administrateur
Champion des excuses bidons
Posté le 21-07-2002 à 23:48:27  profilanswer
 

[SDF]Poire a écrit a écrit :

 
Beh pq ?
Un Byte C + petit  :D  




 
C'est sur un processeur 32 bits (à priori) donc ses registres font 32 bits, comme les Integer, en général y a intérêt à utiliser des Integer pour tout ce qui est variable non destinée à du stockage à moyen ou long terme.
Demande à Zion si tu me crois pas :p


Message édité par antp le 21-07-2002 à 23:49:15

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°179674
[SDF]Poire
Vive Grumly
Posté le 22-07-2002 à 00:21:38  profilanswer
 

antp a écrit a écrit :

 
 
C'est sur un processeur 32 bits (à priori) donc ses registres font 32 bits, comme les Integer, en général y a intérêt à utiliser des Integer pour tout ce qui est variable non destinée à du stockage à moyen ou long terme.
Demande à Zion si tu me crois pas :p




Y a pas que des Integer qui font 32 bits...
pq pas des Cardinal ?


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°179685
zion
Plop
Posté le 22-07-2002 à 01:06:34  profilanswer
 

[SDF]Poire a écrit a écrit :

 
Y a pas que des Integer qui font 32 bits...
pq pas des Cardinal ?




 
C'est kif, mais c clair que faire une addition sur 8bits ou 32bits c'est le même temps (n'est ce pas antp, cfr Paillouc) exactement  :D  


---------------
Informaticien.be - Lancez des défis à vos amis
n°179743
antp
Super Administrateur
Champion des excuses bidons
Posté le 22-07-2002 à 09:45:03  profilanswer
 

[SDF]Poire a écrit a écrit :

 
pq pas des Cardinal ?




 
une lettre de plus à taper, et beaucoup de fonctions s'attendent à avoir un Integer alors autant utiliser ça :D

mood
Publicité
Posté le 22-07-2002 à 09:45:03  profilanswer
 

n°179813
[SDF]Poire
Vive Grumly
Posté le 22-07-2002 à 11:25:40  profilanswer
 

antp a écrit a écrit :

 
 
une lettre de plus à taper, et beaucoup de fonctions s'attendent à avoir un Integer alors autant utiliser ça :D




Certaines fonctions s'attendent à voir un Cardinal :D  
G du changer des Integer en Cardinal au passage à Delphi 5 ou 6 je me rappel + :ange:  
Mais je te taquine  :D  
 :hello:


Message édité par [SDF]Poire le 22-07-2002 à 11:26:52

---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°179827
antp
Super Administrateur
Champion des excuses bidons
Posté le 22-07-2002 à 11:34:18  profilanswer
 

ouais mais bon y a nettement plus de fonctions qui veulent du Integer que tu Cardinal :kaola:

n°179868
[SDF]Poire
Vive Grumly
Posté le 22-07-2002 à 12:12:01  profilanswer
 

antp a écrit a écrit :

ouais mais bon y a nettement plus de fonctions qui veulent du Integer que tu Cardinal :kaola:




Pas certaines API  :kaola:


---------------
Des bons sites pour Delphi? http://forum.hardware.fr/forum2.php3?post=16838&cat=10 -- informaticien -- http://www.z0rglub.com/phpwebgallery/ -- Delphi :love:
n°179916
zion
Plop
Posté le 22-07-2002 à 14:00:02  profilanswer
 

[SDF]Poire a écrit a écrit :

 
Pas certaines API  :kaola:  




 
Ouaip, mais c chiant quand tu fais des opérations sur des cardinal et des integer, tu te prends toujours un warning dans la tronche comme quoi tu combines un truc signé et non signé  :ange:  
 


---------------
Informaticien.be - Lancez des défis à vos amis

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  [Pascal] Conversion hexa -> decimal

 

Sujets relatifs
[TOUS LANGAGES] - Conversion de couleurs YUV --> RGBHelp me Transformer en ascii la valeur hexa 0A
pb conversion separateur decimal ds mes tables access ac appli delphiConversion RichTextBox en HTML
Conversion fichier Excel vers SQL[VB] Comment passer d'un nombre en decimal vers un nombre Hexadecimal?
[URGENT] : Avez deja ecrit un compilateur pascal en c?????[VC++ 7.0] Conversion de chaine UNICODE en ANSI
Lister les fichiers d'un repertoire en Pascal ! 
Plus de sujets relatifs à : [Pascal] Conversion hexa -> decimal


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR