Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: Ali Baba en 10 Mayo 2019, 03:24 am



Título: ¿Lenguaje binario? ¿Qué es lo que en realidad debo saber?
Publicado por: Ali Baba en 10 Mayo 2019, 03:24 am
Hace mucho tiempo pregunté cómo crear un lenguaje de programación. Siempre me ha llamado la atención hacer cosas para saber cómo funcionan, así que un día pregunté y me dijeron que tendría antes que nada empezar a entender un poco más las computadoras, descubrí el sistema binario, así que más allá de comprenderlo, aprendí a realizar convenciones entre binarios, decimales y hexadecimales, lo que no me queda claro es ¿Cuál es el siguiente paso que debo de dar para seguir entendiendo como funcionan las computadoras, los lenguajes y cómo esta recibe y cumple órdenes?


Título: Re: ¿Lenguaje binario? ¿Qué es lo que en realidad debo saber?
Publicado por: @XSStringManolo en 10 Mayo 2019, 09:54 am
El primer paso seria escribir un compilador o un interprete. Busca muchisima info al respecto. Hay muchosimos lenguajes de programacion. Hay uno que es de espacios en blanco y tabuladores xD
Informate muy bien y buscar articulos, libros y codigos de desarrolladores que creasen un lenguaje.


Título: Re: ¿Lenguaje binario? ¿Qué es lo que en realidad debo saber?
Publicado por: K-YreX en 10 Mayo 2019, 15:21 pm
¿Cuál es el siguiente paso que debo de dar para seguir entendiendo como funcionan las computadoras, los lenguajes y cómo esta recibe y cumple órdenes?
Si como has dicho te interesa aprender cómo funcionan las computadoras internamente te recomendaría algunas cosillas como:
  • Arquitectura de computadores: verás diferencias de los sistemas de 32/64 bits. La famosa arquitectura de Von Neumann (no estoy seguro de si se escribe así :xD), y algo muy importante, LA MEMORIA. Es fundamental saber cómo se cargan los programas en memoria, como se calculan direcciones de memoria (tipos de direccionamiento), etc.
  • Ensamblador: me parece fundamental también saber algo de ensamblador. No hace falta que te aprendas todas las instrucciones y tal pero está bien conocer el punto intermedio entre nuestros programas en C/C++ por ejemplo y los 0 y 1 que usa la computadora. Se podría meter dentro de la arquitectura pero creo que se merece un punto a parte. Destacar la importancia de conocer cómo funciona la memoria aquí (registros).
  • Sistemas operativos: los sistemas que han existido y existen. Los avances que han ido produciendo, las diferencias entre el modo kernel y el modo usuario (interesante esto úlimo aunque sea de un vistazo)
  • Lenguajes de programación: aquí tienes una inmensa variedad para elegir, desde robustos C/C++/Java hasta modernos y sencillos Python/Ruby. Yo te recomendaría C/C++ primero porque fueron mis inicios y siguen siendo mis favoritos a día de hoy pero sobre todo porque trabajan un poco a más bajo nivel que Python por ejemplo. En C/C++ puedes trabajar más directamente con la memoria lo que te ayudará de forma práctica a entender toda la teoría que te habrás leído y releído de lo comentado más arriba.

Creo que poco más que decir. Yo después de mis años de carrera en Ingeniería Informática te diría que esos son los fundamentos y lo que se me viene a la mente cuando pienso en el funcionamiento de los computadores.
Suerte con tus proyectos :-X


Título: Re: ¿Lenguaje binario? ¿Qué es lo que en realidad debo saber?
Publicado por: Ali Baba en 11 Mayo 2019, 17:21 pm
Si como has dicho te interesa aprender cómo funcionan las computadoras internamente te recomendaría algunas cosillas como:
  • Arquitectura de computadores: verás diferencias de los sistemas de 32/64 bits. La famosa arquitectura de Von Neumann (no estoy seguro de si se escribe así :xD), y algo muy importante, LA MEMORIA. Es fundamental saber cómo se cargan los programas en memoria, como se calculan direcciones de memoria (tipos de direccionamiento), etc.

Hola, muchísimas gracias por toda esta ayuda, me encantaría poder aprender más sobre lo que estoy citando. Yo conozco el idioma inglés y el español, buscaré en Internet libros sobre este tema en ambos idiomas y si puedes nombrarme algunos que consideres interesantes, te lo agradecería.