Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Hex-Wert binär invertieren (https://www.delphipraxis.net/169055-hex-wert-binaer-invertieren.html)

Ruediger123 26. Jun 2012 15:29

Delphi-Version: 7

Hex-Wert binär invertieren
 
stehe auf dem Schlauch. Ich muss einen Hexwert von der Größe eines Bytes binär invertieren. Wie stelle ich das am besten an?

DeddyH 26. Jun 2012 15:31

AW: Hex-Wert binär invertieren
 
Bevor wir hier Blödsinn posten: was genau meinst Du mit binär invertieren?

Ruediger123 26. Jun 2012 15:35

AW: Hex-Wert binär invertieren
 
Aus 1 mach 0 und umgekehrt. 10111011 -> 01000100

Gruß

Rüdiger

Bummi 26. Jun 2012 15:35

AW: Hex-Wert binär invertieren
 
ich riskiere mal einen Schuss ins Blaue
Delphi-Quellcode:
Wert := not Wert;

p80286 26. Jun 2012 15:36

AW: Hex-Wert binär invertieren
 
Und was ist mit Hexwert gemeint.

Gruß
K-H

DeddyH 26. Jun 2012 15:38

AW: Hex-Wert binär invertieren
 
Das kann eigentlich nur ein String sein, denn "Hexwerte" gibt es nur in der Darstellung einer Zahl.

p80286 26. Jun 2012 15:52

AW: Hex-Wert binär invertieren
 
Zitat:

Zitat von DeddyH (Beitrag 1172526)
Das kann eigentlich nur ein String sein, denn "Hexwerte" gibt es nur in der Darstellung einer Zahl.

und wie wäre es mit $78F2 ?
Außerdem gab es in der letzten Zeit so einige Nachfragen über Hex und Bin und ....
wo den Fragestellern nicht klar war das es nur um die Darstellung einer Zahl (numerischen Wert) ging.

Gruß
K-H

DeddyH 26. Jun 2012 15:58

AW: Hex-Wert binär invertieren
 
$78F2 (hexadezimal) = 30962 (dezimal) = 74362 (oktal) = 111100011110010 (binär)
Die Zahl bleibt dieselbe, nur die Darstellung ist unterschiedlich.

p80286 26. Jun 2012 16:11

AW: Hex-Wert binär invertieren
 
Keine Einwände
aber bevor wir hier mit HexToBin/BintoHex um uns werfen...

Gruß
K-H

Ruediger123 26. Jun 2012 16:20

AW: Hex-Wert binär invertieren
 
Zitat:

Zitat von Bummi (Beitrag 1172523)
ich riskiere mal einen Schuss ins Blaue
Delphi-Quellcode:
Wert := not Wert;

Was ist denn mit wert gemeint? Ein Bit? Wenn ja wie kann ich mein Byte welches ich in Hex habe so binär darstellen damit ich es wie du es beschreibst invertieren kann?

Mit geht es nur darum irgend einen Wert zu invertieren. Es kann auch eine Decimalzahl sein.

Z.B aus 7 -> 00000111 -> 11111000

DeddyH 26. Jun 2012 16:21

AW: Hex-Wert binär invertieren
 
Müssen wir ja gar nicht. Einfach negieren, wie Bummi schon gezeigt hat.

p80286 26. Jun 2012 16:36

AW: Hex-Wert binär invertieren
 
Wie DeddyH schon geschrieben hat, alles ist eine Zahl, nur die Darstellung ändert sich.
Wende Bummis Lösung an und es passt.

Delphi-Quellcode:
a:=12345;
b:=not a;
oder eben
Delphi-Quellcode:
a:=12345;
a:=not a;
Gruß
K-H

himitsu 26. Jun 2012 18:33

AW: Hex-Wert binär invertieren
 
Bei den booleanischen Typen ala Boolean, ByteBool oder LongBool ist NOT ein logischer Operator, welcher den kompletten Inhalt "logisch" umdreht. (also quasi TRUE und FALSE austauscht).

Bei den anderen ordinalen Typen, wie Integer, Byte, Word, Cardinal usw. ist es in binärer Operator, welcher die internen Bits einzeln/bitweise umdreht.
Bei einem Byte werden also die internen 8 Bit einzeln getauscht.

Ruediger123 27. Jun 2012 08:22

AW: Hex-Wert binär invertieren
 
Super, vielen Dank für die Erklärung! Dachte das wäre komplizierter :)

DeddyH 27. Jun 2012 08:51

AW: Hex-Wert binär invertieren
 
http://www.delphipraxis.net/95180-ef...bitmasken.html


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:40 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