AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

noch'n BF Interpreter

Ein Thema von himitsu · begonnen am 24. Jan 2010 · letzter Beitrag vom 29. Jan 2010
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.068 Beiträge
 
Delphi 12 Athens
 
#1

noch'n BF Interpreter

  Alt 24. Jan 2010, 11:02
Dann will ich auch mal.

Es tut mir wirklich Leid, Daniel, aber dieses Wort kannte Google auch noch nicht, von uns.


Ja, was soll ich noch dazu sagen?
Ihr wisst ja bestimmt schon, worum es geht. *auf FAlter und Co. Schiel*

http://de.wikipedia.org/wiki/Brainfuck
http://en.wikipedia.org/wiki/Brainfuck


- inkl. einiger/vieler Beispielcodes
- BF8.bf erzeugt in der Standardausgabe eine .COM-Datei, welche einen DOS-BF-Interpreter darstellt
- "Keymaker's brainfuck interpreter.bf" ist ein BF-Interpreter in BF geschrieben
als Input einfach irgendein anderes BF-Script angeben
- MiniBF ist ein kleiner/einfacher Konsolen-Interpreter (recht lahmarschig)
- MiniBF2 ist 'ne leicht optimierte Variante davon (beide von mir )



Infos zum "großen" Interpreter
- man kann das BF-Programm in gewisser Weise auch schon etwas Debuggen
- Scripts sind via Drag&Drop ladbar
- im Editor gibt's einige Tastenkodes - Strg+U und Strg+I zum Einrücken - Strg+G und Strg+B formatiert die markierten Zeilen
- "field size" gibt die Speicher-/Rechengröße an (in Bit)
- bitwidth simuliert 'ne größere "field size" (8x2 = 16 Bit und 8x4 = 32 Bit)
- "file input" nutzt byteweise eine Datei statt der Eingabeaufforderung für ","
- Eingaben ohne "inputbox" in das Output-Memo eingeben


Die "Hilfe" wird noch gefüllt, also nicht wundern.
Es kommen auch noch viel mehr Codes dazu
und ein kleines BF-Einmaleins,
sowie ein eigener BF-2-Pascal-BFCode.

Der Anfang läuft schon ... hab nur noch mit dem "IF-THEN" einige Problemchen:
Code:
>>>>>>>>>>>>++++++++++[<<<<<<<<<<<<+++>+++++>++++++>++++>+++
++++++++>+++++++++>+++++++++++>+++++++++>++++>++++++>+>+>>>+
++>>++++++++++>++++++++++>+++++++++++>+++++++++++>++++++++++
++>++++<<<<<<<<<-]<<<<<<<<<<<<+++++>-->+>>->+>++>+++>+>->+++
>>>+>++>>>+++++>>+++++>->----<<<<<<

>>>++.++.---.-<--.++>>-.+<<<---.+++>>-.<<<<.>>>>.+>>++.--<<<
<--.++++.--<<<<<<<.>.>.<.>.>>>>>>>>>++++.---->.<<<<<---.+++>
>++..-->+.->++.--<<++.--<<+.-<<.>>-.+>>+.-.>.<+.---.++<<+.->
>>>++++++.------<<<<<<<<<<.>.<.>.>>>>>>>>>-.+<<<<---.+++>>>-
.+<<<<<<<<<.>.>>>..>>>>-.+<<<<<<<<<-.+>>>>>.>>---.>>>-..+<<<
.+++>>>>++.--<<<<<<<<<<<<<<<.<<<<.--..+++.-......>>>>>>.>>>>
>>>.>>>>+.-<<++.--<<.>>-.+>-.+<---.+++>>>-.+<<<<<<<<<<.>.>.>
>>..>>>>++.--<<<<<<<<<-.+>>>>>.>>>.>.>+.-<<<+.++.--.->>>-.+<
<<<<<<<<<.>.>.<.>.>>>>>--.+++.->--.++.>.<<<<<<<<.>.>>>..>>>>
++.--<<<<.<<<<<-.+<<<<<<<.>>>>>>>>>>>>.<<<<<<<<<<<<<.>>>>>>>
>.>.>.>>>>



[-]<<-[>>+<<-]>>[<<<+>+>>-]<<<[>>..<<-]>>>>+.->>.<<.<<<<<<<<
<<<<<<<--.++>>>>>>>>>.>.
[edit=mkinzler] Mfg, mkinzler[/edit]
Miniaturansicht angehängter Grafiken
brainfuck_173.png  
Angehängte Dateien
Dateityp: zip brainfuck_143.zip (685,7 KB, 17x aufgerufen)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
24. Jan 2010, 15:24
Dieses Thema wurde von "Daniel" von "Open-Source" nach "Klatsch und Tratsch" verschoben.
Allein schon der Titel schreit nach der Offtopic-Sparte.
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.068 Beiträge
 
Delphi 12 Athens
 
#3

Re: noch'n Hirnschiss

  Alt 24. Jan 2010, 15:33
Das nur weil ich mal versuche deutsche Namen zu verwenden.

Matze privat und nicht als DP-Mod
mit "delphi hirnschiss" is die DP bei Google nun echt oben und mit "hirnschiss" auf der Mitte der 1. Seite

