Autor Tema: Programa en C.  (Leído 971 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado vanessa543

  • PIC10
  • *
  • Mensajes: 1
Programa en C.
« en: 15 de Septiembre de 2015, 17:07:06 »
Buen dia, hace poco comencé en la programación por lo que se muy poco acerca del lenguaje c, me encontré con cierto código que me pareció bastante genial para realizar, el hecho es que me gustaría pasarlo de lenguaje c a .asm o al .hex. Ya que se muy poco podrian explicarme como hacer esto?. Gracias  :D

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: Programa en C.
« Respuesta #1 en: 15 de Septiembre de 2015, 17:15:43 »
Si esta en C. El mismo compilador general el .asm y luego lo pasa a .hex

El .hex se puede traducir directamente al .asm ( son casi iguales ). Asi que lo que queda saber es:

- Queres generar un .hex para grabarlo en el micro?
Debes tener el compilador para ese programa en C, para PIC hay algunos como XC8, CCS, Mikro C y seguro que hay mas.

- Queres crear un .asm desde ese archivo .c?
 Aca se poresentan varias opciones, una es que aprendas C y crees lo mismo en ASM, va a llevar un buen tiempo, todo depende de lo que posea el C
 La otra es compilar el C, algunos compiladores permiten que se deje el .asm, sino podes tomar el .hex y de ahi te apareceria todo el programa en ASM.
 Lo feo de la ultima opcion es que si se genera el .asm los nombres de las funciones por ahi son raras $$JFAF$$Function_saioewq13 , cosas asi.
 Si tomas del .hex ser pierde todo, hasta incluso los nombres de los registros pasan a ser simplemente un numero, suponete que el registro STATUS ocupa la posicion de memoria 0x05 entonces en ves de tener

 MOVWF STATUS,RP0

Tenes

 MOVWF 0x05,0x04

Por ejemplo, y tenes que reemplazar todo.

Asi que depende de lo que quieras hacer.