- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在用 Python 编写 Brainfuck 解释器,我目前正在测试这段代码:
,>++++++[<-------->-],[<+>-]<.
使用此输入:
43
波兰维基百科说结果应该是 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,与维基百科告诉的一样......所以我很困惑。有那个翻译:http://pastebin.com/aasxLppa , 这个解释器也给出了结果 7: brainfuck.tk -.-
最佳答案
输入是 4
和 3
,以字节表示。输入为 ASCII 字符,因此值为 52 和 51。
第一个输入递减 8、6 次,所以 52 - 48 = 4。
第二个输入与第一个输入相加,因此 4 加 51 = 55。
55 写入输出,即 ASCII 7
。
程序对两个 ASCII 数字求和。
JavaScript 解释器是完全正确的。您正在查看第一个寄存器,它保存字节值 55
,但是输出框显示 7
,ASCII 字符。
关于python - Brainf*ck 输入解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16743726/
我是 python 的初学者,为了加强我的技能,我正在(尝试)为 Brainfu** 编写一个编译器。语言。一切都很好,除了支架[]循环。我用来测试代码的程序是 >++[>+++ ,它应该将单元格 2
有一个extended version of bf其中有一个 goto说明,? . 我知道,理论上,应该可以在 bf 的经典 8 指令版本中模拟 goto。我怎么能在实践中做到这一点?有没有exist
用 brainfuck 最好是让磁带大小比程序大小长吗?还是反过来更好? 另外,相对于彼此有多大? 我正在尝试为 Arduino 制作一个 brainfuck 解释器。我知道这已经完成了,但我正在添加
我正在用 Python 编写 Brainfuck 解释器,我目前正在测试这段代码: ,>++++++[-],[-]<. 使用此输入: 43 波兰维基百科说结果应该是 7,但这里有些地方不对。我应该如何
我试图在 Javascript 中实现一个 BF 解释器。它适用于许多程序,如打印 Hello world 、循环等。 这是我用于比较输出的示例解释器的链接:https://sange.fi/esot
我想提高我的C技能,所以我搜索了一些程序的想法。 有人建议创建一个简单的 Brainf*** 解释器,然后创建一个编译器。所以我来了。 我创建了解释器,它按预期工作,除了 Mandelbrot 程序:
我尝试用 Brainfuck 中的瓶形代码测试我的 Brainfuck 解释器: +>+++++++[>>>+++ +++++-]++
我正在尝试用 Rust 编写一个优化的 brainfuck 编译器。目前它将标记存储在一个平面向量中,这是可行的,但我无法将其更改为使用语法树: #[derive(Clone, PartialEq,
这是我的代码 http://pastebin.com/itL26LW6 http://pastebin.com/index/fvx3Tc65 特别是这是应该控制 [ 和 ] 的部分 case Tok
所以i是指令指针,ptr是数据指针。我正在努力解决这个问题: [ - if the byte at the data pointer is zero, then instead of moving t
我是一名优秀的程序员,十分优秀!