Frage von Semmelkrieger, 12

Kann man eine 32 Bit Datei auf 64 Bit ändern?

Ich wollte fragen ob es irgentwie machbar ist eine 32 Bit DATEI auf 64 Bit zu ändern?

Antwort
von PWolff, 3

Kommt drauf an, was für eine Datei.

Bei UTF-32 zu UTF-64 (in der Praxis sind diese Formate wohl nicht definiert, aber sie sind eindeutig bestimmt) sind für die Codepunkte oberhalb 0x7fffffff Umcodierungen nötig.

Für gewöhnlich werden Dateien aber oktettweise (8-Bit-weise) ausgelesen und geschrieben.

Im Fall von ausführbaren Binärdateien nimmt man entweder einen Prozessor-Emulator, oder das 32-Bit-Subsystem des Prozessors oder man codiert die Datei um (Disassemblieren+Assemblieren).

Antwort
von KSchm, 4

Der 64 bit Befehlssatz ist im Prinzip eine Erweiterung zu dem 32 bit Befehlssatz. Es werden lediglich größere Register verwendet. Allerdings sind dann auch einige Abläufe anders: z.B. kannst du eine 64 Bit Integer Variable mit einem 64 Bit Prozessor in einem Rutsch laden und bearbeiten, während ein 32 Bit Prozessor dafür mehrere Schritte benötigt.

Jeder 64 Bit Prozessor sollte aber abwärtskompatibel sein, also auch 32 Bit Software ohne Probleme ausführen.

Umwandeln der Binärdatei geht jedenfalls nicht so ohne weiteres. Dazu müsstest du das Programm komplett neu kompilieren.

Antwort
von Parhalia, 4

Funktional müsstest Du sie dann dahingehend umprogrammieren, dass sie 64-Bit Befehlsinterpreter und Hardwarestrukturen auch nutzen könnte.

Aber warum fragst Du ? Die gängigen 64-Bit Betriebssysteme sind in der Regel vollkommen abwärtskompatibel auch zu Programmen, die in 32 Bit programmiert wurden.

Antwort
von LeCux, 6

Viele Dateien, ausser spezielle Ausnahmen in plattformunabhängigen Daten, sind da neutral von der Wortbreite der CPU.

Antwort
von Gaskutscher,

Ich befürchte du willst eigentlich etwas anderes fragen. Daher frage ich zurück:

Was genau erhoffst du dir davon?

Ich hoffe das dann klar wird, was du eigentlich vor hast und wir dir entsprechend helfen können.

Antwort
von derbusfahrer10, 6

Dateien sind bit-unabhängig

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten