Hola a todos,hace aproximadamente dos meses compre una placa arduino uno y ya me he familiarizado con el hardware y software ,pero hay algo que no tengo claro y me gustaría consultarlo con ustedes.la cuestión es la siguiente.
¿Cuanto demora en ejecutarse una sentencia en el lenguaje arduino?
Averiguando me encontré con que el lenguaje de programación arduino se basa en C/C++,por lo tanto,sería un lenguaje de alto nivel y como un lenguaje de alto nivel es altamente independiente del procesador no existiría una clara correspondencia entre las instrucciones(o sentencias) del lenguaje arduino y el lenguaje de nemónicos propio del ATmega328p(lenguaje de máquina o de bajo nivel).además una sentencia de alto nivel por lo general corresponde a un conjunto definido de instrucciones de bajo nivel,un claro ejemplo de esto sería el menor número de sentencias que presenta el lenguaje arduino respecto del lenguaje de máquina del ATmega328(120 y 131 respectivamente).
Revisando la hoja de datos del ATmega328p se observa el número de ciclos de reloj correspondientes a cada instrucción,y conociendo la frecuencia del clock utilizado es posible saber el tiempo que demora cada instrucción en ejecutarse.Por lo tanto existe absoluta claridad en cuanto a los tiempos de ejecución, pero esto, siempre y cuando sea utilizando las "instrucciones del lenguaje de máquina".
sabiendo esto entonces la pregunta que nos podemos hacer sería¿cual es la correspondencia entre una sentencia del lenguaje arduino y la o las instrucciones del lenguaje de máquina?.Creo que sabiendo esto sería una manera de determinar el tiempo que demora en ejecutarse una sentencia
estare en lo correcto con el anális realizado? espero me puedan ayudar.
de antemano muchas gracias.