BF系列语言   ​​javascript:void(0)​


和Boolfuck语言类似,如果Brainfuck语言以比特作为单位,那么就不需要加减,只需要1个符号@


字符



含义



>



指针加一



<



指针减一



@



指针指向的字节的值加一



.



输出指针指向的单元内容(ASCⅡ码)



,



输入内容到指针指向的单元(ASCⅡ码)



[



如果指针指向的单元值为零,向后跳转到对应的]指令的次一指令处



]



如果指针指向的单元值不为零,向前跳转到对应的[指令的次一指令处



和Boolfuck不同的是,BF7虽然指针宽度是1,但是输入输出的宽度却是8

BF7用每9位表示一个字符,其中最低位是缓冲位,没有实际意义,高8位用来表示一个字符,而且是大端模式。


BF语言和BF7语言的对换表

BF bit
> >>>>>>>>>
< <<<<<<<<<
+ >>>>>>>>[<]@>[@>]<<<<<<<<<[@]
- @>>>>>>>>@[<@]>[>]<<<<<<<<<[@]
[ @[>>>>>>>>@[<@]>[>]<<<<<<<<<[@]>>>>>>>>[<]@>[@>]<<<<<<<<<@[@
] >>>>>>>>>@<<<<<<<<<]>>>>>>>>>[<<<<<<<<<@>>>>>>>>>@]<<<<<<<<<]
, >,<