Pbrain

Fonte: SAPO Saber, a enciclopédia portuguesa livre.

Pbrain é uma variante da linguagem de programação esotérica brainfuck. O diferencial entre as linguagens é o sistema de subrotinas em Pbrain.

Índice

[editar] Forma da Linguagem

O Pbrain acessa a memória da mesma forma que brainfuck: através de células de memória. Não existe um padrão de total de células ou de tamanho de cada célula. Na sua primeira versão, haviam 65536 células de memória, de 1 Byte cada.

As proceduras são numeradas da mesma forma que as células de memória. Se existirem n células de memória, podem haver n subrotinas. Da mesma forma, quando a célula de memória n estiver selecionada, a subrotina n também estará.

[editar] Comandos

Caractere Função
>
Acessa a célula de memória seguinte.
<
Acessa a célula de memória anterior.
+
Aumenta em 1 o valor da célula de memória selecionada.
-
Diminui em 1 o valor da célula de memória selecionada.
.
Imprime na tela o caractere relativo à célula de memória selecionada.
,
Salva na célula de memória selecionada o código da próxima tecla clicada.
[
Repete uma série de comandos enquanto a célula de memória selecionada for diferente de zero.
]
Retorna ao [ correspondente se a célula de memória selecionada for diferente de zero.
(
Inicia a declaração de uma subrotina correspondente à célula de memória selecionada.
)
Finaliza a declaração de uma subrotina.
:
Executa a subrotina correspondente à célula de memória selecionada.

[editar] Compatibilidade com brainfuck

Todos os códigos em brainfuck são 100% compatíveis com Pbrain, desde que não tenham (, ) e : como comentários.

Os códigos de Pbrain podem não ser compatíveis com brainfuck, pois os comandos (, ) e : são considerados comentários em brainfuck, e são ignorados.

[editar] Teste para verificar se é brainfuck ou Pbrain

+>(+)[-]:[[-]
 Pbrain
[-]][-]+(-)[-]+:[[-]
 brainfuck
[-]]

[editar] Ver também

[editar] Ligações externas


  Este artigo é um esboço sobre Programação. Você pode ajudar o SAPO Saber expandindo-o.


" style="vertical-align:middle; padding-left:7px; width:0%;">}}}}

Ferramentas pessoais
Outras línguas