Seite 1 von 1

Frage zu Register EAX

Verfasst: 11.12.2005 03:57
von hanne12345
Hallo,

wenn ich richtig liege, dann ist EAX ja ein 32 Bit-Register. Wenn ich dieses
jetzt aber mit folgendem Code auslese, dann bekomme ich irgendwie immer zu wenig wieder :roll:

Code: Alles auswählen

Global aaaa.l
!MOV [v_aaaa], EAX
aaaa2$=Bin(PeekL(@aaaa))
Debug aaaa2$
Dann kommt bei Debug zum Beispiel nur 10000111111110000 raus, obwohl es 32 Stellen haben müßte. Wo liegt mein Fehler?

Verfasst: 11.12.2005 04:17
von Zaphod
du bekommst da also eine 17 stellige binärzahl raus...da nehme ich mal einfach so an, dass Bin() führende nullen abschneidet...

was übrigens auch in der hilfe steht ;)

Verfasst: 11.12.2005 04:31
von hanne12345
Lol,

Tatsache. Mit RSet haut es jetzt auch hin. Danke!!

Verfasst: 11.12.2005 05:10
von MVXA
Ich habe da auch mal eine ganz bescheidene Frage zum Thema
Binäre und diese Anzeigen. Die ganze Welt liest von Links nach
Rechts. Aber warum ist das beim PC nicht so? Warum ist das
Lo Byte rechts und das Hi Byte links? Warum nicht umgekehrt?

Verfasst: 11.12.2005 05:22
von Laurin
MVXA hat geschrieben:Die ganze Welt liest von Links nach
Rechts.
Na. Die Araber lesen von rechts nach links.
Aber warum ist das beim PC nicht so? Warum ist das
Lo Byte rechts und das Hi Byte links? Warum nicht umgekehrt?
Zahlen werden mit der größten Stelle links, und mit der kleinsten Stelle rechts geschrieben. Dadurch wird 102 zu hundertundzwei und nicht zu zweihundertundeins. Beim PC macht man es dann genauso.

Verfasst: 11.12.2005 05:26
von MVXA
find das aber total verwirrend :freak:

Verfasst: 11.12.2005 15:11
von Zaphod
ich würde es viel verwirrender finden, wenn binärzahlen als einziges zahlensystem verkehrt herum gezählt werden würden.