Modula Arithmetik
-
Hallo,
ich sitz schon seit längeren an einen kleinen Problem:
Wir haben 2 Bitfolgen, zB. x=1001 und y=1011, welche es zu multiplizieren gilt. Einmal mit folgenden Regeln (1):
1+1=10
1+0=1
0+0=0
Ein anderes mal mittels modula 2 (2):
1+1=0
1+0=0
0+0=0
Für x*y mit den Regeln von (1) kommt: [1100011] und mit (2) [1010011].Nun soll ich eine Methode finden, wie man mittels der normalen Multiplikation auf das Ergebnis von Variante (2) kommt. Habt ihr da nen kleinen Tipp?
Habe mir am Anfang erst mal eine Matrix erstellt, zB.
[10]*[11]=
100
010Und darüber probiert etwas zu finden, aber es hat leider nicht geklappt:(
Man darf für das "Umformen" alles verwenden, hauptsache die Regeln von (1) bleiben bestehen und das Verfahren klappt analog zu anderen Bitfolgen.Vielen Dank für ein paar Anregungen
MfG
Stefan
-
also, wenn es bei den zweiten regeln heißt 1+0=1, wovon ich jetzt einfach mal ausgehe, weil sonst einfach alles 0 wäre, würde das folgendermaßen funktioniern:
x=1001, y=1011 1001 * 1011 = 1000 * 1011 + 1 * 1011 = 1011000 + 1011 = 1010011
.MamboKurt
-
Hi,
ja hab mich dort verschrieben.
Dies klappt leider auch nicht, denn bei der letzten Addition von (1011000)+(1011)=1100011
Hat noch einer eine kleine Idee dazu?Habe jetzt probiert die Spalten in der Matrix zu subtrahieren, aber fand dort auch noch keinen schönen Weg. Müsste immer sinnlos Dinge noch drauf addieren, wobei dies sich zu jeder Zahl unterscheidet.