Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

17/06/2016 #1


Informacion Tabla ciclos de clock x instrupcion
Recuerdo haber tenido una tabla para un 8085 donde se mostraba los ciclos de reloj que necesitaba el micro a la hora de ejecutar cada instrupcion en ASM Tipo

Los valores no son ciertos, es ejemplo ya no conservo esta
MOV X,X ____ 6 ciclos
NOT ____ 4 ciclos

Me gustaría si podria encontrar lo mismo a ser posible CCS sin entrar en AXM respecto a un Pic determinado pero me gustaría ver cualquiera

Que necesita menos ciclos para responder

IF(!int1) o IF(int1)

Cuanto cada una de estas
int8 v8,k8;
int16 v16;


v8=make8(v16,0);
k8=make8(v16,1);


v8=v16%100;
k8=v16/100;
17/06/2016 #2

Avatar de Nuyel

las hojas de datos dice cuantos ciclos de reloj toma cada instrucción, respecto a lo que pones, no hay forma simple de saberlo ya que es lenguaje de alto nivel, el compilador es el que se encargará de eso, y no toma lo mismo realizar la operación de división por restas sucesivas en un PIC16 a realizarlo empleando el divisor por hardware de un PIC32, pero para el que programa se escribe igual, un simple Variable=x/a; el como traduzca el compilador al código maquina es diferente.
17/06/2016 #3

Avatar de Scooter

Es que los compiladores suelen dar varias pasadas y no siempre traducen un if por lo mismo.
En su día me dediqué a ver lo compilado por el SDCC y era curioso, si.
Si el compilador está optimizado cambiará la instrucción por la mas conveniente según el caso.
17/06/2016 #4

Avatar de Nuyel

Sí, también depende del tipo de optimización, el compilador puede pasar simplemente a equivalentes en ASM al hacer el trabajo sin mucha eficiencia como la versión free de Microchip, puede ajustar las instrucciones para realizarlo a alta velocidad, o ajustarlas para usar más bucles y reducir el uso de memoria de programa a coste de reducir la velocidad de ejecución.

Dado a que el compilador al hacer su trabajo intentará determinar que secuencia de instrucciones cumple con el algoritmo descripto, no puedes determinar un equivalente de cuantos ciclos se requieren.
18/06/2016 #5


los compiladores suelen dar varias pasadas
Supongo que estara intentando optimizar todo y dar prioridades a las funciones que mas se cumplen en lenguaje-maquina 0 1 Se que ASM Es mas rapido y se puede aprovechar mejor porque es mas directo a este pero aunque empeze con el se me da mal entenderlo. Una vez conocido C todo es mas legible.
de todas maneras
las hojas de datos dice cuantos ciclos de reloj toma cada instrucción
donde se encuentran estas no lo e visto en ningun datasedt
18/06/2016 #6
Moderador

Avatar de D@rkbytes

AlberertO dijo: Ver Mensaje
¿Dónde se encuentran éstas? No lo he visto en ningún datasheet.
En la sección: Instruction Set Summary
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.