| Zeile 4: | Zeile 4: | ||
== Aufbau einer 32-Bit-[[CPU]] == | == Aufbau einer 32-Bit-[[CPU]] == | ||
| + | === Mehrzweckregister === | ||
Die 32 Bit x86 Prozessoren verfügen über 4 je 32 Bit breite Mehrzweck-Register, wobei das 'E' jeweils für ''Extended'' steht: | Die 32 Bit x86 Prozessoren verfügen über 4 je 32 Bit breite Mehrzweck-Register, wobei das 'E' jeweils für ''Extended'' steht: | ||
* EAX (engl.: <b>A</b>ccumulator Register) wird in [[C]] für Rückgabewerte von Funktionen verwendet | * EAX (engl.: <b>A</b>ccumulator Register) wird in [[C]] für Rückgabewerte von Funktionen verwendet | ||
| Zeile 18: | Zeile 19: | ||
* ESP (engl.: <b>S</b>tack <b>P</b>ointer) zeigt auf das aktuelle Element des Stacks, sollte nicht verändert werden wenn man nicht weiß was man tut | * ESP (engl.: <b>S</b>tack <b>P</b>ointer) zeigt auf das aktuelle Element des Stacks, sollte nicht verändert werden wenn man nicht weiß was man tut | ||
| − | + | === Segment-Register === | |
* DS (engl.: <b>D</b>ata <b>S</b>egment) | * DS (engl.: <b>D</b>ata <b>S</b>egment) | ||
* CS (engl.: <b>C</b>ode <b>S</b>egment) | * CS (engl.: <b>C</b>ode <b>S</b>egment) | ||
| Zeile 26: | Zeile 27: | ||
* ES | * ES | ||
| − | Zusätzliche Spezial-Register | + | === Zusätzliche Spezial-Register === |
* EIP (engl.: <b>I</b>nstruction <b>P</b>ointer) zeigt auf den nächsten auszuführenden Befehl | * EIP (engl.: <b>I</b>nstruction <b>P</b>ointer) zeigt auf den nächsten auszuführenden Befehl | ||
* [[EFLAGS]] (engl.: Flag Register) die einzelnen Bits haben unterschiedliche Bedeutung und werden für bedingte Sprungbefehle eingesetzt | * [[EFLAGS]] (engl.: Flag Register) die einzelnen Bits haben unterschiedliche Bedeutung und werden für bedingte Sprungbefehle eingesetzt | ||