JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=05f59b52746720d4155c20eb45381f15Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Kann man Assembler-Code in C++-Code umzuwandeln??

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
JkerryZ
JLI Master Trainee



Anmeldedatum: 18.05.2004
Beiträge: 575
Wohnort: Wolfsburg
Medaillen: Keine

BeitragVerfasst am: 22.01.2005, 17:37    Titel: Kann man Assembler-Code in C++-Code umzuwandeln?? Antworten mit Zitat

Hallo,
Gibt es eine Möglichkeit Assembler-Code in C++-Code umzuwandeln?

Gruß
JkerryZ
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 22.01.2005, 17:43    Titel: Antworten mit Zitat

nein.

Assembler ist zu Komplex und auf LowLevel basierend, das man es nicht in einen Ordentlichen C oder C++ Code umwandeln kann.

Dein C++ Code wird bevor er zu einer *.exe gelinkt wird sowieso erst in Assembler umgewandelt vom compiler.

Der Umgekehrte weg ist jedoch unmöglich! Du kannst aus einer *.exe den Assembler code bekommen, auch von Spielen wie Half-Life 2 und co, jedoch ist das disassemblen illegal.

Ich hatte vor 3 jahren mal versucht einen Translator für Assembler->C geschrieben, der versuchen sollte ein HelloWorld-Assemblerprogramm in ein C Programm translieren sollte. Konnte man jedoch knicken, der Code war grottig und je nachdem wie Du Dein Assemblerprogramm gecodet hast, ist es schon unmöglich alles zu berücksichtigen.

Brainfuck2C ist da einfacher Wink
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
GreveN
JLI Master


Alter: 38
Anmeldedatum: 08.01.2004
Beiträge: 901
Wohnort: Sachsen - Dresden
Medaillen: Keine

BeitragVerfasst am: 22.01.2005, 18:33    Titel: Antworten mit Zitat

C++-Code sicher nicht, aber einfacher C Code sollte möglich sein...
Natürlich ist der Code mehr oder weniger unbrauchbar und über den Nutzen lässt sich natürlich streiten... Wink

http://www.jliforum.de/board/viewtopic.php?t=2592
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Yahoo Messenger MSN Messenger
JkerryZ
JLI Master Trainee



Anmeldedatum: 18.05.2004
Beiträge: 575
Wohnort: Wolfsburg
Medaillen: Keine

BeitragVerfasst am: 23.01.2005, 08:56    Titel: Antworten mit Zitat

Gut, Danke erstmal.

Unter dem Link, habe ich mir mal dieses Boomerang Programm geladen. Da gibts aber nur ein Konsolenfenster was einmal aufblitzt. War das bei euch auch so? Oder geht das Programm bei mir nur nicht? Wink
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 23.01.2005, 09:29    Titel: Antworten mit Zitat

starte es mal von der console heraus.
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Jonathan_Klein
Living Legend


Alter: 37
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 23.01.2005, 10:33    Titel: Antworten mit Zitat

tja, ist wohl so ein Prog dem man als Parameter die Datei die es umwandeln soll übergeben muss. Es sollte dazu ne Dokumentation geben.
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
JkerryZ
JLI Master Trainee



Anmeldedatum: 18.05.2004
Beiträge: 575
Wohnort: Wolfsburg
Medaillen: Keine

BeitragVerfasst am: 23.01.2005, 11:53    Titel: Antworten mit Zitat

Ja, irgendsowas muss es wohl sein. Bei Screenshots auf Sourceforge sieht man auch richtige Windowsfenster und nicht so eine Konsole.
Wenn ich das ganze aus der Konsole heraus starte, sagt er nur folgendes:
Zitat:
usage: boomerang [ switches ] <program>
boomerang -h for switch help


und dann isser wieder im Verzeichnis zurück...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
C++Builder
Senior JLI'ler



Anmeldedatum: 04.10.2003
Beiträge: 235

Medaillen: Keine

BeitragVerfasst am: 23.01.2005, 14:11    Titel: Antworten mit Zitat

naja er will das du ihm die .exe übergibst die du decompilieren willst oder -h für die Hilfe

für die Hilfe:

Code:
boomerang.exe -h


zum decompilieren:

Code:
boomerang.exe progzumdecompilieren.exe


Noch nie mit nem Konsolenprogramm was zu tun gehabt?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
JkerryZ
JLI Master Trainee



Anmeldedatum: 18.05.2004
Beiträge: 575
Wohnort: Wolfsburg
Medaillen: Keine

BeitragVerfasst am: 23.01.2005, 15:48    Titel: Antworten mit Zitat

C++Builder hat Folgendes geschrieben:
Noch nie mit nem Konsolenprogramm was zu tun gehabt?

Ausser mit meinen eigenen Hello-World-Anwendungen eigentlich nicht Embarassed

