Computerprogramm

Ein Computerprogramm (auch Software, oder gerade ein Programm) ist eine Folge von Instruktionen, die geschrieben sind, um eine angegebene Aufgabe mit einem Computer durchzuführen. Ein Computer verlangt, dass Programme fungieren, normalerweise die Instruktionen des Programms in einem Hauptverarbeiter durchführend. Das Programm hat eine rechtskräftige Form, die der Computer direkt verwenden kann, um die Instruktionen durchzuführen. Dasselbe Programm in seiner menschlich-lesbaren Quelle codiert Form, von der rechtskräftige Programme (z.B, kompiliert) abgeleitet werden, ermöglicht einem Programmierer, seine Algorithmen zu studieren und zu entwickeln.

Computerquellcode wird häufig von Computerprogrammierern geschrieben. Quellcode wird auf einer Programmiersprache geschrieben, die gewöhnlich einem von zwei Hauptparadigmen folgt: befehlende oder Aussageprogrammierung. Quellcode kann in eine rechtskräftige Datei umgewandelt werden (manchmal hat ein rechtskräftiges Programm oder eine Dualzahl genannt) durch einen Bearbeiter und später durchgeführt durch eine in einer Prozession gehende Haupteinheit. Wechselweise können Computerprogramme mithilfe von einem Dolmetscher durchgeführt werden, oder können direkt in die Hardware eingebettet werden.

Computerprogramme können entlang funktionellen Linien kategorisiert werden: Systemsoftware und Anwendungssoftware. Zwei oder mehr Computerprogramme können gleichzeitig auf einem Computer, ein als das Mehrbeschäftigen bekannter Prozess laufen.

Programmierung

schließen Sie <stdio.h> ein

int Hauptsache

{\

printf ("Hallo Welt! \n");

kehren Sie 0 zurück;

}

Quellcode eines Programms, das auf der C Programmiersprache geschrieben ist

Computerprogrammierung ist der wiederholende Prozess des Schreibens oder Redigierens des Quellcodes. Das Redigieren des Quellcodes ist mit Prüfung, dem Analysieren, und der Raffinierung und manchmal dem Koordinieren mit anderen Programmierern auf einem gemeinsam entwickelten Programm verbunden. Eine Person, die Methoden diese Sachkenntnis einen Computerprogrammierer, Softwareentwickler oder Codierer genannt werden. Der manchmal lange Prozess der Computerprogrammierung wird gewöhnlich Softwareentwicklung genannt. Die Begriff-Softwaretechnik wird populär, weil der Prozess als eine Technikdisziplin gesehen wird.

Paradigmen

Computerprogramme können durch das Programmiersprache-Paradigma kategorisiert werden, das verwendet ist, um sie zu erzeugen. Zwei der Hauptparadigmen sind befehlend und Aussage-.

Programme das schriftliche Verwenden einer befehlenden Sprache geben einen Algorithmus mit Behauptungen, Ausdrücken und Behauptungen an. Eine Behauptung verbindet einen Variablennamen zu einem datatype. Zum Beispiel:. Ein Ausdruck gibt einen Wert nach. Zum Beispiel: Erträge 4. Schließlich könnte eine Behauptung einen Ausdruck einer Variable zuteilen oder den Wert einer Variable verwenden, um den Kontrollfluss des Programms zu verändern. Zum Beispiel: Eine Kritik von befehlenden Sprachen ist die Nebenwirkung eines Zuweisungsbefehls auf einer Klasse von genannten nichtlokalen Variablen von Variablen.

Das schriftliche Verwenden von Programmen einer Aussagesprache gibt die Eigenschaften an, die durch die Produktion entsprochen werden müssen. Sie geben Details nicht an, die in Bezug auf den Kontrollfluss der Durchführungsmaschine, aber der mathematischen Beziehungen zwischen den offen erklärten Gegenständen und ihren Eigenschaften ausgedrückt sind. Zwei breite Kategorien von Aussagesprachen sind funktionelle Sprachen und logische Sprachen. Der Grundsatz hinter funktionellen Sprachen (wie Haskell) soll Nebenwirkungen nicht erlauben, der es leichter macht, über Programme wie mathematische Funktionen vernünftig zu urteilen. Der Grundsatz hinter logischen Sprachen (wie Einleitung) soll das Problem definieren — die Absicht gelöst zu werden — und die ausführliche Lösung des Einleitungssystems selbst verlassen. Die Absicht wird durch die Versorgung einer Liste von Teilzielen definiert. Dann wird jedes Teilziel durch die weitere Versorgung einer Liste seiner Teilziele usw. definiert. Wenn ein Pfad von Teilzielen scheitert, eine Lösung zu finden, dann wird dieses Teilziel denselben Weg zurückverfolgt, und ein anderer Pfad wird systematisch versucht.

Die Form, in der ein Programm geschaffen wird, kann textlich oder visuell sein. In einem Sehsprachprogramm werden Elemente grafisch manipuliert aber nicht textlich angegeben.

Das Kompilieren oder die Interpretation

