Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: hex String in Byte aumwandeln Kategorie: Programmierung (von André H. - 23.10.2003 13:12)
Als Antwort auf Re: hex String in Byte aumwandeln von Gerhard - 23.10.2003 11:32

Hallo Gerhard,
 
> müsste auch gehen, au�er da� du wenn du nicht negative Hexzahlen verwendest bei
> der for-schleife mit 0 anfangen muÃ?t. ;-)

Danke für den Hinweis.
Die For-Schleife mu� natürlich bei 0 anfangen.
Ich hab's beim Kopieren von getNum() vergessen zu ändern.
Ã?brigens, es gibt keine negativen HEX-Zahlen. :-)
Die negative Schreibweise gibt's nur bei Dezimalzahlen.
Negative Zahlen werden in HEX-Schreibweise bei Integer
mit gesetztem Bit 0x8000 und bei Long mit gesetztem Bit 0x80000000
definiert.

Also hier die korrektur von getHex() :
//--String mit HEX-Zahl in integer-Zahl konvertieren--------------
   function getHex (byte s[]) returns long
// Die zurückgegebene Zahl kann in
// byte, int oder long gespeichert werden
//--------------------------------------------------------
{byte i,x;long y;
 y=0;
 if s[31]==0 return 0;
 for i=0 ... s[31]-1
 {
  x=s[i];
  if x<'0' or x>'F' or (x>'9' and x<'A')
     return -32768;//=0x8000(=keine Zahl)
  if x<0x40 y=y*16 + (x-0x30); else y=y*16 + (x-0x37);
 }
 return y;
}


MfG André H.



Antworten bitte nur ins Forum!
Fragen per EMail auf Forum-Postings werden nicht beantwortet!

Das macht meine Heizung gerade


    Antwort schreiben


Antworten:

Re: hex String in Byte aumwandeln (von Gerhard - 23.10.2003 14:32)
Re: hex String in Byte aumwandeln (von Franz - 23.10.2003 13:21)