Estoy en una escuela de programación de juegos y aquí tenemos que aprender sobre la velocidad del código, algo que parece importante.C/C++ traducción al conjunto, comportamiento de memoria de bajo nivel: ¿cómo se hace?
¿Hay algún tutorial o lista de cosas a tener en cuenta al programar en C/C++?
Me pregunto acerca de muchas cosas, como por qué el comportamiento predeterminado de C es pasando datos en lugar de referencia/dirección, o cómo el compilador traduce una referencia al ensamblador, o cómo un bucle C se traduce a JMP.
Me preocupa porque python usa otra forma, pero, por otro lado, python no usa un operador para copiar el valor, sino una función que puede ser sintácticamente pesada.
Realmente no creo saber cómo programar en el montaje es realmente necesario, ya que es dolorosa, supongo que simplemente requiere para saber acerca de un registro, etc.
En última instancia, esta pregunta se reduce a "¿Hay algún tutorial o lista de cosas a tener en cuenta al programar en C/C++?" Para eso, te dirijo aquí: [http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list] –
Obligatorio "optimización prematura es malo" comentario aquí. Si sus algoritmos son 'O (demasiado)' (por ejemplo, en un juego basado en fichas, haciendo un bucle sobre todos los objetos del juego para descubrir si hay una X justo al lado del jugador), entonces el conocimiento profundo de C o de la Asamblea no puede posiblemente salvarte. Optimice sus propios esfuerzos de optimización: descubra dónde tiene sentido la optimización (mediante el uso de perfiles, no adivinando) y "optimice" con el pensamiento. Además, propably "no es una pregunta real". – delnan
Necesita conocer el ensamblaje, para que comprenda cómo funciona realmente una computadora, para que pueda optimizarlo. –