|
|
|
|
|
|
nubbi
offline
OC God 21 Jahre dabei !
|
gebe meldir und h4x0r recht. um das ganze verständlich zu machen, gibt es heute eine kleine einführung in assembler aaalso, das ist folgendermaßen: nehmen wir als beispiel das register EAX. E steht hierbei für "extended" (32bit), A bedeutet, dass es sich um das "erste" register handelt (man muss sie halt nummerieren). EAX (extended AX) besteht aus AL (low, niedrige 16bit) und AX (high, hohe 16bit). bei einer 32bit CPU werden von einer 16bit anwendung nur die niedrigen 16bit, also AL genutzt. bei 64bit CPUs heißt das register RAX (ka, was R genau heißt) und besteht aus EAX (32bit) und einem zweiten 32bit-teil. bei der 32bit-"emulation" werden also nur die jeweils unteren 32bit (EAX)angesprochen. es muss also eigentlich nix emuliert werden, sondern es wird halt nur die halbe bandbreite benutzt, da die programme mit der zweiten hälfte des registers einfach nichts anfangen können. angenommen, EAX (in RAX enthaltenes 32bit-register) enthält folgende bits:
01000000 10010010 00111001 10000100
| dann wäre RAX (64bit-register):
01000000 10010010 00111001 10000100 00000000 00000000 00000000 00000000
| die oberen 32bit sind einfach "leer". hoffe, das war halbwegs verständlich das ergebnis des ganzen gelabers is einfach --> es muss nix emuliert werden nubbi (Geändert von nubbi um 1:59 am Aug. 18, 2004)
|
Beiträge gesamt: 2820 | Durchschnitt: 0 Postings pro Tag Registrierung: Mai 2003 | Dabei seit: 7905 Tagen | Erstellt: 1:53 am 18. Aug. 2004
|
|
|
|
|