Was ist der Unterschied zwischen bitweise und logisch?

2 Antworten

"Bitweise" meint, dass der Wert in Binärkombination betrachtet wird und die Bits einzeln miteinander verknüpft werden.

Beispiel: Du hast die Zahlen 5 und 9 als unsigned in einem Format mit 8 Bit. Die Binärrepräsentation der Zahlen sähe folgendermaßen aus:

5: 00000101
9: 00001001

Daran als Beispiel das Ergebniss von AND, OR und XOR:

AND: 00000001
OR : 00001101
XOR: 00001100

tidy42 
Beitragsersteller
 29.03.2021, 14:57

ich weisse nicht,Ich finde mich weit von meiner Frage: und kann nicht meine Schwierigkeit lösen

0
Destranix  29.03.2021, 15:02
@tidy42

Einfach gesagt: "Bitweise" ist wie "Logisch", nur dass eben der Wert als Binärzahl interpretiert und der Operator dann bitweise angwewandt wird. Bei Logischen Operatoren würde man den Wert als Boolschen Wert interpretieren.

0
tidy42 
Beitragsersteller
 29.03.2021, 14:34

warum AND: 00000001?

1
Destranix  29.03.2021, 14:36
@tidy42

Da im niederwertigsten Bit hier zwei 1en aufeinander treffen und gilt:

1 AND 1 = 1;

AND ist ja folgendermaßen definiert:

0 AND 0 = 0;
1 AND 0 = 0;
0 AND 1 = 0;
1 AND 1 = 1;
0

Bitweise bedeutet, dass zwei Binärzahlen durch den jeweiligen Operator miteinander verknüpft werden. Einfaches Beispiel:

11001101 & 01010001 = 01000001
(Nur die Stellen, an denen beide Zahlen eine 1 haben, werden zu 1)

11001101 | 01010001 = 11011101
(Die Stellen, an denen wenigstens eine der beiden Zahlen eine 1 hat, werden zu 1)