Nur noch mal zur Sicherheit dass ich das richtig verstanden habe =) (Ein Ja langt schon ;-b)
Wenn ich z.B. q = 1001 habe und dann &q mache passiert folgendes
1 & 0 = 0 & 0 = 1 & 1 = 1 es wird also angefangen beim MSB das nebenstehende bit verglichen und dessen Ergebnis dann mit dem nächsten bit usw.
In Aufgabe 3.5 (Parität hinzufügen) hat man das ja mit xor benötigt =) und da hat es genau so funktioniert.
Danke also für ein kurzes feedback ob das ganze so richtig interpretiert ist.
Monadisch Reduktion
Re: Monadisch Reduktion
Ich glaube das ist so nicht richtig.
Dein Ergebnis kann bei bitweisen logikoperatoren nicht weniger bits besitzen als deine operanden. Meiner Meinung nach würde das für dein Beispiel so aussehen:
1 0 0 1
- AND -
1 0 0 1
______
1 0 0 1
Man wendet also die gewünschte operation bit für bit auf die jeweils entsprechenden bits der operanden an (sprich gleiche wertigkeit) und erhält dann das ergebnis mit gleicher bitlänge.
Ich glaube du verwechselst das gerade mit den bool'schen funktionen, die gehen nur von 1 oder 0 aus, hier aber kann dein ergebnis nicht "kürzer" als deine operanden sein !
Siehe auch --> http://en.wikipedia.org/wiki/Bitwise_operation#AND
€: Ich seh gerade, das ist zwar richtig was ich geschrieben habe, passt aber nicht ganz zu deiner Frage
Ich hab mir eben mal die Übung angeschaut, hatte nur dein q & q gesehen und dachte du meinst das obige damit
In dem Fall gehts ja eher darum, was die Syntax in dem Verilog Beispiel bedeutet...das dürfte dann schon so stimmen wie du geschrieben hast...glaube ich 
Dein Ergebnis kann bei bitweisen logikoperatoren nicht weniger bits besitzen als deine operanden. Meiner Meinung nach würde das für dein Beispiel so aussehen:
1 0 0 1
- AND -
1 0 0 1
______
1 0 0 1
Man wendet also die gewünschte operation bit für bit auf die jeweils entsprechenden bits der operanden an (sprich gleiche wertigkeit) und erhält dann das ergebnis mit gleicher bitlänge.
Ich glaube du verwechselst das gerade mit den bool'schen funktionen, die gehen nur von 1 oder 0 aus, hier aber kann dein ergebnis nicht "kürzer" als deine operanden sein !
Siehe auch --> http://en.wikipedia.org/wiki/Bitwise_operation#AND
€: Ich seh gerade, das ist zwar richtig was ich geschrieben habe, passt aber nicht ganz zu deiner Frage



Zuletzt geändert von Iblis am 18. Jul 2009 15:27, insgesamt 1-mal geändert.
Re: Monadisch Reduktion
0 & 0 ist doch 0!Diablo hat geschrieben: Wenn ich z.B. q = 1001 habe und dann &q mache passiert folgendes
1 & 0 = 0 & 0 = 1 & 1 = 1
aber ich glaub du meinst das richtige:
&X[n] = (((X1 & X2) & X3) ... & Xn)
in deinem beispiel also:
(((1 and 0) and 0) and 1) = (( 0 and 0) and 1) = (0 and 1) = 0;
&X[n] ist also genau dann 1, wenn für alle i: X=1; (die 0 wird bei jeder verknüpfung weitergereicht, 0 & x = 0)
orX[n] ist genau dann eins wenn ein i existiert: X=1; (die 1 wird bei jeder verknüpfung weitergereicht, 1 or x = 1)
xorX[n] ist genau dann eins wenn eine ungerade Anzahl einser in dem Wort stehn. (das ergebnis wechselt bei jeder 1, x xor 1 = !x)
etc
edit: ob du beim MSB oder LSB anfängst ist egal, da die logischen verknüpfungen die wir hier benutzen eh alle kommutativ sind.
Re: Monadisch Reduktion
Monadische Reduktion habe ich ganz ähnlich verstanden, nur dass bei mir etwas anderes rauskäme.
& 'b1001 = 1 & 0 & 0 & 1 = 0
Es ist quasi so ähnlich wie das fold in Scheme oder das reduce in Python. Die Bit-Sequenz wird quasi als Liste/Reihe von einzelnen Bits interpretiert, die mit dem entsprechenden Operator verknüpft werden.
& 'b1001 = 1 & 0 & 0 & 1 = 0
Es ist quasi so ähnlich wie das fold in Scheme oder das reduce in Python. Die Bit-Sequenz wird quasi als Liste/Reihe von einzelnen Bits interpretiert, die mit dem entsprechenden Operator verknüpft werden.
Re: Monadisch Reduktion
ja danke ich hab irgend wie an gleichheit anstelle von & gedacht :-b also NotXOR *kopfschüttel*
aber vom sinnhalt wird es reduziert auf 1 bit in dem immer die nebeneinander stehenden und dann deren ergebnis ...
Danke für die Antworten
aber vom sinnhalt wird es reduziert auf 1 bit in dem immer die nebeneinander stehenden und dann deren ergebnis ...
Danke für die Antworten