AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein den Inhalt eines Bytes in einem String darstellen
Thema durchsuchen
Ansicht
Themen-Optionen

den Inhalt eines Bytes in einem String darstellen

Ein Thema von BAMatze · begonnen am 1. Sep 2008 · letzter Beitrag vom 1. Sep 2008
Antwort Antwort
BAMatze

Registriert seit: 18. Aug 2008
Ort: Berlin
759 Beiträge
 
Turbo Delphi für Win32
 
#1

den Inhalt eines Bytes in einem String darstellen

  Alt 1. Sep 2008, 09:06
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
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: den Inhalt eines Bytes in einem String darstellen

  Alt 1. Sep 2008, 09:13
Meinst Du jetzt eine binäre Darstellung des Bytes?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.755 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: den Inhalt eines Bytes in einem String darstellen

  Alt 1. Sep 2008, 09:19
Guten Morgen,

wenn Dich nur einige Positionen des Bytes interessieren, würde ich
diese maskieren (und Verknüpfung) und damit weiterarbeiten.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
BAMatze

Registriert seit: 18. Aug 2008
Ort: Berlin
759 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: den Inhalt eines Bytes in einem String darstellen

  Alt 1. Sep 2008, 09:21
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.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: den Inhalt eines Bytes in einem String darstellen

  Alt 1. Sep 2008, 09:29
Also, so eine merkwürdige Darstellung ist mir noch nicht untergekommen. Sicher, dass das wirklich nur ein Byte ist?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.755 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: den Inhalt eines Bytes in einem String darstellen

  Alt 1. Sep 2008, 09:31
Zitat von DeddyH:
Also, so eine merkwürdige Darstellung ist mir noch nicht untergekommen. Sicher, dass das wirklich nur ein Byte ist?
Er meint sicherlich, dass das Byte diese Werte annehmen kann.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
BAMatze

Registriert seit: 18. Aug 2008
Ort: Berlin
759 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: den Inhalt eines Bytes in einem String darstellen

  Alt 1. Sep 2008, 10:10
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.
  Mit Zitat antworten Zitat
Benutzerbild von Codewalker
Codewalker

Registriert seit: 18. Nov 2005
Ort: Ratingen
945 Beiträge
 
Delphi XE2 Professional
 
#8

Re: den Inhalt eines Bytes in einem String darstellen

  Alt 1. Sep 2008, 10:31
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)?
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von mschaefer
mschaefer

Registriert seit: 4. Feb 2003
Ort: Hannover
2.029 Beiträge
 
Delphi XE3 Enterprise
 
#9

Re: den Inhalt eines Bytes in einem String darstellen

  Alt 1. Sep 2008, 10:33
Moin zusammen,

Delphi-Quellcode:

           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;
{OT: ... der Server klingelt, bin on tour ...}

Grüße // Martin
Martin Schaefer
Phaeno
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#10

Re: den Inhalt eines Bytes in einem String darstellen

  Alt 1. Sep 2008, 11:18
Hallo,

natürlich kannst du die Bits eines Bytes recht einfach als Dualzahl sichtbar machen:

Delphi-Quellcode:
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;
Mit IntToHex() erhältst du die hexadezimale Darstellung, aber das kann nicht dein Problem gewesen sein - oder doch?

Grüße vom marabu
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:08 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