Dabei versuch ich doch nur die DP an die Spitze zu bringen
und so bei der Weltherrschaft etwas behilflich zu sein.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: noch'n BF Interpreter

  Alt 24. Jan 2010, 15:39
Wir wollen aber nur positive Publicity. Habe den Titel mal etwas neutraler gefasst
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.068 Beiträge
 
Delphi 12 Athens
 
#5

Re: noch'n BF Interpreter

  Alt 24. Jan 2010, 15:44
Zitat von mkinzler:
Wir wollen aber nur positive Publicity. Habe den Titel mal etwas neutraler gefasst
Na gut, aber immerhin hatte ich nicht die Variante, mit dem icken am Ende, verwendet.
Damit wäre man bestimmt sogar an vielen Erotikseiten vorbei, ganz weit nach vorne gekommen.
Angehängte Dateien
Dateityp: txt order_883.txt (21,0 KB, 26x aufgerufen)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.096 Beiträge
 
FreePascal / Lazarus
 
#6

Re: noch'n BF Interpreter

  Alt 24. Jan 2010, 16:09
Hi,

dein McKing Bestellprogramm funktioniert ja gar nicht. Egal was ich eingebe es wiederholt sich nur das Menü. Ob im 8 oder 64 Bit Modus.
Oder hat mein neuer, optimierender Interpreter nen Bug?

Ansonsten gehört das schon eher zurück nach Open-Source, oder?

[ot] Gehirnfick fände ich ja noch ok, aber sch... klingt eklig und stinkt vermutlich. [/ot]
Felix Alter
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.068 Beiträge
 
Delphi 12 Athens
 
#7

Re: noch'n BF Interpreter

  Alt 24. Jan 2010, 17:14
Komisch, du hast Recht ... irgendwie funktioniert das Read in der Console nicht richtig.

Read({char}); wartet bei Eingabe auf ein Enter und hört nicht schon nach Eingabe einer Taste auf.
Dann wird anscheinend das erste Zeichen an die Char-Variable übergeben und den Rest merkt sich Delphi für die nächste Eingabe.

Also bei Zeichen+Enter bleibt ein Enter übrig, welches für die nächste Eingabe genutzt wird,
weswegen das nächste Menü gleich wieder abgebrochen wird.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
(CodeLib-Manager)

Registriert seit: 27. Nov 2008
Ort: Delmenhorst
2.379 Beiträge
 
#8

Re: noch'n BF Interpreter

  Alt 24. Jan 2010, 17:22
Das Phänomen hat nix mit Delphi zu tun, das ist generell bei Konsolenprogrammen so. Willst du nur ein Zeichen lesen, musst du den Zeilenpuffer wieder leeren. Unter C hat man dafür den Befehlt fflush; Kennt Delphi da kein Äquivalent zu?
米斯蘭迪爾
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell
  Mit Zitat antworten Zitat
Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.096 Beiträge
 
FreePascal / Lazarus
 
#9

Re: noch'n BF Interpreter

  Alt 24. Jan 2010, 17:26
Hi,

Unter (Turbo)Pascal gab es m. W. eine Funktion die nur ein einzelnes Zeichen gelesen hat (in der Crt?). Kennt jemand zufällig den Namen? Vielleicht gibt es das unter FreePascal ja noch?

[edit] ReadKey? [/edit]
[edit=2] Mit ReadKey funzt es besser. Aber achte bitte auf die Umlaute! (Brainfuck dagt eigentlich das es ASCII Ausgaben sind, da gibts keine, und unter der Console hast du andere Codepages als unter ANSI)
Außerdem passiert bei x nichts und ich muss das Programm mit Strg+C abbrechen. [/edit]
[edit=4] Na toll, jetzt funktioniert das Umleiten der Standardeingabe nicht mehr [/edit]
[edit=3] Und heute bezahlt niemand mehr mit DM [/edit]

Gruß
FAlter
Felix Alter
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.068 Beiträge
 
Delphi 12 Athens
 
#10

Re: noch'n BF Interpreter

  Alt 24. Jan 2010, 18:08
Zitat von FAlter:
[edit] ReadKey? [/edit]
dieses scheint (unter Windows) zu laufen ... hab ich quasi von sakura Hier im Forum suchenReadKey
Delphi-Quellcode:
// initialisieren
H := GetStdHandle(STD_INPUT_HANDLE);
FlushConsoleInputBuffer(H);

// abfragen
CI.EventType := KEY_EVENT;
Repeat
Until ReadConsoleInput(H, CI, 1, Cardinal(i)) and (i = 1)
  and (CI.Event.KeyEvent.bKeyDown) and (CI.Event.KeyEvent.AsciiChar <> #0);
M[MP] := CI.Event.KeyEvent.AsciiChar;
FlushConsoleInputBuffer(H);

Zitat von FAlter:
[edit=2] Aber achte bitte auf die Umlaute!
[edit=3] Und heute bezahlt niemand mehr mit DM [/edit]
Hatte das Script "nur" aus einem anderem BF-Dialekt übersetzt und versucht es in diesem Dialekt zum Laufen zu bekommen und bezüglich der Textinhalte nichts geändert.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz