Mit diesem einfachen, durch Scratch realisierten Coden, können Sie eine Nachricht im binären Coden darstellen (und hören), wie diejenige, die vom Arecibo am 16 November 1974 gesendet wurde, und in dieser Aktivität beschrieben wird. Sehen wir, Schritt für Schritt, wie es funktioniert.
Zuerst, von der Schnittstelle von Scratch zeichnen Sie eine neue Sprite (besser quadratische und kleine): das wird ihre Bit sein. Wählen Sie die bevorzugte Farbe: wichtig ist, dass es im Hintegrund, den Sie wählen, gut sichtbar ist. Im unserem Projekt (bitte öffnen Sie, schauen Sie hinein und remixen Sie es) ist ein weisses Quadrat mit 4 Pixel seitenlänge, auf einem räumlichen Hintergrund in der Scratch-Bibliothek.
Wie es gesagt wurde, steht das Sprite für das Bit dass, durch den Befehl stempel, wiederholt wird, wenn die Meldung den Wert 1 erreicht. Erstmals, da wir noch nicht wissen, welche Botschaft abgespielt werden soll, verstecken wir es.
Die Botschaft, die abgespielt werden soll (diejenige von Arecibo, in diesem Fall) ist in einer Liste gespeichert, die hier “Nachricht” genannt wird, und wurde durch importieren von Daten aus einer externen Datei gefüllt. Dazu wird die Liste definiert, die im “Stage” angezeigt wird, und wird zunächst leer sein. Klicken Sie mit der rechten Maustaste auf der Liste, die im Stage erscheint, im pop-up Menu, das auftaucht, wählen Sie “importieren”. Wählen Sie die Datei, aus der die Daten importieren werden (es wird ein Textdatei mit 0 und 1 sein, die so angeordnet ist, dass sie das Nachrichtengitter zusammenstellt) und, wenn Sie auf “öffnen” klicken, füllt die Liste sich mit 0 und 1 in gleicher Weise: enthält sie so viele Elemente (Zeilen) wie die Zeilen der Nachricht, und so viele Elemente auf jeder Zeile, wie die Spalten des Nachrichtengitters.
Beim ersten Teil des Code, erscheint die Initialisierung von zwei Variablen: “Anzahl der Zeilen” und “Anzahl der Spalten”, deren Wert durch das Programm selbst, mit zwei Operatoren, erreicht wird; einer über Listen, und einer über Zeichenketten (in diesem Fall, eine Reihe von 0 und 1).
Das Herzstück des Programms sind zwei Zyklen, einer innerhalb des anderen. Der äusserste (langsamste) läuft auf die Zeilen; der innerste (schnellste) läuft auf die Spalten, das heisst auf den einzelnen Bits jeder Nachrichtenzeile. Deshalb, für jede Zeile der Meldung, wenn das Bit (i- Element) ist 1, dann “stempel” es die Sprite auf dem “Stage” und macht einen Ton, ansonsten (wenn es 0 ist) gibt es nichts aus für die gleiche Dauer. So erscheint das quadratische Pixel (dann hört man den Klang) nur wenn das Bit 1 im Nachricht ist.
Der komplizierteste Teil des Codes ist vielleicht festlegen, wo das Bit/Pixel erscheint. Hier haben Sie oben rechts, auf die Koordinaten (100,160) für die erste Runde des Zyklus (Indizes i und j bei null). Bei verändertem i, läuft die implementierte Formel um 4 Pixel rechts, damit sich die Bits nicht überschneiden. Bei verändertem j, läuft sie nach unten um 4 Pixel, aus demselben Grund.
Klicken Sie auf die grüne Fahne, und sehen Sie die Nachricht suf dem rechten Seite, neben Martina, und sie können auch sie hören.
Wenn Sie versuchen wollen, eine andere Nachricht anzuzeigen, müssen Sie nur die Binärcode-Textdatei importieren, wie am Anfang beschrieben.