Einer CPU sagen, was sie tun soll...

Programme
Schreiben

Ein Programm wird in Textform geschrieben. Wie und was geschrieben wird, unterliegt einer „Grammatik“, die ein Computer umsetzen kann – der Programmiersprache. Der Text selbst wird als „Programmcode“ (kurz „Code“) bezeichnet. Ist der Code fertig geschrieben, übersetzt ein anderes Programm es in einen Microcode, der dann von einer CPU als Programm umgesetzt werden kann.

Beim Programmieren geht es darum, Programme zu erstellen die der Computer versteht und ausführen kann. Apps, Spiele, Webseiten, Roboter-Steuerungen, E-Books, Autopiloten für Flugzeug und Auto basieren auf Software, die wir durch Programmieren erstellen können.

Inhalt

Algorithmen

Ein Algorithmus ist eine Handlungsvorschrift, für die Lösung eines Problems.

Quelle: Youtube | Digi4all  [03:44 min.]

… müssen vorab festgelegt (= spezifiziert) sein.

müssen ebenfalls vor Ablauf eines Algorithmus spezifiert sein.

sind die einzelnen Befehle, die eine Maschine (CPU) ausführen kann.

… ist der festgelete Ablauf. Er muss eindeutig sein.

Unter den gleichen Voraussetzung muss der  Algorithmus auch das gleiche Ergebnis liefern.

… das Ende eines Ablaufs.

Algorithmen können wiederum andere Algorithmen als (als Unterbausteine) aufrufen

Lernportal

Arbeitsblätter

 –
 
 
 

Übung & Tests

Grundbestandteile

Syntax

Die Grundlage der Grammatik einer jeden Sprache ist die Syntax. Das gilt auch für die Sprache der Programme, den Code.

  • Beim Programmieren legt die Syntax formale Regeln über die zulässigen Sprachelemente einer Programmiersprache fest. Außerdem regelt sie, inwiefern diese Elemente in einem Programm verwendet werden dürfen.
  • Die Programmiersprache kann als Schnittstelle zwischen Mensch und Computer verstanden werden.
  • So  Menschen nur sinnvoll aufgebaute Sätze verstehen, versteht ein Computer auch nur Programme, die sinnvoll formulierte Befehle an ihn senden. Deshalb ist es wichtig, beim Programmieren die Syntax der jeweiligen Programmiersprache einzuhalten.
  • Menschen verfügen über Phantasie. Sie können also Sätze entschlüsseln und verstehen, die im Aufbau falsch sind. Ein Rechner kann das nicht. Damit er einen Befehl verstehen und ausführen kann, muss der Code fehlerfrei sein, die Regeln der Syntax müssen strikt eingehalten sein. Ansonsten funktioniert das Programm nicht.
 
Befehlssatz

Unter dem Befehlssatz (Instruction Set) versteht man alle Instruktionen, die ein Mikroprozessor ausführen kann. Die Befehlssätze von CPU sind nicht überall gleich. Standard-CPUs besitzen etwa 80 verschiedenen Befehle.

Man unterscheidet arithmetische und logische Befehle, Sprungbefehle, Transferbefehle, Inkrementierungs- und Dekrementierungsbefehle, Ein- und Ausgabebefehle und Spezialbefehle.

Zu den arithmetischen Befehlen zählen alle Befehle die der Datenmanipulation dienen(Addition, Subtraktion, Multiplikation und Division). Logische Befehle führen Bit- Verknüpfungen aus wie AND-, OR- oder XOR-Gatter. Dazu gehören auch Instruktionen, die das Schieben (shift) oder rotieren (rotate) eines Bitwertes durchführen.

Zu den Transferbefehlen gehören alle Anweisungen um Daten von einem Register in ein anderes zu transportieren oder kopieren. Load- und Store-Kommandos kopieren Datensätze zwischen externen Speichern, internen Registern und Stackspeichern.

Die Sprungbefehle werden für Verzweigung von Programmen und den Aufruf von Unterprogrammen und Interrupts benutzt, die an einer anderen im Sprungbefehl angegebenen Stelle fortgesetzt werden sollen.

Variablen

Eine Variable ist ein reservierter Speicher, in dem ein Programm Werte speichern kann. Namen für die Variable frei gewählt werden, die Software hält dann unter einer festen Adresse den benötigten Speicherbereich frei, an dem der Wert hinterlegt und jederzeit von der Software veränderbar ist.

Die Variable muss zuerst 1) deklariert(=beschrieben) und 2) initialisiert(= mit Startwert) werden, bevor sie verwendet werden kann. Eine Variablendeklaration hat den Aufbau:

  • [Name][Typ][Sichtbarkeit] [sonsige Eigenschaften] 

Es gibt verschiedene Typen (die wichtigsten):

  • integer: ganze Zahlen
  • real: gebrochene Zahlen (mit Kommas)
  • boolean: wahr, falsch Aussage
  • string: Text
Schleifen

Eine Schleife dient dazu, ein Programm­stück mehrfach zu wiederholen. Der der Schleifen­körper, wird solange wiederholt, wie eine bestimmte Bedingung (die Schleifen­bedingung) erfüllt ist. Zwei Typen lassen sich unterscheiden:

  1. While-Schleife: Logische Bedingung (true/false) wird zu Anfang geprüft.
  2. For-Schleife: Bei der For-Schleife wird solange etwas wiederholt, bis ein Zielwert erreicht ist. Die Initialisierung der Variablen (i=1), die Schleifenbedingung (i<=10), sowie die Aktion, die am Ende des Schleifenkörpers stattfinden soll (i=i+1), ist am Anfang der Schleife geschrieben, aber erst am Ende der Schleife geprüft.

Mehr dazu.

Verzweigungen

Die If-Anweisung dient dazu, in Abhängigkeit von einer Bedingung entweder das eine Programm­stück oder das andere Programm­stück auszuführen.

Die If-Anweisung hat die allgemeine Form:

Assembler

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Hochsprachen

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Scriptsprachen

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Grafisch Programmieren

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

10 Wiederholungsfragen

Aus dem lateinischen „computare“ und bedeutet „rechnen“.

CPU, RAM, ROM, Systembus, Schnittstellen

Schreibt der CPU die einzelen Arbeitsschritte vor, die sie auszuführen hat. Die Ansammlung von vielen Befehlen nennt man Programm.

Monitor, Drucker, Lautsprecher, Plotter, …

Tastatur, Maus, Scanner, Mikrophon, …

Sie übergeben Informationen in Form von elektrischen Signalen an eine andere Komponente.

Allgemeiner Zyklus zur Verarbeitung von Informationen: Eingabe, Verarbeitung, Ausgabe

Das RAM ist der Arbeitsspeicher eines Computers, man kan Daten daraus auslesen (read) und ablegen (write). Im ROM können keine Daten hineingeschrieben werden.