Ein Computerprogramm in der Form einer menschlich-lesbaren, Computerprogrammiersprache wird Quellcode genannt. Quellcode kann in ein rechtskräftiges Image durch einen Bearbeiter umgewandelt oder sofort mithilfe von einem Dolmetscher durchgeführt werden.

Entweder kompilierte oder interpretierte Programme könnten in einem Gruppe-Prozess ohne menschliche Wechselwirkung durchgeführt werden, aber interpretierte Programme erlauben einem Benutzer, Befehle in einer interaktiven Sitzung zu tippen. In diesem Fall sind die Programme die getrennten Befehle, deren Ausführung folgend, und so zusammen vorkommt. Wenn eine Sprache verwendet wird, um Befehle einer Softwareanwendung zu geben (wie eine Schale), wird es eine scripting Sprache genannt.

Bearbeiter werden verwendet, um Quellcode aus einer Programmiersprache entweder in den Gegenstand-Code oder in Maschinencode zu übersetzen. Gegenstand-Code braucht weitere Verarbeitung, um Maschinencode zu werden, und Maschinencode ist der heimische Code der in einer Prozession gehenden Haupteinheit, der zur Ausführung bereit ist. Kompilierte Computerprogramme werden allgemein executables, binäre Images, oder einfach als Dualzahlen genannt — eine Verweisung auf das binäre Dateiformat hat gepflegt, den rechtskräftigen Code zu versorgen.

Interpretierte Computerprogramme - in einer Gruppe oder interaktiver Sitzung - werden entweder decodiert und dann sofort durchgeführt oder werden in etwas effiziente Zwischendarstellung für die zukünftige Ausführung decodiert. GRUNDLEGEND sind Perl und Pythonschlange Beispiele sofort durchgeführter Computerprogramme. Wechselweise werden javanische Computerprogramme vorzeitig kompiliert und als eine Maschine versorgt, die unabhängiger Code bytecode genannt hat. Bytecode wird dann auf Anfrage von einem Dolmetscher genannt eine virtuelle Maschine durchgeführt.

Der Hauptnachteil von Dolmetschern ist, dass Computerprogramme langsamer laufen als, wenn kompiliert. Interpretation des Codes ist langsamer als das Laufen der kompilierten Version, weil der Dolmetscher jede Behauptung jedes Mal decodieren muss, wenn es geladen wird und dann führen Sie die gewünschte Handlung durch. Jedoch kann Softwareentwicklung schneller einen Dolmetscher verwenden, weil Prüfung unmittelbar ist, wenn der Kompilieren-Schritt weggelassen wird. Ein anderer Nachteil von Dolmetschern ist, dass mindestens ein auf dem Computer während der Computerprogramm-Ausführung da sein müssen. Im Vergleich brauchen kompilierte Computerprogramme keine Bearbeiter-Gegenwart während der Ausführung.

Keine Eigenschaften einer Programmiersprache verlangen, dass es exklusiv kompiliert oder exklusiv interpretiert wird. Die Kategorisierung widerspiegelt gewöhnlich die populärste Methode der Sprachausführung. Zum Beispiel, GRUNDLEGEND wird als eine interpretierte Sprache und C eine kompilierte Sprache, trotz der Existenz von GRUNDLEGENDEN Bearbeitern und C Dolmetschern gedacht. Einige Systeme verwenden gerade rechtzeitig Kompilation (JIT), wodurch Abteilungen der Quelle 'im Fluge' kompiliert und für nachfolgende Ausführungen versorgt werden.

Das Selbständern von Programmen

Ein Computerprogramm in der Ausführung wird normalerweise behandelt als, verschieden von den Daten zu sein, auf denen das Programm funktioniert. Jedoch in einigen Fällen wird diese Unterscheidung verschmiert, wenn ein Computerprogramm sich modifiziert. Das modifizierte Computerprogramm wird nachher als ein Teil desselben Programms durchgeführt. Das Selbständern des Codes ist für Programme möglich, die in Maschinencode, Zusammenbau-Sprache, Lispeln, C, COBOL, PL/1, Einleitung und JavaScript (die Eval-Eigenschaft) unter anderen geschrieben sind.

Ausführung und Lagerung

Gewöhnlich werden Computerprogramme im nichtflüchtigen Speicher, bis gebeten, irgendein direkt oder indirekt versorgt, vom Computerbenutzer hingerichtet zu werden. Nach solch einer Bitte wird das Programm ins zufällige Zugriffsgedächtnis, durch ein Computerprogramm genannt ein Betriebssystem geladen, wo darauf direkt durch den Hauptverarbeiter zugegriffen werden kann. Der Hauptverarbeiter führt dann durch (führt) das Programm, die Instruktion durch die Instruktion bis zur Beendigung. Ein Programm in der Ausführung wird einen Prozess genannt. Beendigung ist entweder durch die normale Selbstbeendigung oder durch den Fehler — Software oder Hardware-Fehler.

Eingebettete Programme

