בקר - אונליין בענן

זהו ה-command beef שניתן להפעיל בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות המרובות שלנו, כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

תָכְנִית:

שֵׁם


ביף - מתורגמן גמיש Brainfuck

תַקצִיר


בשר בקר [אוֹפְּצִיָה] ... קובץ

תיאור


Beef הוא מתורגמן גמיש לשפת התכנות Brainfuck.

ניתן להגדיר אותו באמצעות האפשרויות המתוארות להלן, מה שמאפשר להפעיל אותו
תוכניות Brainfuck שמניחות הנחות לגבי התנהגות המתורגמן.

Beef לא מגדיר גבול שרירותי לגודל קלטת הזיכרון המשמשת את התוכנית, ו
מקצה תאי זיכרון לפי הצורך.

אפשרויות


-ס, --חנות=מה
בחר את הערך לאחסון בקלטת כשתגיע לסוף הקלט. מה
ברירת המחדל היא 'אפס' (אחסן אפס); ערכים אפשריים אחרים הם 'eof' (חנות -1, ה
ערך המוקצה בדרך כלל לקבוע C EOF) או 'זהה' (להשאיר את הערך ללא נגיעה)

-ד, --enable-debugging
אפשר תמיכה באגים. כברירת מחדל, הוראות איתור באגים אינן מבוצעות

-או, --output-file=קובץ
כתוב את הפלט של התוכנית ל קובץ

-אני, --input-file=קובץ
קרא את הקלט של התוכנית מ קובץ

קובץ יכול להיות נתיב מקומי או כל URI שנתמך על ידי GIO. אם קובץ הוא '-' קלט סטנדרטי או
ישמש פלט סטנדרטי, בהתאם להקשר.

בריינזין שָׂפָה


תוכניות Brainfuck פועלות על קלטת זיכרון המכילה מספר כמעט בלתי מוגבל של
תאים; כל תא יכול לאחסן ערך, אותו ניתן לראות כתו או כ-an
מספר שלם (קידוד ה-ASCII שלו) בהתאם להקשר. יש סמן שמצביע
לאחד התאים, הנחשב לתאים הנוכחי; ניתן להזיז את הסמן
מסביב כרצונו.

קובץ מקור של Brainfuck מורכב ממספר הוראות Brainfuck; כל סמל שהוא
לא הוראה נחשבת כהערה ומתעלמת ממנה. יש חריגים לכך
כלל, ראה להלן.

הוראות Brainfuck הן:

+ הגדל את הערך בתא הנוכחי באחד

- הקטן את הערך בתא הנוכחי באחד

> הזז את הסמן תא אחד ימינה

< הזז את הסמן תא אחד שמאלה

[ התחל לולאה. ההוראות הכלולות בלולאה מבוצעות כל עוד ה
הערך של התא הנוכחי אינו אפס

] סיום לולאה שהתחילה בהוראה [

, קרא תו מהקלט ואחסן אותו בתא הנוכחי

. כתוב את הערך של התא הנוכחי לפלט

# זרוק את התוכן של קלטת הזיכרון למטרות ניפוי באגים. הוראה זו היא
התעלם אלא אם האפשרות --enable-debugging קיימת

אם השורה הראשונה של קובץ המקור מתחילה ברצף הקסם #! מתעלמים ממנו.
זה מאפשר לך להפעיל תוכנית Brainfuck מבלי להתקשר לביף במפורש, כמוך
יעשה למשל. תוכנית Python.

הסמל ! יש משמעות מיוחדת ל-Beef: הוא מסמן את הסוף של הקוד של התוכנית וה-
תחילת הקלט שלו. אם סמל זה קיים בקובץ המקור, קלט זמן ריצה יהיה
להתעלם.

דוגמאות


התוכנית הקלאסית Hello World יכולה להיכתב ב-Brainfuck as

++++++++++[>+++++++>+++++++++++++++>+<<<<-]>++.>+.+ +++++
+..+++.>++.<<++++++++++++++++.>.+++.-------.-------- .>+.>.

ניתן להשתמש בתוכנית Brainfuck הבאה כדי להחליף את חתול(1) שירות:

#!/usr/bin/beef
,[.,]

זה כמובן בהנחה שאתה לא צריך אף אחד מהם חתולאפשרויות שורת הפקודה המפוארות של (1), אתה
יש מעטפת עם ניתוב קלט/פלט עובד וחוש הומור.

מחברים


אנדריאה בולוגניeof@kiyuko.org>.

השתמש בבשר בקר באינטרנט באמצעות שירותי onworks.net



התוכניות המקוונות האחרונות של לינוקס ו-Windows