Frage von liebesluemmel, 51

Für was wird Maschinensprache angewendet?

Naja es würde mich interessieren für was man Maschinensprache verwendet.

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von PWolff, 22

Das ist die einzige Sprache, die ein Prozessor wirklich versteht. Deshalb werden alle Programme (sofern sie nicht "interpretiert" werden) letztich in Maschinensprache übersetzt.

Als Mensch kriegt man den direkten Maschinencode normalerweise nur zu Gesicht, wenn man entweder einen neugierigen Blick hineinwirft oder den "Ur-Assembler" für einen neuen Prozessor zusammenbaut, der die einigermaßen menschenlesbaren Assemblerbefehle (Kürzel für Maschinenbefehle) 1:1 in Maschinencode übersetzt. Alle weiteren Sprachübersetzer bauen auf "primitiveren" Übersetzern auf, letztlich auf diesem.

Antwort
von W00dp3ckr, 27

1. In kleinen, energiesparenden Systemen, wo mit der Software ein schwacher Rechner optimal ausgereizt werden soll, oder

2. Kleine Bestandteile von größerer Software, bei denen es sehr auf die Geschwindigkeit ankommt. Der Rest dieser Software wird dann in anderen Sprachen geschrieben.

Expertenantwort
von TeeTier, Community-Experte für programmieren, 14

Man benutzt Maschinensprache zum Umprogrammieren (auch "Cracken" genannt) von Software, wenn man nicht gerade einen komfortablen Debugger mit Disassembler vor der Nase hat.

Dafür reicht dann im einfachsten Fall ein simpler Hexeditor aus, eignet sich aber nur für einfache Aufgaben. (Kenntnisse in Maschinensprache vorausgesetzt. Assembler alleine reicht hier nicht mehr!)

Ich hatte mir vor Ewigkeiten mal als Schüler das Spiel "Moorhuhnjagd" damit "gepatcht", sodass ich bei Treffern die daneben gingen (z. B. den Himmel) trotzdem immer 25 Punkte bekommen habe. Dafür reichte mir damals HexWorkShop unter WindowsME .... Das waren noch Zeiten ... :)

Aber normalerweise will man das nicht. Es ist einfach unpraktisch und dient nur als Notlösung.

Assembler hingegen ist sehr sinnvoll um z. B. zu überprüfen, ob der Compiler vernünftigen Code erzeugt hat oder auch für Inline-Optimierungen. Erfordert aber - verglichen mit anderen Programmiersprachen - enorm viel Einarbeitungszeit und Kenntnisse über Hardware, Betriebssysteme, und deren Bibliotheken.

Verwechsle also bitte nicht "Maschinensprache" und "Assembler"!

Aber für beides gilt: Viele Programmierer hassen es, bzw. verstehen es nicht nicht richtig, halten es für kompliziert oder veraltet. Nichts davon stimmt, und wahre Cracks lieben mindestens Assembler! ;)

Kommentar von TeeTier ,

PS: Ich vermute gerade, dass du deine Frage falsch formuliert hast. Willst du wirklich wissen, "wofür man Maschinensprache braucht" oder nicht doch eher "was Maschinensprache ist"?

Sorry, falls ich dich falsch verstanden haben sollte. Naja, die anderen haben es ja halbwegs akzeptabel erklärt. :)

Antwort
von Trootz, 17

Ich weiß ja nicht, ob ich da was missverstanden habe, aber "Maschinensprache" findet sich doch in fast jeder Software. Anders würden Programme doch gar nicht funktionieren, da z.B der computer nichts verstehen würde. Man verwendet sogenannte höhere Programmiersprachen wie z.B C oder Java, weil diese einfacher und für den menschen logischer sind. Zudem sind sie für größere Projekt besser geeignet. Trotzdem gibt es bei jeder Programmiersprache Compiler, Assembler oder Linkers, die das ganze in Maschinensprache umwandeln damit z.B der Computerspiele weiß was er machen muss.

Antwort
von Herb3472, 20

Das Rechenwerk selbst (CPU) wird intern in Assembler programmiert. Und zeitkritische, hardwarenahe Anwendungen. Außerdem kleine Logikschaltungen.

Kommentar von W00dp3ckr ,

Nein, das Rechenwerk selbst wird zumeist in noch einem anderen Code (Microcode) programmiert. Auch eine Maschinensprache, aber eine andere als die, die der Prozessor dann am Ende hat.

https://de.wikipedia.org/wiki/Mikrocode

Kommentar von Herb3472 ,

Richtig, sorry.

Antwort
von pritsche05, 9

Du arbeitest gerade damit ! Ohne Maschinensprache könntest du hier nicht schreiben ! Hier mit dem Dualen Zahlensystem. In anderen bereichen mit anderen " Sprachen " .

Antwort
von casala, 13

wiki hat die gängigste begrifssbedeutung.

https://www.google.de/url?sa=t&rct=j&q=&esrc=s&source=web&cd...

Keine passende Antwort gefunden?

Fragen Sie die Community