Wenn ich dann zwei exe-Dateien in eine Zeile der Konsole eintippe, nur durch ein Leerzeichen getrennt wie hier im Besipiel, kommt folgende Ausgabe:
Zitat:
? No Slash in argv[0]!


Was habe ich denn nun schon wieder falsch gemacht? Crying or Very sad


Zuletzt bearbeitet von JkerryZ am 23.01.2005, 16:02, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
FH
Super JLI'ler


Alter: 36
Anmeldedatum: 16.10.2004
Beiträge: 438

Medaillen: Keine

BeitragVerfasst am: 23.01.2005, 15:58    Titel: Antworten mit Zitat

Ich versteh deinen Satz nicht.
Deine Eingabe muss exakt so lauten: Mit der DOS-Konsole in das Verzeichnis von Bomerang wechseln, dann die EXE, die decompiliert werden soll, in das selbe Verzeichnis kopieren, dann:
Code:
boomerang ExeName.exe

Und nicht vertippen! Wink
Gruß

FH
_________________
goto work, send your kids to school
follow fashion, act normal
walk on the pavement, watch T.V.
save for your old age, obey the law
Repeat after me: I am free
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
JkerryZ
JLI Master Trainee



Anmeldedatum: 18.05.2004
Beiträge: 575
Wohnort: Wolfsburg
Medaillen: Keine

BeitragVerfasst am: 23.01.2005, 16:09    Titel: Antworten mit Zitat

Ich habe meinen Satz auch nicht verstanden Wink ich habe ihn mal korrigiert.

Und eigentlich stimmt alles was ich da eintippe.
Ich mach das z.B. so:
Konsole öffnen und dann:
Zitat:
d:
cd Boomerang
boomerang.exe programm.exe


Und dann kommt immer diese Meldung:
Zitat:
? No Slash in argv[0]!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
PeaceKiller
JLI Master


Alter: 36
Anmeldedatum: 28.11.2002
Beiträge: 970

Medaillen: Keine

BeitragVerfasst am: 23.01.2005, 16:34    Titel: Antworten mit Zitat

probier mal:
Code:
boomerang ./programm.exe

_________________
»If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
JkerryZ
JLI Master Trainee



Anmeldedatum: 18.05.2004
Beiträge: 575
Wohnort: Wolfsburg
Medaillen: Keine

BeitragVerfasst am: 23.01.2005, 18:02    Titel: Antworten mit Zitat

PeaceKiller hat Folgendes geschrieben:
probier mal:
Code:
boomerang ./programm.exe

nope, gleicher Fehler... Confused
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
FH
Super JLI'ler


Alter: 36
Anmeldedatum: 16.10.2004
Beiträge: 438

Medaillen: Keine

BeitragVerfasst am: 23.01.2005, 18:47    Titel: Antworten mit Zitat

Ich hab mal mein gesamtes Wissen Wink ausgepackt und auf dem Boden noch was gefunden Wink :
Code einer Main mit Parametern von Kommandozeile:
CPP:
int main(int argc, char* argv[])

Der int ist die Anzahl der Kommandozeilenparameter, argv sind die Parameter.
Jeder EXE wird als erster Paramter (also in argv[0]) ihr eigner Pfad und ihr eigener Name übergeben. Demnach würde bei "? No Slash in argv[0]!" ein Slash im Pfad/Namen fehlen. Das ist entweder ein Fehler in der EXE (nochmal laden???), oder im OS...
Versuch mal folgendes: Kopier alles in ein Verzeichnis, dessen Name kürzer als 9 Zeichen ist. Ansonsten neu laden, wenn dann nicht: kA
Gruß

FH
<edit>
Interessantes Syntaxhighlight... Erstes int geht nicht, zweites geht.
</edit>
_________________
goto work, send your kids to school
follow fashion, act normal
walk on the pavement, watch T.V.
save for your old age, obey the law
Repeat after me: I am free
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dragon
Super JLI'ler


Alter: 38
Anmeldedatum: 24.05.2004
Beiträge: 340
Wohnort: Sachsen
Medaillen: Keine

BeitragVerfasst am: 29.01.2005, 13:07    Titel: Antworten mit Zitat

schaut doch mal auf der Hompage nach, dort findet man folgendes:

Zitat:
19. Why do I keep getting some message about "no slash in argv[0]"?

This is fixed in the latest source code, available using CVS. The older binary release is simply looking for a slash (or reverse slash) in the name of the executable, e.g. use ".\boomerang switches..." instead of just "boomerang switches...". Unix users do this automatically, because of the security risk of having the current directory in the path.

_________________
Nur wenn man ein Ziel sieht, kann man es auch treffen.
___________
Mein Leben, Freunde und die Spieleentwicklung
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum