software:diy:andere:prainfucked
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
software:diy:andere:prainfucked [24/10/2006 20:10] – angelegt danielmewes | software:diy:andere:prainfucked [Unbekanntes Datum] (aktuell) – Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== brainfuck auf dem Portfolio mit Prainfucked ====== | ====== brainfuck auf dem Portfolio mit Prainfucked ====== | ||
- | === Die Sprache brainfuck === | + | ===== Die Sprache brainfuck |
- | Die Programmiersprache [[http:// | + | Die Programmiersprache [[http:// |
Die Beschränkung der Sprache auf nur acht verschiedene Befehle trägt auch nicht sonderlich zu einer einfachen Umsetzung von Funktionalität in Programmcode bei. | Die Beschränkung der Sprache auf nur acht verschiedene Befehle trägt auch nicht sonderlich zu einer einfachen Umsetzung von Funktionalität in Programmcode bei. | ||
Trotzdem hat sich brainfuck weltweit einen Namen machen können, als eine Sprache mit ganz besonderem " | Trotzdem hat sich brainfuck weltweit einen Namen machen können, als eine Sprache mit ganz besonderem " | ||
- | Alle Befehle werden in einer Art " | + | Alle Befehle werden in einer Art " |
Die Befehle im Überblick: | Die Befehle im Überblick: | ||
- | * < verschiebt den Pointer | + | * < verschiebt den Zeiger |
- | * > verschiebt den Pointer | + | * > verschiebt den Zeiger |
* + erhöht den Wert der aktuellen Speicherzelle um Eins | * + erhöht den Wert der aktuellen Speicherzelle um Eins | ||
* - verringert den Wert der aktuellen Speicherzelle um Eins | * - verringert den Wert der aktuellen Speicherzelle um Eins | ||
* [ der Code bis zur nächsten ] wird nur ausgeführt, | * [ der Code bis zur nächsten ] wird nur ausgeführt, | ||
* ] springt zurück zur zugehörigen [ | * ] springt zurück zur zugehörigen [ | ||
- | * . gibt die aktuelle Speicherzelle aus (in ASCII Kodierung) | + | * . gibt die aktuelle Speicherzelle |
- | * , ließt | + | * , liest ein Zeichen |
- | Auch wenn es auf den ersten Blick etwas schwer vorstellbar ist, so konnte man doch zeigen, dass brainfuck Turing-komplett ist. Es lassen sich die grundlegenden logischen Operationen durchführen und somit alle Berechnungen ausführen, die mit heutigen Computern möglich sind (entsprechend viel Speicher vorausgesetzt). | + | Auch wenn es auf den ersten Blick etwas schwer vorstellbar ist, so konnte man doch zeigen, dass brainfuck |
- | === Der Compiler Prainfucked === | + | ===== Der Compiler Prainfucked ===== |
- | **Prainfucked** ist eine von Daniel Mewes eigens für den Portfolio angepasste Version des Brainfuck Compilers [[http:// | + | |
- | Der Compiler ist kompiliert weniger als ein Kilobyte groß. Er unterstützt eine grundlegende Syntaxprüfung und optimiert den brainfuck Quellcode in Hinsicht auf Codegröße und Geschwindigkeit. | + | |
- | Prainfucked | + | **Prainfucked** ist eine von Daniel Mewes eigens für den Portfolio |
- | Dem Compiler " | + | Der Compiler |
- | Der Compiler | + | |
- | Das Archiv enthält außerdem noch einige freie Beispielprogramme, zum Beispiel zur Berechnugn von Primzahlen oder zur Faktorisierung natürlicher Zahlen. | + | Prainfucked wird mit vollständigem Quellcode (für den [[wpde> |
+ | Dem Compiler '' | ||
+ | Der Compiler '' | ||
- | Die im Moment aktuelle Version 1.1.1 kann unter [[http:// | + | Das Archiv enthält außerdem noch einige freie Beispielprogramme, |
+ | |||
+ | Die im Moment aktuelle Version 1.1.1 kann unter [[http:// | ||
--- // | --- // |
software/diy/andere/prainfucked.1161715260.txt.gz · Zuletzt geändert: 16/02/2024 17:02 (Externe Bearbeitung)