Ist Assembler Plattformunabhängig?
-
Anfänger1 schrieb:
N'abend. Ich wollte mir ein Buch zu Assembler kaufen. Ich benutze hauptsächlich Linux aber komme um Windows nicht herum. Daher meine Frage. Ist der Code eigentlich gleich oder muss ich mir extra 2 Bücher kaufen?
Solange du Systemaufrufe abstrahierst und die CPU identisch ist, ist der Rest des
Maschinencodes gleich.Am besten du programmierst sowohl unter Linux als auch Windows auf direkter Kerneleben, so daß das OS nicht im Weg ist, dann hättest du durchaus freie Fahrt auf der CPU.
-
;fricky schrieb:
[...] zwischen denen man asm-code mit wenig aufwand portieren könnte. [...]
Wenn man den Code portieren muß, dann ist er per definition NICHT plattformunabhängig...
-
loks schrieb:
;fricky schrieb:
[...] zwischen denen man asm-code mit wenig aufwand portieren könnte. [...]
Wenn man den Code portieren muß, dann ist er per definition NICHT plattformunabhängig...
der erbsenmann wird sagen, dass es plattformunabhaengig ist wegen wenig aufwand
-
loks schrieb:
;fricky schrieb:
[...] zwischen denen man asm-code mit wenig aufwand portieren könnte. [...]
Wenn man den Code portieren muß, dann ist er per definition NICHT plattformunabhängig...
völlig richtig, rapso.
assembler-codes z.b. die nur auf der CPU arbeiten, z.b. allgemeine datenstrukturen usw. musste natürlich nicht portieren.
-
Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Rund um die Programmierung in das Forum Assembler verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
endlich habe ich verstanden wie 'Plattformunabhängigkeit' gemeint ist
und muss sagen Java ( J2ME ) ist definitiv nicht plattformunabhängig xD.Lieber Assembler und vorher wissen, als Java und sich die Exceptions zur
Laufzeit um die Ohren schlagen lassen *lol*Ich sag nur "double" und moblie Phones xD
-
Danke schon mal für die ganzen Antworten!
Eine Frage noch zu
Anolda schrieb:
Am besten du programmierst sowohl unter Linux als auch Windows auf direkter Kerneleben, so daß das OS nicht im Weg ist, dann hättest du durchaus freie Fahrt auf der CPU.
Wie kann ich denn programmieren ohne ein OS zu benutzen?
-
Danke schon mal für die ganzen Antworten!
Eine Frage noch zu
Anolda schrieb:
Am besten du programmierst sowohl unter Linux als auch Windows auf direkter Kerneleben, so daß das OS nicht im Weg ist, dann hättest du durchaus freie Fahrt auf der CPU.
Wie kann ich denn programmieren ohne ein OS zu benutzen?
-
Hallo,
ich kenn mich zwar nicht so gut aus, wie die alle hier, doch ich hatte das selbe Problem. Ich habe einen x64 PC und die meisten Tutorials/IDE gehen nur für x86-32. Was funktioniert ist FASM, auf meinen 2 PC's - ist der dann "plattformunabhängig" ?
-
heute wo das meiste ausser Mobiltelefone ja x86 ist (also die neueren Macs ebenfalls) liegt das Problem eigentlich nicht bei Assembler wegen der Plattformabhängigkeit. Code der keine Systemfunktionen (MessageBoxA oder int 21h) aufruft läuft auf einem Mac wie auf einem PC mit Linux oder WIndows oder OS/2 genau gleich. Das Problem ist nur, was will man ohne Systemfunktionen programmieren? Für einen Algorithmus zum einbauen in ein Programm sieht das anders aus. Aber plattformunabhängig muss etwas vorallem sein in dem es auf verschiedenen Betriebssystemen läuft, nicht nur auf verschiedenen CPUs. Das muss man bedenken; z.B. QT kann man auf den verschiedenen Systemen kompilieren (sogar mit anderen CPUs) und Java-Programme laufen ja sofern es die Laufzeitumgebung gibt ohne neu kompilieren. Das ist beides mit Assembler natürlich unmöglich, ausser ich wüsste nichts von einer API welche von Assembler aus aufgerufen werden kann und auf mehreren Betriebssystemen läuft
Da man aber hauptsächlich Teile eines Programmes in Assembler schreibt und kaum mehr je ein ganzes (wenn dann nur ein kleines) erübrigt sich die Frage eigentlich solange es nicht auf einem ARM-Handy laufen soll...