Vor- und Nachteile der Sprache auf Maschinenebene

Programmierung

Das Schreiben von Code auf Maschinenebene ist ein schwieriger Prozess.

Bildnachweis: Jupiterimages/Photos.com/Getty Images

Der Zweck jeder Programmiersprache besteht darin, einen Computer von einem teuren elektronischen Briefbeschwerer in ein nützliches Datenverarbeitungs- und Speichergerät zu verwandeln. Die Auswahl einer Sprache für diese Aufgabe ist ein Kompromiss zwischen Effizienz und Benutzerfreundlichkeit. Maschinensprache repräsentiert die äußersten Enden des Spektrums für diese beiden Faktoren.

Maschinensprache

Maschinensprache erzeugt die einzigen Anweisungen, die ein Computer ohne Übersetzer versteht. Computer schaffen Audio- und Videowiedergabe, Datenverarbeitung und -speicherung, Internet Kommunikation und alle anderen spezialisierten Aufgaben durch Reaktion auf einen Befehlssatz, der nur einen kennt und Nullen. Hunderte von Codezeilen zu schreiben, die aus Einsen und Nullen bestehen, ist ein anspruchsvoller und mühsamer Prozess, der die Popularität von höheren Sprachen wie C und Java erklärt.

Video des Tages

Frühe Vorteile

Der erste IBM Personal Computer war mit 512 Kilobyte Arbeitsspeicher und einem 360 Kilobyte Diskettenlaufwerk ausgestattet. Nachdem das Betriebssystem vom Diskettenlaufwerk in den Speicher geladen wurde, wurden die Programme in die verbleibenden. geladen Speicherplatz, der nur einen sehr kleinen RAM-Bereich (oft weniger als 100 Kilobyte) für die Verarbeitung durch das aktive Programm lässt Daten. Während dieser Zeit war das Hauptanliegen eines Programmierers schlanker, effizienter Code. Die Programmierwerkzeuge der Wahl auf diesen frühen Computern waren normalerweise Maschinensprachen, die erheblich kleiner sein können als eine in BASIC oder C geschriebene Version. Es war auch etwas einfacher, nachkommende Assemblersprache zu verwenden.

Plattformabhängigkeit

Die Maschinensprache richtet sich direkt an die Hardware des Computers und gibt dem Programmierer die vollständige Kontrolle über jeden Aspekt der Programmausführung. Der Nachteil dieses Ansatzes besteht darin, dass der Programmierer die Architektur jedes Chipsatzes kennen muss, bevor er effektiven Code schreiben kann. Wenn beispielsweise eine Komponente wie eine Grafikkarte oder ein Antriebscontroller geändert wird, muss der Maschinensprachencode aktualisiert werden, um das neue Gerät zu erkennen und zu adressieren.

Hochsprachen

Die Vorteile der Geschwindigkeit und des geringen Speicherbedarfs der Maschinensprache werden zunehmend durch die Schwierigkeit aufgewogen, Befehle auf Chipebene in Binärcode zu schreiben. Gigabyte RAM und Terabyte verfügbarer Speicher haben den Bedarf an schlankem, effizientem Code in modernen PCs beseitigt. Der zusätzliche Speicher- und Speicherbedarf von Programmen, die in höheren Sprachen wie C und Java geschrieben sind, spielt bei der Auswahl einer Entwicklungsplattform keine Rolle mehr. Benutzerfreundlichkeit und Bedenken hinsichtlich der zukünftigen Programmpflege treten in den meisten modernen Softwareprojekten an die Stelle von Geschwindigkeit und Effizienz.