- POKE
-
POKE (engl. poke = stecken, stoßen) ist ein Software-Kommando der Programmiersprache BASIC, das dazu dient, direkt in Speicherzellen oder Hardware-Register des Rechners zu schreiben. Sein Gegenpart ist der PEEK-Befehl, um Speicherzellen direkt zu lesen.
Besonders in der Ära der Heimcomputer wurde der POKE-Befehl oft verwendet, da dies z. B. für BASIC-Programme oft die einzige Möglichkeit war, bestimmte Grafik- oder Sound-Fähigkeiten des Rechners zu nutzen. Dies verminderte stark die Lesbarkeit und Verständlichkeit der Programme und sorgte zugleich dafür, dass solche Programme in keiner Weise portabel zwischen verschiedenen Computermodellen und deren unterschiedlichen Chipsätzen waren – sogar zwischen verschiedenen Modellen oder Baureihen des gleichen Herstellers waren POKE-Befehle oft nicht übertragbar. Falsche POKE-Befehle führten zudem meist nicht zu einer ordentlichen Fehlermeldung des Rechners, sondern bewirkten einen Computerabsturz, die Zerstörung des Programms oder der Daten im Speicher bzw. unerwünschte optische oder akustische Effekte, im besten Falle auch einfach überhaupt nichts, die Fehlersuche war oft erheblich erschwert.
In den Zeiten der Heimcomputer mit geringem Speicherplatz, niedriger Prozessorgeschwindigkeit und direkt aus Programmen anzusprechender Peripherie (Drucker) stellten Peek- und Poke-Befehle eine relativ komfortable Möglichkeit dar, mittels Maschinencode und Assembler die vorliegenden Programmierungen zu erweitern. Detaillierte Kenntnisse der jeweiligen Hardware vorausgesetzt, konnte diese mittels Maschinensprache oft erst ausgenutzt (beispielsweise Befehlssequenzen für neue Peripheriegeräte) bzw. sonst interpretierte Programme beschleunigt werden. Mittels Peek- und Poke-Befehlen erfolgte hierbei der einrichtende, aufrufende oder schreibende Speicherzugriff während der Laufzeit eines Programms, im Gegensatz zum direkten Aufruf eines vorkompilierten Programms, das schon in maschinennaher Form vorliegt.
Heutzutage ist durch die veränderten Betriebssysteme (Gerätetreibermodelle) und strukturierten Programmiersprachen die Benutzung dieser Kommandos zurückgegangen. Moderne Betriebssysteme verbieten aus Sicherheitsgründen die direkte Manipulation von Speicher und Hardware durch Anwenderprogramme. Moderne Programmiersprachen und Softwarebibliotheken erschließen dem Programmierer die Möglichkeiten seines Rechners in wesentlich systematischerer Weise. Daher gehört POKE nahezu der Vergangenheit an. Nur bei der Arbeit mit Mikrocontrollern und bei der Programmierung von bestimmten Arten von Gerätetreibern hat man notwendigerweise noch die Möglichkeit, direkt auf die Hardware zuzugreifen.
Kategorie:- Programmiersprache Basic
Wikimedia Foundation.