Brainfuck是什么

Brainfuck是什么

Brainfuck是一种极小化的计算机语言,
它是由Urban Müller在1993年创建的。
由于fuck在英语中是脏话,这种语言有时被称为brainf*ck或brainf**k,甚至被简称为BF。

Brainfuck 由八种运算符构成,
它基于一个简单的机器模型,出了指令,
这个机器还包括:
一个字节为单位、被初始化为零的数组、
一个指向该数组的指针(初始时指向数组的第一个字节)、
以及用于输入输出的两个字节流。


字符    含义
>    指针加一
<    指针减一
+    指针指向的字节的值加一
-    指针指向的字节的值减一
.    输出指针指向的单元的内容
,    输入内容到指针指向的单元
[    如果指针指向的单元值为零,向后跳转到对应的]指令的次一指令处
]    如果指针指向的单元值不为零,向前跳转到对应的[指令的次一指令处

Brainfuck 程序可以用下面的替换方法翻译成 C 语言(假设 ptr 是 char* 类型)

Bf    含义
>    ++ptr;
<    --ptr;
+    ++*ptr;
-    --*ptr;
.    putchar(*ptr);
,    *ptr = getchar();
[    while(*ptr){
]    }

源码效果:
>++++++++[<------<------>>-]<<[>[>+>+<<-]>>[<<+>>-]<<<-]>>>++++++[<++++++++>-]

 

posted @ 2022-09-16 20:48  假程序猿  阅读(230)  评论(0编辑  收藏  举报