python中文叫什么-在python中,"~”是什么意思?

?s=32Tyson

在这个特定的上下文中,只需将"~”替换为"not”。在

好吧,我想我得解释一下-开始被-1扇耳光了,可能是在我不知道逻辑和按位否定之间的区别的前提下。在

问题是,问题中的代码坏了。里面有个虫子。如果你检查一下Brainfuck应该如何工作,它会在[]括号内循环,而当前的内存单元是!=0(在输入[时作为前置条件,在从]返回之前作为优化检查)。在

但与其争论,也许用代码不起作用的例子来说明可能更容易些。让我们看一个简单的程序'[+]'。尝试tun这应该只是退出(因为当前单元格是0,它甚至可以进入循环)。相反,如果在这个解释器中运行它,它将进入无限循环。在

因此,如果我的澄清现在有意义的话,请您回复您的-1票;-)

这里是稍微美化了一下的解释器,修复了~错误,我还添加了丢失的,输入:from sys import stdin, stdout

bfHelloWorld = '++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.'

# http://esoteric.sange.fi/brainfuck/bf-source/prog/yapi.b

bfPiDigits = '''> +++++ (5 digits)

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

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

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

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

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

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

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

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

'''

code = bfPiDigits # the code

data = [0] * 255 # data memory

cp = 0 # code pointer

dp = 0 # data pointer

while cp < len(code):

cmd = code[cp]

if cmd == '>': dp += 1

elif cmd == '<': dp -= 1

elif cmd == '+': data[dp] += 1

elif cmd == '-': data[dp] -= 1

elif cmd == '.': stdout.write(chr(data[dp]))

elif cmd == ',': data[dp] = ord(stdin.read(1))

elif cmd == '[' and not data[dp]: # skip loop if ==0

n = 0

while True:

cmd = code[cp]

if cmd == '[': n += 1

elif cmd == ']': n -= 1

if not n: break

cp += 1

elif cmd == ']' and data[dp]: # loop back if !=0

n = 0

while True:

cmd = code[cp]

if cmd == '[': n+=1

elif cmd == ']': n-=1

if not n: break

cp -= 1

cp += 1

赞踩评论- 2020年7月28日 13:33

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值