Forum: PC-Programmierung Windows Batch Einlesen einzelner Bits


von Pascal (Gast)


Lesenswert?

Hi,

ich benötige für ein Windows Batch-Programm, an dem ich gerade schreibe, 
die Möglichkeit, aus einer Datei (Endung irrelevant) nicht nur einzelne 
Bytes, sondern auch einzelne Bits aus den Bytes zu entnehmen.

Ausreichen würde es ja schon, in 8 verschiedene Variablen die 1 oder 0 
der entsprechenden Stelle in der binären Zahl zu speichern.

Bit -> Byte sehe ich aber auch als Herausforderung an, oder geht sowas 
wie:
1
set /a variable=0b%bit7%%bit6%%bit5%%bit4%%bit3%%bit2%%bit1%%bit0%
?

Danke für jede Hilfe
Pascal

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Du kannst in Batchfiles auch Arithmetik inklusive bitweiser 
Verknüpfungen durchführen. Mit bitweisem AND kannst Du bestimmen, ob ein 
bestimmtest Bit in einem Wert gesetzt ist.

http://www.robvanderwoude.com/battech_math.php
1
SET /A "bit0 = %value% & 1"
2
3
SET /A "bit7 = %value% & 128"


Welches Problem möchtest Du damit lösen?

von Pascal (Gast)


Lesenswert?

Rufus Τ. F. schrieb:
> Welches Problem möchtest Du damit lösen?

Ich hatte genau das vor, eine logische Verknüpfung.

Allerdings soll der 8-Bit-Wert ein Zeichen aus einer Datei sein, und 
auch als Zeichen wieder geschrieben werden.

D.h. kann ich als %value% auch einen Buchstaben nehmen?

Und wie setze ich einzelne Bits wieder zu einem String zusammen?

von Pascal (Gast)


Lesenswert?

Sorry, das Problem hat sich dank des Links gelöst

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.