Wie versteht ein Prozessor Assembler?



  • Mit vielen parallelen Additionen natürlich. Das stimmt schon, dass Arithmetik auf Additionen basiert, nur ist das halt lange nicht alles, was eine CPU tut.



  • SeppJ schrieb:

    dot schrieb:

    Und wie gibts das dann dass meine CPU in nur 3 Zyklen eine komplette 32bit Multiplikation ausrechnen kann? Mit Additionen wär das ganz schön langsam :p

    Da wirst du aber staunen, wenn du nachliest, wie der das macht. Denn der Mutliplizierer ist tatsächlich aus Addierern und Shiftern zusammengebaut.

    Hast du nen Link dazu? Wenn man nach "CPU Multiplizierer" googelt, erhält man natürlich was anderes 😉


  • Mod

    http://de.wikipedia.org/wiki/Russische_Bauernmultiplikation bspw. (glaube aber nicht, dass das tatsächlich von neueren CPUs eingesetzt wird... :D)

    MfG SideWinder


  • Mod

    Michael E. schrieb:

    SeppJ schrieb:

    dot schrieb:

    Und wie gibts das dann dass meine CPU in nur 3 Zyklen eine komplette 32bit Multiplikation ausrechnen kann? Mit Additionen wär das ganz schön langsam :p

    Da wirst du aber staunen, wenn du nachliest, wie der das macht. Denn der Mutliplizierer ist tatsächlich aus Addierern und Shiftern zusammengebaut.

    Hast du nen Link dazu? Wenn man nach "CPU Multiplizierer" googelt, erhält man natürlich was anderes 😉

    Tatsächlich? Wenn ich google lande ich als erster Treffer beim binären Multiplikator in der Wikipedia, die erklärt wie man die Multiplikation naiv aus Addition und Shifts zusammensetzen kann und dass man das massiv parallelisieren kann und dass es auch etwas bessere Methoden gibt als diese und dass diese Methoden auch in der Praxis benutzt werden, aber dass sie trotzdem im Kern alles aus Additionen zusammensetzen, bloß ein bisschen cleverer als die naive Methode.


  • Mod

    Finde den Artikel auch nicht, lande auch nur auf Übertaktungs-Seiten. Link bitte 😃

    MfG SideWinder



  • SeppJ schrieb:

    Michael E. schrieb:

    SeppJ schrieb:

    dot schrieb:

    Und wie gibts das dann dass meine CPU in nur 3 Zyklen eine komplette 32bit Multiplikation ausrechnen kann? Mit Additionen wär das ganz schön langsam :p

    Da wirst du aber staunen, wenn du nachliest, wie der das macht. Denn der Mutliplizierer ist tatsächlich aus Addierern und Shiftern zusammengebaut.

    Hast du nen Link dazu? Wenn man nach "CPU Multiplizierer" googelt, erhält man natürlich was anderes 😉

    Tatsächlich? Wenn ich google lande ich als erster Treffer beim binären Multiplikator in der Wikipedia, die erklärt wie man die Multiplikation naiv aus Addition und Shifts zusammensetzen kann und dass man das massiv parallelisieren kann und dass es auch etwas bessere Methoden gibt als diese und dass diese Methoden auch in der Praxis benutzt werden, aber dass sie trotzdem im Kern alles aus Additionen zusammensetzen, bloß ein bisschen cleverer als die naive Methode.

    Wie machst du das? Bei mir erscheinen Treffer zum Multiplikator. Naja, ich weiß ja jetzt, wonach ich suchen muss.



  • SeppJ schrieb:

    dot schrieb:

    Und wie gibts das dann dass meine CPU in nur 3 Zyklen eine komplette 32bit Multiplikation ausrechnen kann? Mit Additionen wär das ganz schön langsam :p

    Da wirst du aber staunen, wenn du nachliest, wie der das macht. Denn der Mutliplizierer ist tatsächlich aus Addierern und Shiftern zusammengebaut.

    Gut, da war ich wiederum etwas voreilig, das stimmt am Ende natürlich gewissermaßen. Worauf ich hinauswollte: Eine CPU ist sehr sehr sehr viel mehr als ein paar Adder und Shifter. Denn der Teil der CPU der wirklich Arithmetik betreibt, also die ALU, ist nur ein wiiiiinziges und triviales Ding im Vergleich zur ganzen CPU, vor allem dem Teil der CPU der "Assembler versteht". So winzig und trivial dass es pro Core gleich einfach so einen ganzen Haufen davon gibt und die alle zusammen immer noch nur einen wahnsinnig kleinen Teil der CPU ausmachen...


  • Mod

    Vor allem weil 90% aus Caches, Instruction-Pipelining und Branch detection besteht 😃 Aber ich glaube wir reden hier schon vom "aktiven" Teil 😉

    MfG SideWinder


  • Mod

    SideWinder schrieb:

    Finde den Artikel auch nicht, lande auch nur auf Übertaktungs-Seiten. Link bitte 😃

    MfG SideWinder

    Google: binary multiplier

    Oder liegt das an diesen tollen neuen Google Features die sich die Suchgeschichte merken? Du hast für deinen neuen Computer vielleicht zu oft nach Übertaktungsseiten gesucht 😃 .



  • dot schrieb:

    Und wie gibts das dann dass meine CPU in nur 3 Zyklen eine komplette 32bit Multiplikation ausrechnen kann? Mit Additionen wär das ganz schön langsam :p

    Weil Sie einen groußarrtigen Computerr haben. 🙂

    Das ist das Geheimnis dabei.


Anmelden zum Antworten