Verständnisproblem Hardware



  • SeppJ schrieb:

    Bashar schrieb:

    blurry333 schrieb:

    soviel ich weiß wird aber genau so in Assembler eine Schleife realisiert.

    Und was sollte dann dieser Blödsinn mit "der Assembler schreibt den Code 1000mal hintereinander"?

    Der Assembler (der Code) muss ja noch in Maschinencode übersetzt werden. Und da ist es schon ganz richtig, der Assembler (das Programm zur Übersetzung) muss dann 1000x den entsprechenden Maschinencode erzeugen, da es auf Maschinenebene keine Sprünge gibt (Wie sollte das auch funktionieren? Die Hardware ist schließlich fest verdrahtet).

    Daher auch das schon genannte Phänomen, dass Programme heute viel größer sind als früher, weil heute die meisten Schleifen viel häufiger ausgeführt werden.

    Äh?

    Intel 80x86 Assembly Language OpCodes

    JA/JNBE - Jump Above / Jump Not Below or Equal
    JAE/JNB - Jump Above or Equal / Jump on Not Below
    JB/JNAE - Jump Below / Jump Not Above or Equal
    JBE/JNA - Jump Below or Equal / Jump Not Above
    JC - Jump on Carry
    JCXZ/JECXZ - Jump if Register (E)CX is Zero
    JE/JZ - Jump Equal / Jump Zero
    JG/JNLE - Jump Greater / Jump Not Less or Equal
    JGE/JNL - Jump Greater or Equal / Jump Not Less
    JL/JNGE - Jump Less / Jump Not Greater or Equal
    JLE/JNG - Jump Less or Equal / Jump Not Greater
    JMP - Unconditional Jump
    JNC - Jump Not Carry
    JNE/JNZ - Jump Not Equal / Jump Not Zero
    JNO - Jump Not Overflow
    JNS - Jump Not Signed
    JNP/JPO - Jump Not Parity / Jump Parity Odd
    JO - Jump on Overflow
    JP/JPE - Jump on Parity / Jump on Parity Even
    JS - Jump Signed

    Hab ich Opcodes nicht verstanden?



  • Check mal deinen Ironiedetektor. 💡 👍



  • Kenner der Ironiker schrieb:

    Check mal deinen Ironiedetektor. 💡 👍

    Haha der scheint wohl in der Werkstatt zu sein.



  • Dies alles dient nur dazu blurry333 ausführlich, richtig und gut auszubilden.
    SeppJ hat das daher schon richtig erklärt.

    blurry333 lerne das, was SeppJ gesagt hat, du darfst es dann auch in deiner Hochschule in einem Seminar so vortragen.



  • Zeus schrieb:

    SeppJ schrieb:

    Bashar schrieb:

    blurry333 schrieb:

    soviel ich weiß wird aber genau so in Assembler eine Schleife realisiert.

    Und was sollte dann dieser Blödsinn mit "der Assembler schreibt den Code 1000mal hintereinander"?

    Der Assembler (der Code) muss ja noch in Maschinencode übersetzt werden. Und da ist es schon ganz richtig, der Assembler (das Programm zur Übersetzung) muss dann 1000x den entsprechenden Maschinencode erzeugen, da es auf Maschinenebene keine Sprünge gibt (Wie sollte das auch funktionieren? Die Hardware ist schließlich fest verdrahtet).

    Daher auch das schon genannte Phänomen, dass Programme heute viel größer sind als früher, weil heute die meisten Schleifen viel häufiger ausgeführt werden.

    Äh?

    Intel 80x86 Assembly Language OpCodes

    JA/JNBE - Jump Above / Jump Not Below or Equal
    JAE/JNB - Jump Above or Equal / Jump on Not Below
    JB/JNAE - Jump Below / Jump Not Above or Equal
    JBE/JNA - Jump Below or Equal / Jump Not Above
    JC - Jump on Carry
    JCXZ/JECXZ - Jump if Register (E)CX is Zero
    JE/JZ - Jump Equal / Jump Zero
    JG/JNLE - Jump Greater / Jump Not Less or Equal
    JGE/JNL - Jump Greater or Equal / Jump Not Less
    JL/JNGE - Jump Less / Jump Not Greater or Equal
    JLE/JNG - Jump Less or Equal / Jump Not Greater
    JMP - Unconditional Jump
    JNC - Jump Not Carry
    JNE/JNZ - Jump Not Equal / Jump Not Zero
    JNO - Jump Not Overflow
    JNS - Jump Not Signed
    JNP/JPO - Jump Not Parity / Jump Parity Odd
    JO - Jump on Overflow
    JP/JPE - Jump on Parity / Jump on Parity Even
    JS - Jump Signed

    Hab ich Opcodes nicht verstanden?

    Bring blurry333 bitte nichts falsches bei.



  • Man sollte Programme auch nicht zu lange laufen lassen, denn dann werden bestimmte Schleifen wie die Main-Event-Loop viel zu häufig ausgeführt und die exe-Dateien werden riesig. Wenn das gesamte Programm in der Main-Loop läuft, ist die Dateigröße mindestens proportional zur Ausführungszeit (das, was man unter Windows mit rechter Maustaste unter Eigenschaften sieht, ist nur ein Schätzwert basierend auf der durchschnittlichen Ausführungszeit).

    Man merkt das sehr gut daran, dass der Speicherplatz auf der Festplatte weniger wird, wenn man viel Software länger laufen lässt.

    Diese JMP-Befehle gibt es nicht, das sind so ein paar Ideen, die nie realisiert wurden. Leider gibt es immer noch viele Autoren, die vermitteln, dass das wirklich verwendet wird. 👎 Aber hier wird ja zum Glück damit aufgeräumt.


  • Mod

    Zeus schrieb:

    Intel 80x86 Assembly Language OpCodes

    JA/JNBE - Jump Above / Jump Not Below or Equal
    JAE/JNB - Jump Above or Equal / Jump on Not Below
    JB/JNAE - Jump Below / Jump Not Above or Equal
    JBE/JNA - Jump Below or Equal / Jump Not Above
    JC - Jump on Carry
    JCXZ/JECXZ - Jump if Register (E)CX is Zero
    JE/JZ - Jump Equal / Jump Zero
    JG/JNLE - Jump Greater / Jump Not Less or Equal
    JGE/JNL - Jump Greater or Equal / Jump Not Less
    JL/JNGE - Jump Less / Jump Not Greater or Equal
    JLE/JNG - Jump Less or Equal / Jump Not Greater
    JMP - Unconditional Jump
    JNC - Jump Not Carry
    JNE/JNZ - Jump Not Equal / Jump Not Zero
    JNO - Jump Not Overflow
    JNS - Jump Not Signed
    JNP/JPO - Jump Not Parity / Jump Parity Odd
    JO - Jump on Overflow
    JP/JPE - Jump on Parity / Jump on Parity Even
    JS - Jump Signed

    Hab ich Opcodes nicht verstanden?

    Keiner dieser Opcodes sagt "Schleife". Darüber haben Bashar und Sone doch auch schon diskutiert. 😉



  • Also Leute, klar gibt es Schleifen.

    Nur...
    Für 1x Schleife braucht man 99x Dunkelkristall.
    Und Dunkelkristall ist ein Rare-Drop von den Dark-Aeons und ein paar wirklich fiesen Monster-Arena Kreaturen.

    Bis man also 1x Schleife beinander hat ist man alt und grau => ist also nicht sehr wirtschaftlich.



  • Aber im AH sind die relativ billig... nur 2k. Also schön sparen. :p



  • Deswegen hat ja Intel Elerium 115 entwickelt, damit geht's schneller.


Anmelden zum Antworten