Bitweise Operatoren
christopher
- java
0 MudGuard0 captain kork0 Maxx
guten tag forumler(innen),
ich beschäftige mich seit ein paar tagen mit der sprache java.
jetzt steht in meinem buch ein ausdruck, dessen logik mir nicht
in den kopf gehen will...
und zwar geht es um Bitweise Operatoren.
der code dazu:
public class bitweise
{
public static void main(String[] args)
{
int i = 55;
int j = 97;
System.out.println(i & 15);
System.out.println(j & 15);
}
}
was ich jetzt nicht verstehe ist die ausgabe:
7
1
wie setzen sich die beiden zahlen 7 und 1 zusammen bzw.
woher kommen die überhaupt ?
ich wäre euch sehr dankbar wenn mir mal einer kurz den
zusammnhang erläutern könnte.. besten dank im voraus
mfg
christopher
Hi,
int i = 55;
int j = 97;
System.out.println(i & 15);
System.out.println(j & 15);
7
1
55 = 32 + 16 + 4 + 2 + 1 = binär 110111
15 = 8 + 4 + 2 + 1 = binär 1111
7 = 4 + 2 + 1 = binär 111
97 = 64 + 32 + 1 = binär 1100001
15 = 8 + 4 + 2 + 1 = binär 1111
1 = 1 = binär 1
cu,
Andreas
Hi,
int i = 55;
int j = 97;
System.out.println(i & 15);
System.out.println(j & 15);
7
155 = 32 + 16 + 4 + 2 + 1 = binär 110111
15 = 8 + 4 + 2 + 1 = binär 1111
7 = 4 + 2 + 1 = binär 11197 = 64 + 32 + 1 = binär 1100001
15 = 8 + 4 + 2 + 1 = binär 1111
1 = 1 = binär 1cu,
Andreas
herzlichsten dank...
da hätt ich ja ewig drüber 'philosophieren' können.
mfg
christopher
public class bitweise
{
public static void main(String[] args)
{
int i = 55;
int j = 97;
System.out.println(i & 15);
System.out.println(j & 15);
}
}
was ich jetzt nicht verstehe ist die ausgabe:
7
1
i=55 00110111 (binär)
j=97 01100001 (binär)
15 00001111 (binär)
& logisch und bitweise
Hallo Christopher,
und zwar geht es um Bitweise Operatoren.
int i = 55;
int j = 97;
System.out.println(i & 15);
System.out.println(j & 15);
wie setzen sich die beiden zahlen 7 und 1 zusammen bzw.
woher kommen die überhaupt ?
Die Zahl 55 wird im binären Zahlensystem wie folgt dargestellt:
64 32 16 8 4 2 1 <- dezimal
2^6 2^5 2^4 2^3 2^2 2^1 2^0 <- Basis
0 1 1 0 1 1 1 <- binär
ein bitweises UND (&) kannst du dir so vorstellen
55 = 110111 <- (1)
15 = 1111 <- <2)
---------------
000111 <- (3)
Überall dort wo in (1) UND (2) ein Bit gesetzt ist, wird auch im Ergebnis (3) ein Bit gesetzt.
Und 111 ist (2^2 + 2^1 + 2^0 = 3 + 2 + 1 = 7) Alles klar?
Grüße,
Maxx