den Inhalt eines Bytes in einem String darstellen
Hallo an alle,
hab mal wieder eine Frage. Ich habe ein Byte (in diesem ist der Status eines elektrisch über Computer angesteuerten Verschiebetischs drin) und will mir dieses Byte in einem String darstellen lassen, da einige Positionen dieses Bytes für mich interessant sind. Meine Frage nun ist, kann ich dieses Byte in möglichst einem String oder sonst irgendwie verarbeitbarer Variable umwandeln. Vieleicht gibt es auch eine Möglichkeit dieses Byte direkt zu bearbeiten. Danke |
Re: den Inhalt eines Bytes in einem String darstellen
Meinst Du jetzt eine binäre Darstellung des Bytes?
|
Re: den Inhalt eines Bytes in einem String darstellen
Guten Morgen,
wenn Dich nur einige Positionen des Bytes interessieren, würde ich diese maskieren (und Verknüpfung) und damit weiterarbeiten. Grüße Klaus |
Re: den Inhalt eines Bytes in einem String darstellen
Ein Beispiel für das Byte wird angegeben als "04 02 00 03 02 00" da auch Zahlen von 2..4 erlaubt sind, kann es sich eigentlich nicht um eine binäre Darstellung handeln. Wobei ich bei der Anweisung für den Verschiebetisch sehr viele Fehler gefunden hab. Allerdings sind den einzelnen Positionen im Byte bestimme Informationen zu entnehmen die von 0..8 gecodet sind.
Also um zum Schluss zu kommen keine Binärdarstellung. |
Re: den Inhalt eines Bytes in einem String darstellen
Also, so eine merkwürdige Darstellung ist mir noch nicht untergekommen. Sicher, dass das wirklich nur ein Byte ist?
|
Re: den Inhalt eines Bytes in einem String darstellen
Zitat:
Grüße Klaus |
Re: den Inhalt eines Bytes in einem String darstellen
Das kann sein, dass das Byte die Werte annehmen kann. Wie gesagt, die Beschriebung der Firmer zu diesem Pordukt ist leider nicht wirklich qualitativ und man muss mehr probieren, als dass man Antworten bekommt.
|
Re: den Inhalt eines Bytes in einem String darstellen
Sicher, dass das der Inhalt des Bytes ist und du nicht zufällig die Speicheradresse des Bytes erwischt hast (die ja (meistens) 32-Bit - also 4 Byte groß ist)?
|
Re: den Inhalt eines Bytes in einem String darstellen
Moin zusammen,
Delphi-Quellcode:
{OT: ... der Server klingelt, bin on tour ...}function Byte2Str (MyByte : byte) : string; var i, n : integer; begin result := '00000000'; n := 128; for i := 1 to 8 do begin if MyByte >= n then begin result[i] := '1'; Dec(MyByte, n); {n=128;64;32;16;8;4;2;1} end; n := n div 2; end; end; Grüße // Martin |
Re: den Inhalt eines Bytes in einem String darstellen
Hallo,
natürlich kannst du die Bits eines Bytes recht einfach als Dualzahl sichtbar machen:
Delphi-Quellcode:
Mit IntToHex() erhältst du die hexadezimale Darstellung, aber das kann nicht dein Problem gewesen sein - oder doch?
function StrToByte(const s: string): Byte;
var i: Integer; begin Result := 0; for i := 1 to Length(s) do Result := Result shl 1 + Ord(s[i] = '1'); end; function ByteToStr(b: Byte): string; var i: Integer; begin SetLength(Result, 8); for i := 0 to 7 do Result[8 - i] := Chr(Ord('0') + Ord(Odd(b shr i))); end; Grüße vom marabu |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz