compiler
-
Ein Assembler kann nur Assembler-Programme assemblieren.
-
interpreter schrieb:
Evtl solltest vllt erstmal DU dir die grundsätzlichen Unterschiede aneignen, denn ein Assembler IST ein Compiler.
Sorry, das würde ich auch nicht unterschreiben. Klar wandelt der was in Maschinencode (anders geht's ja auch nicht), aber wenn man das als TRUE betrachtet, braucht man einen Interpreter (haha! Wortspiel!) auch nicht mehr von einem Compiler unterscheiden.
Also: Assembler == Compiler == Interpreter
Ich würde das allerdings (grob) trennen.
-
Es gibt Leute die behaupten das C und TP nur "bessere" Asembler sind.
-
Lest euch die Definition des Compilers durch und überlegt dann, was ein Assembler macht. Dann werdet ihr es verstehen.
-
Ich würde mal sagen des läuft SO ab:
Der compiler wandelt den code (c-code?) in assemler source code um. Dann kommt der assembler...dann der linker...udn dann der Depp, der es ausführt.
-
interpreter schrieb:
Lest euch die Definition des Compilers durch und überlegt dann, was ein Assembler macht. Dann werdet ihr es verstehen.
Was verstehst Du unter "Definition"?!
Das, was in der Wikipedia steht?!Na gut:
Ein Compiler (auch Kompilierer oder Übersetzer) ist ein Computerprogramm, das ein in einer Quellsprache geschriebenes Programm in ein semantisch äquivalentes Programm einer Zielsprache umwandelt.
Und genau das tut ein Interpreter auch. Wenn er auch, wie Wikipedia schreibt, er es "direkt ausführt".
Ich unterscheide jedenfalls weiterhin.
-
Ich hab mal nachgeschaut.
Aus dem Englischen
assembler ~ Zusammenbauer , zusammenstellen
compil(er) ~ zusammentragen.Von daher nehmen sich die Begriffe nicht viel.
Compiler (Asembler) übersetztn einen Quellcode in einem Zug.
Gibt es einen Fehler wird abgebrochen. Solange Fehler im Quellcode sind kann nicht fertig übersetzt werden.Interpreter übersetzten einen Quellcode Schrittweise und führen die Anweisung sofort aus. Fehler im Quellcode stören nur wenn sie ausgeführt werden sollen.
-
das heißt doch logischerweiße das ich mit meinem dev-cpp compiler auch asm programme compilieren,assemblieren (sucht euch nun eins aus :p ) kann oder?
-
asm-friend schrieb:
das heißt doch logischerweiße das ich mit meinem dev-cpp compiler auch asm programme compilieren,assemblieren (sucht euch nun eins aus :p ) kann oder?
Nein. Und deine Schlussfolgerung ist auch nicht logisch.
-
aber assemblercode, falls du einer bist der alles genau nimmt oder wenn nicht dev-cpp mit welchem würde es gehen?
-
asm-friend schrieb:
das heißt doch logischerweiße das ich mit meinem dev-cpp compiler auch asm programme compilieren,assemblieren (sucht euch nun eins aus :p ) kann oder?
a) Dev-Cpp ist kein Compiler.
[ a.b) Dev-Cpp ist kein Assembler. ]
b) Falls Du "MingW"" meinst, und Assemblercode" -> Inline-Assembler?! Klar.gargyle schrieb:
Ich hab mal nachgeschaut.
Aus dem Englischen
assembler ~ Zusammenbauer , zusammenstellen
compil(er) ~ zusammentragen.Von daher nehmen sich die Begriffe nicht viel.
Compiler (Asembler) übersetztn einen Quellcode in einem Zug.
Gibt es einen Fehler wird abgebrochen. Solange Fehler im Quellcode sind kann nicht fertig übersetzt werden.Wenn wir schon dabei sind korinthenzukacken: Stimmt nicht.
int AnzahlLeben = 5; int ScreenWidth = AnzahlLeben * 5;
ist offensichtlich ein Fehler, der Compiler bricht aber die Kompilierung nicht ab.
gargyle schrieb:
Interpreter übersetzten einen Quellcode Schrittweise und führen die Anweisung sofort aus. Fehler im Quellcode stören nur wenn sie ausgeführt werden sollen.
...was letztendlich aber quasi immer mal der Fall ist. Es sei denn irgendein Hannes schreibt Code, der eh nie ausgeführt werden soll...
-
C/C++ Code:
int AnzahlLeben = 5;
int ScreenWidth = AnzahlLeben * 5;In wiefern ist das Falsch ?
Ich bin nicht so der C/C++ Programmieren.
-
gargyle schrieb:
C/C++ Code:
int AnzahlLeben = 5;
int ScreenWidth = AnzahlLeben * 5;In wiefern ist das Falsch ?
Ich bin nicht so er C/C++ Programmieren.Die Zeilen sind syntaktisch korrekt und somit ist daran garnichts falsch. Da man mit ein bißchen Textverständnis davon ausgehen kann, dass gargyle mit "Fehler" syntaktische Fehler meinte und nicht logische Fehler, (die ein Compiler sowieso nicht erkennen kann) ist das Beispiel unsinnig.
-
Jetzt weis ich immer noch nicht was da "Falsch" ist.
-
naja, die Anzahl der Leben ist halt nicht ein fünftel der Bildschirmbreite
-
Wieso ?
Ich kann auch festlegen das 1 Apfel = 3 Zitronen.
Wo ist das Problem ?
-
gargyle schrieb:
Wieso ?
Ich kann auch festlegen das 1 Apfel = 3 Zitronen.
Wo ist das Problem ?Es geht darum, dass es ein logischer Fehler im Real Life is, aber kein syntaktischer Fehler...
Definieren kann man viel, obs Sinn macht is immer ne andere Frage
-
Und warum haste das nicht gleich deutlich gemacht ?
-
was gemeint ist war eigentlich spätestens nach interpreter's posting klar :p
-
Damit wollte ich nur klar machen, wie logisch mir eure "Ein Assembler ist ein Compiler"-Annahme erscheint.
Weil dann ist ja wie gesagt auch ein Interpreter ein Compiler.
Demnächst stelle ich meine Fragen so: Der C++-Interpreter kommt mit folgender Meldung: PrintMessage() - symbol not found.