Verständnisproblem Hardware



  • Sone schrieb:

    Aber würdest du den JE -Befehl nicht als Schleife einstufen?

    Du etwa? Dann benutzt du wohl auch if-Schleifen...



  • otze schrieb:

    Sone schrieb:

    Das einzige Problem

    Das einzige Problem, das ich da sehe ist, dass die Schleife syntaktisch falsch ist.

    Das ist Pseudocode.



  • Bashar schrieb:

    Sone schrieb:

    Aber würdest du den JE -Befehl nicht als Schleife einstufen?

    Du etwa? Dann benutzt du wohl auch if-Schleifen...

    Ich meinte im Assembler. Ich habe keine Ahnung von Assembler, aber nutzt man nicht bspw. den oben genannten Befehl um eine Zählschleife zu realisieren?



  • blurry333 schrieb:

    Schleifen gibts in Maschinensprache also gar nicht. Wenn ich 1000 mal eine Schleife durchlaufe, dann schreibt der Assembler 1000 mal das gleiche hin. Wird Zeit dass man das irgendwie in Hardware hinbekommt.

    Deshalb sind Spiele heute mehrere Gigabyte groß. Die Hauptschleife in so einem Spiel müsste ja eine Endlosschleife sein, dafür bräuchten wir unendlich viel Speicher. Geht ja nicht! Deshalb tricksen die Entwickler und machen eine Fast-unendlich-Schleife, also die wird echt oft ausgeführt. Dafür wird der Code auch millionen mal vom Assembler geklont und zack, schon haben wir 20-Gb große Spiele 😞

    Übrigens, falls ich rausfinde wer von euch als blurry rumtrollt, kriegt derjenige einen gewaltigen Arschtritt für 3 Jahre belastete Nerven.



  • Sone schrieb:

    Ich habe keine Ahnung von Assembler, aber nutzt man nicht bspw. den oben genannten Befehl um eine Zählschleife zu realisieren?

    Ja unter anderem, kann man. Man benutzt auch ADD, um einen Flugsimulator zu realisieren. Wieso fühl ich mich gerade genauso wie beim Beantworten einer blurry-Frage?



  • Weil ich genauso wenig von Assembler weiß wie Blurry?



  • Wenn es hier nur um Wissen ginge, hätte wir den ganzen Stress nicht ... soll ich dir nun wirklich ernsthaft erklären, dass ein JE ein bedingter Sprung ist, also grob einem if (zero_flag) goto ... entspricht, und damit bestenfalls ein Teil einer Implementierung einer Schleife darstellen kann?



  • Ich weiß, was JE macht, danke. So unwissend bin ich nicht. 🙂
    Natürlich ist JE keine Schleife, es ist nur eine Assembler-Anweisung.



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

    .Schleife:                   ; repeat ... until (ecx == 5)
        ; Anweisungen
        inc ecx
        cmp ecx, 5
        jne .Schleife
    


  • blurry333 schrieb:

    soviel ich weiß

    Armer Idiot 😞



  • 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"?



  • 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"?

    Vielleicht denkt er, dass Assembler so eine Art Makrosprache ist, wo eine Schleife durch Textersetzung realisiert wird?
    (P.S.: Er redet davon, dass der Assembler den ASM-Code bei der Umwandlung in Maschinencode 1000-Mal hintereinander schreibt)



  • Vielleicht ist blurry autoexec.bat (Supercodes)


  • Mod

    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.



  • config.sys schrieb:

    Vielleicht ist blurry autoexec.bat (Supercodes)

    💡 ⚠ 😡 😞



  • 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.


Anmelden zum Antworten