WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 14.04.2004, 21:47   #1
harry3
Inventar
 
Registriert seit: 11.06.2001
Alter: 38
Beiträge: 2.397


harry3 eine Nachricht über ICQ schicken
Frage Programmieren Allgemein ( ASM und C)

Hallo!


Ich hätte mal eine eher allgemeine Frage zum Programmieren:
Man sagt ja das Assembler am maschinennächsten ist, weil dort eder Befehl 1:1 umgesetzt wird.
Kann man also auch noch *.exe Dateien mit ASM erstellen für den PC?(wäre mir neu!)
Ich habe zwar schon ein bisschen C programmiert(aber nur in Turbo C++, also nix Windows), aber übers compilieren hab ich mir noch nicht so Gedanken gemacht.
Eine in C geschriebene Datei wird also dann in ASM Code umgewandelt, oder? Könnte ich also theoretisch diesen Code auch händisch eintippen und dann kompilieren???

Ich frage nur interessehalber, weil man bei meinem Taschenrechner auch ASM Programme verwenden kann, erst seit kurzem gibts auch eine C IDE dazu. C muss also auf ASM aufbauen...also deswegen kam mir der Gedanke dass man eben auch einfache Anwendungen für den PC direkt so schreiben kann oder???
Vor allem wenn auf Hardwarenähe zu achten ist wird man wohl ASM der Sprache C vorziehen(wenn ich mir ansehe wie hardwarenahe da gerechnet wird)???

Und noch was: Man könnte also theoretisch für jede Hardware C aufbauend auf ASM machen. Also könnte man auch für kleine Prozessoren , die man normalerweise in ASM programmiert, ein C Kompilierungsprogramm schreiben, so dass man auch diese Bauteile in C programmieren kann?

Wie schon gesagt, die Fragen sind eher theoretisch, würde mich aber trotzdem über Antworten freuen.


Viele Grüße,
Harri
harry3 ist offline   Mit Zitat antworten
Alt 14.04.2004, 22:40   #2
Tarjan
Quantensingularität
 
Registriert seit: 28.09.2000
Alter: 55
Beiträge: 8.336


Tarjan eine Nachricht über ICQ schicken
Standard

Wenn du einen entsprechenden Compiler hast kannst du jede Programmiersprache für jede Plattform verwenden, bzw mittels des Compilers in den Maschienencode umwandeln. Assembler ist im Prinzip ja auch eine Programmiersprache, nur dass diese sehr Prozessornahe ist. C hingegen ist eine Hochspache, d.h. sie ist nicht sehr Hardwarenahe. Die Umsetzung erfolgt eben vom Compiler.

Der Compiler erzeugt allerdings keinen Assemblercode sondern Maschienencode direkt. Genauso wie das gleiche Assemblerprogramm eben den Maschinencode erzeugt. Dass aus C Assemblercode erzeugt wird habe ich allerdings noch nicht gehört, was aber nicht heist dass es unmöglich ist. Da ja Assembler und Maschienencode sich sehr nahe stehen ist durchaus ein Compiler vorstellbar der Assemblercode erzeugt. Nur würde das nichts bringen, da der Assemblercode ja auch wiederum compiliert werden müsste.
____________________________________
Was ist klein, grün und dreieckig?
Ein kleines grünes Dreieck!


Bahnübergänge sind die härtesten Drogen der Welt! Ein Zug und du bist weg!
Tarjan ist offline   Mit Zitat antworten
Alt 15.04.2004, 14:09   #3
kikakater
Inventar
 
Registriert seit: 24.01.2001
Beiträge: 5.631


Standard

Zu Deinem Anliegen habe ich etwas passendes:

LCC Win32

C IDE (=Shell =Arbeitsumgebung =Entwicklungsumgebung)

LCC Win32 besteht aus der GUI Shell (Graphical user interface Zentrale) und den Programmen Compiler, Linker, Resourcedesigner

Unter anderem kann man sich mit diesem Compilersystem ASM Dateien aus den C Dateien erzeugen lassen ...

Einstellen kann man die Erzeugung von ASM Quelldateien im Menü Compiler > Settings -> Compiler settings

Beispiel:

Hello World
kikakater ist offline   Mit Zitat antworten
Alt 15.04.2004, 21:22   #4
harry3
Inventar
 
Registriert seit: 11.06.2001
Alter: 38
Beiträge: 2.397


harry3 eine Nachricht über ICQ schicken
Standard

Danke für Eure Antworten!

@Tarjan: Stimmt, es wird gleich Maschinencode erzeugt. Wäre ja sinnlos zuerst ASM Code erstellen, den eh keiner liest, und daraus dann erst Maschinencode zu erzeugen!

Viele Grüße,
Harri
harry3 ist offline   Mit Zitat antworten
Alt 15.04.2004, 21:33   #5
kikakater
Inventar
 
Registriert seit: 24.01.2001
Beiträge: 5.631


Standard

Kleine Korrektur dazu: Es werden bei der Compilierung - ! im Speicher ! - Memnonics (=u.a. und hauptsächlich Assembleranweisungen) angelegt (vor allen Dingen wegen Optimierungen ist dies unter allen Umständen unbedingt NOTWENDIG).

Erst diese Memnonics - eben auch und fundamental Assembleranweisungen - werden in Maschinencode umgewandelt
kikakater ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:51 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag