Kein asm in Standard Edition?
-
Hallo Leute!
Ich habe den Borland C++ Builder 4.0 Standard Edition, und ein Problem beim kompilieren von Assembler-Code. Denn der blöde Compiler erzeugt anstatt einer .OBJ oder einer zu erwartenden .EXE-Datei nur eine .ASM-Datei mit dem übersetztem Programm drin.Mein Code siehst so aus:
#pragma inline . . . asm push dwTemp;
Aber es geht nicht. Da hat sich ja Borland wieder was tolles einfallen lassen, denn eigentlich wird doch jedes C++-Programm zuerst in ASM übersetzt und anschliessend assembliert oder wie oder was?? Denn ein TASM.EXE gibt es bei mir nicht im BIN-Verzeichnis. Und wenn ich auf den Link http://www.c-plusplus.net/forum/viewtopic.php?t=49097 verweise, kann ich nur sagen, das einige User in diesem Forum nicht in der Lage sind, vernünftige Antworten zu einer vernünftigen Frage zu geben.
Hier eine Liste der Progs die ich im /BIN habe:
bcb.exe
bcc32.exe
bordbg41.exe
brc32.exe
brcc32.exe
compress.exe
convert.exe
cpp32.exe
dcc32.exe
fconvert.exe
grep.exe
idetobpr.exe
ilink32.exe
imagedit.exe
impdef.exe
implib.exe
instreg.exe
make.exe
tdstrp32.exe
tdump.exe
tlib.exe
touch.exe
tregsvr.exe
trigraph.exe
vctobpr.exe
vctobpru.exeDanke & Gruss,
~cp code_pilot
-
code_pilot schrieb:
Kein asm in Standard Edition?
Genau, gibt's erst ab Professional.
eigentlich wird doch jedes C++-Programm zuerst in ASM übersetzt und anschliessend assembliert oder wie oder was?
Nein, es wird direkt in Maschinencode übersetzt. Ansonsten hättest du mit deinem BCB ja wohl noch kein einziges Programm erstellen können.
Es gibt von Borland eine (ältere) TASM-Freewarevariante, ob die sich im BCB einbinden lässt weiss ich allerdings nicht. Siehe auch den entsprechenden FAQ-Beitrag.
-
Hmmm naja dann erstmal danke.
Shitte, also ich wollte mir eigentlich jetzt nicht unbedingt extra den TASM32 kaufen, nur um ein Programm zu testen. Den Netwide Assembler (NASM) oder so kann man dafür nicht benutzen??
Grüsse,
~cp code_pilot
-
code_pilot schrieb:
Den Netwide Assembler (NASM) oder so kann man dafür nicht benutzen?
Keine Ahnung, ich denke mal nicht.
Wenn du nur den Code testen willst könntest du dir bei Borland die Trial-Version des BCB6 Enterprise herunterladen.
-
Äh blöde Frage... aber reicht es nicht, wenn du das Object-File das NASM generiert einfach in das Projekt einbindest und die Funktionen daraus aufrufst? Müsste doch eigentlich gehen?
-junix
-
hallo,
der assembler heisst beim builder auch nicht Tasm.exe sondern tasm32.exe und ist im bin verzeichnis, das ist ein vollwertiger tasm, aber ob der in der standard dabei ist weiß ich nicht, ich rede vom cbuilder 5 enterprise...
ein c/c++ compiler ruft während seiner tätigkeit tatsächlich den assembler auf...
mfg
murphy