000
08.09.2003, 14:10 Uhr
virtual
Sexiest Bit alive (Operator)
|
Ich bin mal gespannt, wie viele Pageimpressions dieses Rätsel bekommt .
Here we go:
Als Bytesex bzw. Endian bezeichnet man die Anordnung der Bytes im Speicher, zB bei 32 Bit Werten. Wenn man zB von dem Wert 0x01020304 (==16909060) ausgeht, dann kann ein Prozessor auf die Idee kommen, diese Zahl im Speicher als die Folge der 4 Bytes (1, 2, 3, 4) anzulegen (Big Endian), oder aber (4, 3, 2, 1) (Little Endian). Daneben gibt es noch "Middle Endiane", aber ich finde die Welt mit zwei Gechlechtern schon verwirrend genug, daher wollen wir nur die beiden Little und Big berücksichtigen. Die Aufgaben:
1. Schreibe eine Routine, welche Ermittelt, welchen Geschlechts der Rechner ist: Big oder Little Endian.
2. Schreibe eine Routine, die in der Lage ist 32-Bit Daten so zu schreiben, daß folgende Bedingung erfüllt sind: a) Pro wert dürfen nur 4 Byte geschrieben werden (also keine Textdateien!) b) Das geschriebene soll sowohl von einem Big- alsauch Little Endian Rechner lesbar sein (und natürlich gleiche Ergebnisse liefern!). Unabhängig davon, ob es auf einem Little- oder Big-Endian rechner geschrieben wurde. -- Gruß, virtual Quote of the Month Ich eß' nur was ein Gesicht hat (Creme 21) Dieser Post wurde am 08.09.2003 um 15:51 Uhr von virtual editiert. |