Einige Computerprogramme werden in die Hardware eingebettet. Ein speicherprogrammierter Computer verlangt, dass ein anfängliches in seinem ROM-Speicher versorgtes Computerprogramm startet. Der Stiefelprozess soll identifizieren und alle Aspekte des Systems von Verarbeiter-Registern bis Gerät-Kontrolleure zum Speicherinhalt initialisieren. Im Anschluss an den Initialisierungsprozess lädt dieses anfängliche Computerprogramm das Betriebssystem und veranlasst den Programm-Schalter, normale Operationen zu beginnen. Unabhängig des Gastgeber-Computers könnte ein Hardware-Gerät firmware eingebettet haben, um seine Operation zu kontrollieren. Firmware wird verwendet, wenn, wie man selten oder nie erwartet, sich das Computerprogramm ändert, oder wenn das Programm nicht verloren werden muss, wenn die Macht aus ist.

Manuelle Programmierung

Computerprogramme wurden historisch zum Hauptverarbeiter über Schalter manuell eingegeben. Eine Instruktion wurde durch eine Konfiguration von Ein/Aus-Einstellungen vertreten. Nach dem Setzen der Konfiguration wurde ein durchführen Knopf gedrückt. Dieser Prozess wurde dann wiederholt. Computerprogramme wurden auch historisch über den Lochstreifen oder die geschlagenen Karten manuell eingegeben. Nachdem das Medium geladen wurde, wurde die Startadresse über Schalter und den durchführen gedrückten Knopf gesetzt.

Automatische Programm-Generation

Generative Programmierung ist ein Stil des Computers programmierend, der Quellcode durch allgemeine Klassen, Prototypen, Schablonen, Aspekte und Codegeneratoren schafft, um Programmierer-Produktivität zu verbessern. Quellcode wird mit der Programmierung von Werkzeugen wie ein Schablone-Verarbeiter oder eine einheitliche Entwicklungsumgebung erzeugt. Die einfachste Form des Quellcodegenerators ist ein Makroverarbeiter wie der C Vorverarbeiter, der Muster im Quellcode gemäß relativ einfachen Regeln ersetzt.

Softwaremotorproduktionsquellcode oder Preiserhöhungscode, die gleichzeitig der Eingang für einen anderen Computerprozess werden. Anwendungsserver sind Softwaremotoren, die Anwendungen auf Kundencomputer liefern. Zum Beispiel ist Wiki ein Anwendungsserver, der Benutzer dynamischen von Artikeln gesammelten Inhalt bauen lässt. Wikis erzeugen HTML, CSS, Java und JavaScript, die dann durch einen WWW-Browser interpretiert werden.

Gleichzeitige Ausführung

Viele stark mehrbeanspruchende Betriebssystemunterstützung, der vielen Computerprogrammen ermöglicht zu scheinen, gleichzeitig auf einem Computer zu laufen. Betriebssysteme können vielfache Programme durch die Prozess-Terminplanung — ein Softwaremechanismus führen, die Zentraleinheit unter Prozessen häufig zu schalten, so können Benutzer mit jedem Programm aufeinander wirken, während es läuft. Innerhalb der Hardware können moderne Tagesmehrverarbeiter-Computer oder Computer mit Mehrkernverarbeitern vielfache Programme führen.

Ein Computerprogramm kann gleichzeitig mehr als eine Operation mit Fäden berechnen oder Prozesse trennen. Nebenläufigkeitsverarbeiter werden optimiert, um vielfache Fäden effizient durchzuführen.

Funktionelle Kategorien

Computerprogramme können entlang funktionellen Linien kategorisiert werden. Die funktionellen Hauptkategorien sind Systemsoftware und Anwendungssoftware. Systemsoftware schließt das Betriebssystem ein, das Computerhardware mit der Anwendungssoftware verbindet. Der Zweck des Betriebssystems ist, eine Umgebung zur Verfügung zu stellen, in der Anwendungssoftware auf eine günstige und effiziente Weise durchführt. Zusätzlich zum Betriebssystem schließt Systemsoftware Dienstprogramme ein, dass Hilfe führt und den Computer abstimmt. Wenn ein Computerprogramm nicht Systemsoftware dann ist, ist es Anwendungssoftware. Anwendungssoftware schließt middleware ein, der die Systemsoftware mit der Benutzerschnittstelle verbindet. Anwendungssoftware schließt auch Dienstprogramme ein, die Benutzern helfen, Anwendungsprobleme wie das Bedürfnis nach dem Sortieren zu beheben.

Manchmal werden Entwicklungsumgebungen für die Softwareentwicklung als eine funktionelle Kategorie selbstständig, besonders im Zusammenhang der Wechselwirkung des menschlichen Computers und des Programmiersprache-Designs gesehen. Entwicklungsumgebungen sammeln Systemsoftware (wie Bearbeiter und die Gruppe des Systems, die scripting Sprachen in einer Prozession geht) und Anwendungssoftware (wie IDEN) zum spezifischen Zweck, Programmierern zu helfen, neue Programme zu schaffen.

Siehe auch

Weiterführende Literatur

Links


Chinesische Ziffern / Verbrechen
Impressum & Datenschutz