¿Aprender un lenguaje de programación en cinco minutos?

Hola, mi nombre es Coca-Cola.

Cuando vea el título, si nada más, debe comenzar a regañarme: ** Partido del título, ¿qué lenguaje de programación puede aprender en cinco minutos?

De hecho, al principio no lo creía, pero después de estudiarlo, me di cuenta de que era cierto.

1, Brainfuck

Cuando veas este subtítulo, no me malinterpretes, no estoy maldiciendo.

Este es el protagonista del artículo de hoy, un lenguaje de programación que puedes aprender en cinco minutos - Brainfuck.

Brainfuck , o BF para abreviar , es un lenguaje de programación minimalista creado en 1993 por Urban Müller.

El objetivo es crear un lenguaje de programación simple y completo de Turing que se pueda implementar con un compilador mínimo.

PD: Tengo que admirar la forma en que se nombra al jefe, ¡quizás este es el jefe! ! !

2. Gramática

Para aprender un lenguaje de programación, primero debe aprender su sintaxis.

El lenguaje de programación Brainfuck consta de 8 comandos:

gramática sentido
> Mover el puntero un espacio a la derecha
< Mover el puntero un espacio a la izquierda
+ Agregue 1 al valor de byte de la celda actual del puntero
- Disminuye el valor de byte de la celda actual del puntero en 1
. Envíe el valor de celda actual al terminal como una tabla ASCII
, Toma un byte de entrada y almacena su valor en los bytes del puntero de datos.
[ Cuando el valor actual del puntero es 0, el programa salta al ] correspondiente; de ​​lo contrario, el programa se ejecuta normalmente
] El programa vuelve al correspondiente [

Desde entonces, has aprendido toda la sintaxis del lenguaje Brainfuck, en menos de cinco minutos, supongo.

3、Hola mundo

Reglas antiguas, el primer paso para comenzar con un nuevo idioma es poder generar Hello World.

Pregunta: ¿Aquí primero practicamos cómo imprimir una letra 'A' en la pantalla?

3.1 Edición de novato

analizar:

Porque el valor correspondiente a 'A' en la tabla ASCII es 65. Así que pronto tendrás el primer escenario de programación:

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.

+Hay 65 aquí, y luego .envíelo a la terminal a través de , así:

Parece resolver este problema, pero +hay demasiados aquí. Es fácil escribir menos o más cuando programamos, entonces, ¿hay alguna forma de simplificarlo?

3.2 Edición avanzada

El valor correspondiente a 'A' en la tabla ASCII es 65. Para ahorrar unos pocos +, naturalmente pensamos en la multiplicación, 65 = 13*5.

Entonces podemos mejorar el método anterior haciendo un bucle:

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

Aquí explico la sintaxis anterior:

①, la primera línea, hay 5 +, lo que indica que el número actual de cuadrículas se suma a 5;

②, la segunda línea, uno [, significa ingresar a un ciclo;

③, la tercera línea, que indica que el puntero se mueve una cuadrícula a la derecha y el valor de la cuadrícula es 13;

④, la cuarta línea, que indica que el puntero se mueve una cuadrícula a la izquierda y el valor de la cuadrícula se reduce en 1 (el valor inicial es 5);

⑤, la quinta línea, la declaración final del ciclo, juzga si la cuadrícula donde se encuentra el puntero es 0, no 0, pasa a la tercera línea de código para continuar con la ejecución y sale del ciclo si es cero.

⑥ En la sexta línea, el puntero se mueve una cuadrícula a la derecha y el valor de la cuadrícula se envía al terminal.

Aquí hay una animación para mostrarle:

3.3 Salida ¡Hola mundo!

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

4. Resumen

No sé cómo te sientes después de aprender este idioma.

Permítanme comenzar diciendo que este lenguaje no fue diseñado para diseñar software real, sino para desafiar los límites de la programación de computadoras.

Sabemos que el premio más alto en la industria informática se llama Premio Turing. Turing publicó el modelo matemático en "Sobre números computables, con una aplicación al Entscheidungsproblem" ("Sobre números computables y la aplicación de problemas de decisión") en 1936. ——Máquina de Turing (Máquina de Turing), que describe qué es, y demuestra que mientras se pueda implementar la máquina de Turing, se puede usar para resolver cualquier problema computable, y todos los interesados ​​pueden estudiarla.

Este lenguaje también es muy útil para comprender las ideas de Turing.

Por ejemplo, para un nuevo idioma, necesitamos probar si es Turing completo. Si se prueba con matemáticas, será más complicado, pero si puede usar este nuevo idioma para implementar un intérprete de Brainfuck, entonces debe probarse. Es Turing completo.

huevos de Pascua

Demostración gráfica del lenguaje Brainfuck: https://openprocessing.org/sketch/516467

海量电子书获取:https://mp.weixin.qq.com/s?__biz=MzUwOTQwNTUzNQ==&mid=2247488293&idx=1&sn=1515e62492388c321717dbdc7209990d&chksm=f913e315ce646a03a6daf8a1621f1d127a95fe9ea10a442fc1b0b9eb2dddc5531bac722f3656#rd

Supongo que te gusta

Origin blog.csdn.net/ysvae/article/details/127003474
Recomendado
Clasificación