Hallo, guten Tag.
In Turbo C 2 kann man ja ASM verwenden wenn man es so macht: "asm mov
ax,bx".
Dann mit TCC -B testasm.c compiliert. Natürlich muss sich der TASM im
Ordner befinden.
Wie macht man denn bitte eine Schleife?
Es kommt eine Fehlermeldung : undefenid label 'more'
Wie kann man auch bitte Variable übergeben?
Ist lange her, aber du musst normale C Label, wie sie auch für goto
nutzbar sind verwenden.
void testasm()
{
more:
{
asm mov ax,bx ;
asm jns more ;
}
}
Blöde Frage vielleicht, aber warum schreibst Du die Funktionen nicht
gleich in TASM. Dann hast Du die ganzen Einschränkungen von Inline
Assembler nicht.
Peter B. schrieb:> Natürlich muss sich der TASM im> Ordner befinden.
muss er das wirklich - inline-assembler hat doch eine leicht andere
syntax, was soll der TASM damit anfangen?
und wieder kein vollständiges Programm... Das Forum ist sicher nicht
dazu da dir jede Kleinigkeit in Häppchen zu zeigen. Lad dir jetzt
endlich mal die TC Handbücher von bitsavers.org. Dort ist alles
ausführlich beschrieben. Diesen Hinweis hast du übrigens schon vor
Wochen in einem der anderen Threads bekommen.
Ohne TASM.EXE passierte nichts.
--------------------
muss er das wirklich - inline-assembler hat doch eine leicht andere
syntax, was soll der TASM damit anfangen?
--------------------
ganz unten der hinweis:
https://stackoverflow.com/questions/47580731/how-to-write-inline-assembly-with-turbo-c-2-01
So funktioniert es: tcc testasm.c , der TASM wird dann vom TCC
aktiviert.
Print ist dann 1255
Peter B. schrieb:> So funktioniert es: tcc testasm.c , der TASM wird dann vom TCC aktiviert
Das ist (mal wieder) kompletter Unsinn was du hier schreibst.
tcc braucht in keinem Fall tasm um Inline asm übersetzen zu können.
tasm ist nur notwendig wenn du dein c Programm mit -B zuerst in ein
Assembler Programm ausgibst.
-----------------------
Das ist (mal wieder) kompletter Unsinn was du hier schreibst.
----------------------
Du schreibst immer so nette Sätze....
Macht wohl diese Corona-Zeit. Entspann dich mal...oder man sagt auch :
Komm mal wieder auf diese Welt.
Man kann auch so schreiben :
----------------------------------------------------------------------
Den TASM brauchts du nicht für Inline, nur wenn du das -B benutzt.
Ich wünsche dir noch eine schöne Zeit.
----------------------------------------------------------------------
Peter B. schrieb:> Du schreibst immer so nette Sätze....> Macht wohl diese Corona-Zeit. Entspann dich mal...oder man sagt auch :> Komm mal wieder auf diese Welt.
Du provozierst so ein Verhalten in dem du nur Stückchenweise Infos raus
gibts, ewig (in anderen Post) nicht direkt antwortest und dann noch
solche Sachen wie mit dem Inline-Assembler postest
der TASM ist ein unabhängiges Produkt (wo hattest du den her?) und die
inline-asm Syntax wird von TASM nicht verstanden weil die C-orientiert
ist
bei mir baut dein Beispiel ohne TASM
cppbert schrieb:> der TASM ist ein unabhängiges Produkt (wo hattest du den her?) und die> inline-asm Syntax wird von TASM nicht verstanden weil die C-orientiert> ist
ich hab Borland C++ V2.0
der TASM "IST" dabei aber ich kann alle Tasm Exen verschieben und es
geht trotzdem, die Frage ist wiso du bei dir den TASM reinkopieren
musstes?
Ich habe kein Turbo 2 C++ ich habe den Turbo C 2.
---------------------------------------------
> der TASM ist ein unabhängiges Produkt (wo hattest du den her?) und die> inline-asm Syntax wird von TASM nicht verstanden weil die C-orientiert> ist
---------------------------------------------
Der TASM ist mit dabei bei Turbo C 2
Der TASM versteht nicht die Syntax mit diesem {} sondern nur mit :
asm mov ax,bx ; siehe weiter oben mein Programm.
.........
.........
Peter B. schrieb:> Ich habe kein Turbo 2 C++ ich habe den Turbo C 2.>> --------------------------------------------->> der TASM ist ein unabhängiges Produkt (wo hattest du den her?) und die>> inline-asm Syntax wird von TASM nicht verstanden weil die C-orientiert>> ist> --------------------------------------------->> Der TASM ist mit dabei bei Turbo C 2
Der unterschied zwischen Borland und Turbo ist nur die Menge an Libs und
supportete Systeme, die Tasm version ist bestimmt die gleiche
> Der TASM versteht nicht die Syntax mit diesem {} sondern nur mit :
Klar, aber warum soll er die inline syntax können? Und nochmal: wenn er
dabei ist, warum musstest du ihn "hineinkopieren"?
Und welches interface soll denn der kompiler da bedienen, es gibt ja
nicht wie beim linker die obj dateien, höchsten du kompilierst über den
Weg mit assembler listings mit -B oder als option in der IDE
--------------------------------------------
warum musstest du ihn "hineinkopieren"?
--------------------------------------------
Weil er auf eine andere Disk liegt von Turbo c 2 als Erweiterung.
------------------------
Mit dem turbo c 2 und dem tasm scheinst du recht zu haben, sehr
verwirrend, mit dem borland c 2 geht es
------------------------
So wie ich euch von hier kenne , spielt ihr damit nicht mehr.
Alles höher...alles schneller.
Wenn du weiterhin so skeptisch bist , reicht dein Leben nicht aus
um auch noch die anderen schönen Sachen kennen zu lernen.
Peter B. schrieb:> Wenn du weiterhin so skeptisch bist , reicht dein Leben nicht aus> um auch noch die anderen schönen Sachen kennen zu lernen.
Es war doch nur ein Buchstabe anders :)
bcc gegen tcc, sogar die Version hat gestimmt
Eine eigene Frage?
Dieser Thread ist über 6 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.