Wie versteht ein Prozessor Assembler?



  • Hallo 😉
    Mich interessiert schon lange wie ein Computer Software verarbeiten kann. Ich meine das Geheimnissvolle das zwischen der Soft und der Hardware liegt. Wie können die "Einsen und Nullen" im Arbeitsspeicher die Hardware wie den bspl den Lüfter beeinflussen also wie interpretiert er das. Ich wäre sehr dankbar wenn ich hierzu ein paar Informationen oder Verweise bekommen könnte 🙂
    Gruß Unknown





  • Du solltest ein Buch wie das folgende lesen:
    Computer Organization and Design | ISBN: 0123744938



  • Ich kann dieses Buch sehr empfehlen: Digital Design and Computer Architecture.

    Haben wir in der Digitaltechnik Vorlesung verwendet und ich finde das Buch sehr gut.



  • Ichwillswissen schrieb:

    Hallo 😉
    Mich interessiert schon lange wie ein Computer Software verarbeiten kann. Ich meine das Geheimnissvolle das zwischen der Soft und der Hardware liegt. Wie können die "Einsen und Nullen" im Arbeitsspeicher die Hardware wie den bspl den Lüfter beeinflussen also wie interpretiert er das. Ich wäre sehr dankbar wenn ich hierzu ein paar Informationen oder Verweise bekommen könnte 🙂
    Gruß Unknown

    Wichtigste Grundlage:

    Alle Vorgänge im Rechner basieren auf binärer Addition die durch Volladdierer aus NAND-Gattern vorgenommen wird.



  • F98 schrieb:

    Alle Vorgänge im Rechner basieren auf binärer Addition die durch Volladdierer aus NAND-Gattern vorgenommen wird.

    Ist das eine Übungsaufgabe? Er soll erst die empfohlenen Bücher lesen und dich dann widerlegen?



  • F98 schrieb:

    Alle Vorgänge im Rechner basieren auf binärer Addition die durch Volladdierer aus NAND-Gattern vorgenommen wird.

    Das stimmt nichtmal wenn du nen Rechner hast der nur Addieren kann :p



  • ... irgendwie hab ich geahnt, dass da was kommt.

    Ok, ich ziehe "alle Vorgänge" zurück und beschränke mich auf CPU. Die Rechenvorgänge basieren auf binärer Addition + Registergeschiebe.



  • 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


  • Mod

    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.



  • 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