www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Englisch
  Status Grammatik
  Status Lektüre
  Status Korrekturlesen
  Status Übersetzung
  Status Sonstiges (Englisch)

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Technische Informatik" - Produkt von Dualz. mit shift
Produkt von Dualz. mit shift < Technische Inform. < Praktische Inform. < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Technische Informatik"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Produkt von Dualz. mit shift: shift und add/sub-Operation
Status: (Frage) beantwortet Status 
Datum: 08:24 Do 25.10.2007
Autor: RalU

Aufgabe
Hallo!

Es geht um folgende Aufgabe:
Berechnen Sie das Produkt der Dualzahlen
1011011011 un 111111 so, dass Sie mit nur einer Addition bzw. Subtraktion (und Shiften) auskommen.

Ok. Meine Überlegung war bisher, das ganze mittels linksshift und anschließender Subtraktion von der letzten Stelle durchzuführen.

also z.B. auf 1011011011 7 mal linksshift anzuwenden und dann [mm] 2^{7} [/mm] abzuziehen. Allerdings ist das denk ich der falsche ansatz. Aber so irgendwie auf die Art muss es doch gehen, oder?


Was wäre denn, wenn ich 7 mal linksshift auf 1011011011 anwende? bekomm ich dann 10110110110000000 ?


Wer kann mir helfen?

Danke für Eure Mühe.
Gruß, Ralf

        
Bezug
Produkt von Dualz. mit shift: Antwort
Status: (Antwort) fertig Status 
Datum: 10:44 Do 25.10.2007
Autor: Bastiane

Hallo RalU!

> Hallo!
>  
> Es geht um folgende Aufgabe:
>  Berechnen Sie das Produkt der Dualzahlen
>  1011011011 un 111111 so, dass Sie mit nur einer Addition
> bzw. Subtraktion (und Shiften) auskommen.
>  Ok. Meine Überlegung war bisher, das ganze mittels
> linksshift und anschließender Subtraktion von der letzten
> Stelle durchzuführen.
>  
> also z.B. auf 1011011011 7 mal linksshift anzuwenden und
> dann [mm]2^{7}[/mm] abzuziehen. Allerdings ist das denk ich der
> falsche ansatz. Aber so irgendwie auf die Art muss es doch
> gehen, oder?
>  
>
> Was wäre denn, wenn ich 7 mal linksshift auf 1011011011
> anwende? bekomm ich dann 10110110110000000 ?

Ich bin mir nicht sicher, aber könntest du nicht 1011011011 mit 1000000 multiplizieren und dann einmal 1011011011 abziehen? Das käme doch aufs Gleiche raus, oder? Wenn du 253 mit 99 multiplizieren möchtest, kannst du es ja mit 100 multiplizieren und dann einmal 253 abziehen. Und das Multiplizieren geht doch mit Shiften!?

Viele Grüße
Bastiane
[cap]

Bezug
        
Bezug
Produkt von Dualz. mit shift: Antwort
Status: (Antwort) fertig Status 
Datum: 13:11 Do 25.10.2007
Autor: Martin243

Hallo,

zu deinem Ansatz:
Zweierpotenzen kann man (s. Bastiane) mit Linksshifts von 1 berechnen. Also (b steht für binär):
(1011011011b << 7) - [mm] 2^7 [/mm] = (1011011011b << 7) - (1 << 7) = (1011011011b - 1) << 7 = 1011011010b * [mm] 2^7 [/mm]
Stimmt also nicht ganz.

Ich würde Bastiane zustimmen (warum so zögerlich?):
1011011011b * 111111b = 1011011011b * (1000000b - 1b) = 1011011011b * ((1b << 6) - 1b) = (1011011011b << 6) - 1011011011b

So müsste es gehen. Auf jeden Fall ist das ein Shift um 6, nicht um 7.


Gruß
Martin

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Technische Informatik"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.englischraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]