问题标签 [brainfuck]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
brainfuck - Brainfuck 修改版本的图灵完备性
如果单元格是位,并且 + 和 - 操作只是稍微翻转一下,Brainfuck Turing 是否完整?是否有一个简单的证据证明类似 Brainfuck 的语言无论单元大小如何都是图灵完备的,还是我需要考虑一个模拟图灵机的程序?如果没有,我怎么知道?
编辑:我找到了问题的答案:Brainfuck with bit cells 被称为Boolfuck。普通的 Brainfuck 可以简化为它,所以 Boolfuck 是图灵完备的。
javascript - HTML:更改文本区域中单个字符的背景颜色?
我正在制作一个Brainfuck解释器(brainfuck 是一种由 8 个符号组成的编程语言,它们是,.+-<>[]
)
有没有办法通过 JavaScript 为 HTML 文本区域中单个字符的背景着色?
假设我的文本区域包含“hello world”。我希望能够告诉它给第三个字母上色,所以它会显示“he* l *lo world”(这里使用粗体来说明颜色,因为我不知道如何在 Stack Overflow 编辑器中包含颜色)。
有谁知道如何做到这一点,或者是否有可能?任何帮助将不胜感激:=)
python - Brainf*ck 输入解释
我正在用 Python 编写 Brainfuck 解释器,目前正在测试这段代码:
使用此输入:
波兰语 Wikipedia 说结果应该是 7,但这里有些不对劲。我应该如何处理输入?作为 4 和 3 还是作为:“4”和“3”(52 和 51)?如果我将输入字符视为整数,则结果为 -41,因为在第一个循环 [0] 为 -44 且 [1] 为 0 之后,然后 [1] 变为 3,我们将 3 添加到 -44,因此结果为 -41 .
另一方面,如果我将输入字符视为 ASCII 码,那么在第一个循环 [0] 为 4 且 [1] 为 0 之后,[1] 变为 51,我们将 51 与 4 相加,结果为 55。(这JavaScript 解释器也给出了结果 55:https ://www.nayuki.io/page/brainfuck-interpreter-javascript )
但是,我下载了一些用 C 编写的解释器,它给出了结果 7,与 Wikipedia 告诉的一样......所以我很困惑。有那个解释器:http://pastebin.com/aasxLppa,这个解释器也给出结果7:brainfuck.tk -.-
brainfuck - Brainfuck Hello World 是如何工作的?
有人把这个发给我,并声称这是 Brainfuck 中的一个你好世界(我希望如此......)
我知道它通过移动指针以及递增和递减的东西来工作的基础知识......
但是我仍然想知道,它实际上是如何工作的?它首先如何在屏幕上打印任何内容?它如何对文本进行编码?我完全不明白……
interpreter - Nimrod的Brainfuck翻译
我正在玩弄nim(在撰写本文时仍称为 nimrod),用该语言编写 Brainfuck 解释器。没有实现循环,我有:
它编译成功,但是当我向它输入一个输入时:
哪个应该打印字符'A'它返回'N'。有任何想法吗?
python - 在 Python 中实现解释器的更好方法
我正在尝试为brainfuck 实现一个解释器,到目前为止,我只是在使用一系列 if/elif 语句。
然而,这对我来说似乎非常笨拙和不符合pythonic。是否有更好(更清洁/更快/更美观)的方式来实现这一点?
brainfuck - 无法弄清楚 if 语句
这是我正在使用的代码,它测试“b”的输入,如果有其他输入,则应输出“Y”。
拜托,没有人问我为什么选择使用'Y'作为错误值..
想要相当于
无论我在程序中输入什么,我都没有得到任何输出(将它指向一个文件并用十六进制转储它,屏幕上什么也没有)
java - Brainfuck 口译员行为不端
我正在为Brainfuck语言编写解释器
我使用了命令行
bf 程序应该以十六进制输出 00 到 FF,但它输出
其中 ... 表示十六进制的 +1 序列
3f 将 80 替换为 9f,我不知道为什么
来源:
命令提示符上的输出是
brainfuck - 你好世界!在 脑残
以下代码片段来自维基百科,是似乎是标准 Hello World 的序言!Brainfuck中的程序...
我了解这里发生的事情的要点,但我不明白的是第 3 行到第 6 行发生的事情的机制。如果+++++ +++++
将 10 中的值加 10 a[0]
,为什么将指针递增 1 并执行++*ptr
7 次会导致a[1]
等于70?不应该a[1] = 7
吗?似乎a[1]
通过a[4]
被神奇地增加了十倍,我不明白为什么。