Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Zwei Bytes in ein Integer konvertieren


Indeterminatus - So 25.05.03 14:46
Titel: Zwei Bytes in ein Integer konvertieren
Hi!

Ich habe folgendes Problem: Wie kann ich zwei Bytes in eine Integerzahl konvertieren? (Ich weiß, dass das eine Byte den Hi-Anteil und das andere Byte den Lo-Anteil der gesuchten Zahl darstellt).

Nachdem dieser Teil ziemlich zeitkritisch ist wäre es gut, ein möglichst schnelles Verfahren zu verwenden.

Bin für jeden Vorschlag dankbar!


Anonymous - So 25.05.03 15:07

zwei Bytes kannst du höchstens in ein Word Konvertieren und zwei word in einen integer.
Das müsste irgendwie so gehen ( für bytes in word):
a*256+b (?)
kann auch sein dass das irgendwie mit shl oder shr geht, weiß ich aber nicht.


Indeterminatus - So 25.05.03 15:16

ups, habs nicht vollständig angegeben ... natürlich eine 16-bit-integer-zahl (vom typ smallint in delphi). danke auf jeden fall für den vorschlag, werd ich gleich probieren !!! (und btw, jede multiplikation / division mit dem faktor 2 kann man durch ein shl / shr ersetzen! ;-) )...

mfg,
Integerminatus.


Delete - So 25.05.03 15:31

MAKEWORD

Quelltext
1:
2:
3:
4:
WORD MAKEWORD(
    BYTE bLow,
    BYTE bHigh
);