und noch eine Frage : a = 11111111 b = 00000000 c = 00000100 b = 11111111 xor (00000000 & 0000010) b = 11111111 xor 00000000 b = 11111111 Ist das soweit richtig verstanden ?
:-) nein. Die Schule liegt schon einige Jahrzehnte zurück. Versuche hier nur einen Code zu verstehen.
Für's Verständnis kein sehr gutes Beispiel: "Egal-Was" UND "Null" ist immer Null
ratlosER schrieb: > :-) nein. Die Schule liegt schon einige Jahrzehnte zurück. > Versuche hier nur einen Code zu verstehen. Hmmmm... In welcher Sprache ist der Code denn? Weil... in C stimmt die Annahme nicht. Ein paar der Konstanten gelten als Oktalzahlen, ein paar als Dezimalzahlen.
Markus W. schrieb: > Hmmmm... In welcher Sprache ist der Code denn? Weil... in C stimmt die > Annahme nicht. Ein paar der Konstanten gelten als Oktalzahlen, ein paar > als Dezimalzahlen. Kannst du das bitte erklären ? Code ist in C
ratlosER schrieb: > Kannst du das bitte erklären ? Code ist in C Schau mal hier: http://de.wikipedia.org/wiki/Oktalzahl#Kennzeichnung Die Zahl 10 ist gleichbedeutend mit 0xa und 012.
Toll, hier sind wieder die Besserwisser am "helfen"... Beim Betrachten deines Problems scheint es klar, dass es sich um Binärzahlen handeln soll. Aber in C kann man keine Binärzahlen als Eins-Null-Folge eingeben. Definiert sind nur: 123e4 = 1230000 (dez), 037 = 7 + 3*8 = 32 (dez) - Beginnt mit NULL, also Oktal, 0x1234 = 4660 (dez) - Beginnt mit 0x, also Hexadezimal. 0b10101100 ist zwar beim AVR-Assembler definiert, jedoch nicht in Standard-C. Dein Rechnung scheint mir OK, deine Schreibe versteht kein Compiler...
ratlosER schrieb: > Ist das soweit richtig verstanden ? Und ehe das nächste Beispiel kommt. * Du hast es offensichtlich mit Bitoperationen zu tun. D.h. jeweils gleiche Stellen werden ohne Ansehen der anderen Stellen Bitverknüpft * UND (&): Das Ergebnis ist genau dann 1, wenn A UND B 1 waren * ODER (|): Das Ergebnis ist genau dann 1, wenn A ODER B ODER beide 1 waren * NICHT (~): AUs 1 mach 0, aus 0 mach 1 * XOR (^): Das Ergebnis ist genau dann 1, wenn A ODER B, aber nicht beide 1 waren * Klammern werden genau so aufgelöst, wie man es von der Aithmetik gewohnt ist: von innen nach aussen Und jetzt widersteh einfach der Versuchung, beim nächsten mal schon wieder zu fragen. Denn: Wenn das ganze aus Programmcode stammt, dann steckt da sowieso eine Absicht dahinter und du musst diese Absicht ergründen um den Code zu verstehen. Es kann helfen, ein paar Beispiele durchzuspielen aber letzten Endes bist du hinter etwas größerem her.
@ratlosER Dein Ergebnis ist richtig. Hier ist ein Beispiel für C. http://www.cs.umd.edu/class/sum2003/cmsc311/Notes/BitOp/bitwise.html
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.