Autor Tema: Tema Dividido. ¿ASM Vs C?  (Leído 25062 veces)

0 Usuarios y 6 Visitantes están viendo este tema.

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #45 en: 30 de Octubre de 2006, 09:00:04 »
¿Oscilador interno para un PIC de la serie 18FXXX?

Haber sabido eso antes de pedir las muestras  :D

Si Mario, de hecho hace más de un año que los vengo usando.  Un documento que es muy útil a la hora de poder acotar  mejor el rango de PICs más adecuados para nuestra aplicación, es el documento Product Selector Guide.

Ahí puedes ver a groso modo las características de todos los IC que fabrica Microchip.

Saludos
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado Darukur

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 464
    • Informacion, recursos y ejemplos para desarrollos con microcontroladores
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #46 en: 30 de Octubre de 2006, 09:20:03 »
Ojo con los PIC18 con terminacion 20 (PIC18F2520 / PIC18F2620 / etc).
Estos dispositivos tienen un hermoso error en su MSSP para el caso de I2C esclavo.
Este error todavia me vuelve loco en algunos diseños ya que si por ejemplo usas codigo pensado para un 18F252 y lo compilas para un 18F2620 (con todas las salvedades) no anda el I2C!
Tuve que hacer modificaciones especificas para este dispositivo y asi y todo de ves en cuando tengo alguna sorpresa.
Entren en el foro de microchip y busquen (hay post mios)
Lo mas lindo es que en el 18F2620 sacaron una revision mas nueva Y NO LO ARREGLARON (B4).

Si ven con detalle la MSSP tanto del PIC16 como del PIC18 van a ver que es un SPI realmente, que se la ha hecho modificaciones / inclusiones para que funcione en modo I2C.
Sino miren el I2C del DSPIC y van a ver un I2C dedicado.

Saludos!

« Última modificación: 30 de Octubre de 2006, 09:51:39 por Darukur »
El que no sabe lo que busca no entiende lo que encuentra.
Mi Pagina Web:  http://www.sistemasembebidos.com.ar
Mi foro:             http://www.sistemasembebidos.com.ar/foro/

Desconectado Mario

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 873
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #47 en: 30 de Octubre de 2006, 13:03:30 »
Ya me estoy bajando la lista esa Mauricio.

Darukur:
Eso pudiera explicar muuuuuuuuuuuuchos dolores de cabeza cuando quise implementar I²C en un 16F872 y en un 18F448 por hardware, usando las notas de aplicación y tutoriales de µicrochip. Terminé por hacerlo "bitbang" y mejor lo hago por software (PBP).

Tendré que meterme a los DSP; y como el tema lo sugiere:
C será la opción. Quizá ensamblador si hay rutinas para la FFT y las otras que no recuerdo.
La buena administración es utilizar el sentido común y la regla de oro; aunque el sentido común no es tan común como quisiéramos que fuera y, quien tiene el oro, hace las reglas.
George Terry

"A loser will defeat a genius with hard work"
Rock Lee

Desconectado andros

  • PIC16
  • ***
  • Mensajes: 111
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #48 en: 30 de Octubre de 2006, 14:30:11 »
Ufff!, que debate más sabroso!, muy bueno, con todos los matices:

Comienzo con mi postura:

Mi posición es algo especial, pues en la U inicié programando en C (creo que la versión se llamaba R-hide), que prácticamente no permitía hacer nada, luego en c++ con sus estructuras y su opción de programar orientado a objetos...., demasiado bueno, se hicieron cosas muy interesantes. Posteriormente pasé por el assembler del 386 (de lo cual casi no recuerdo nada, pero vale la experiencia), un compilador de C en RT-linux para programar en tiempo real (un compilador especial de C, una pesadilla pero si se le saca el jugo es muy bueno)...., y por último hice mi tesis en un pic18f252 todo programado en assembler!!!!!, 16K de código y muchas, muchas, muchas semanas de programación..., (hacer lo que hace un vector en C en ASM es una pesadilla para mi capacidad de programación); obviamente, lo de las semanas se lo debo a las curvas de aprendizaje.

Recuerdo  mucho que después de ir por más de la mitad del código de mi tesis me percaté en la hoja de especificaciones de mi PIC que la arquitectura del 18F estaba optimizada para ser programada en C, en ese momento sentí que perdí MUUUUUCHOOOOO tiempo de mi vida, en la cual hubiera podido aprender de otras cosas; sin embargo esto rindió sus frutos. Desde hace aproximadamente 6 meses estoy entrando al foro, de este modo inició mi interés por programar los uC en C (inicié con C18), cosa que no hacía desde hace aproximadamente un año y medio (me refiero al C como tal), pero me encontré con una gran sorpresa!, el haber programado en ASM, el conocer la arquitectura del micro sobre el que estoy programando, en como se manejan las instrucciones me han hecho (en mi humilde opinión) un mejor programador en C, por lo menos mejor que antes, me dí cuenta de muchos errores que cometía, es más en varias partes de mi código inserto código asm (#asm o _asm) por aquello de lo optimo. En realidad yo uso segmentos en assembler para realizar funciones sencillas, pero para operaciones matemáticas en .flotante (por experiencia propia no lo recomiendo en .asm, jajajajajaa!) o para ramificaciones de código definitivamente uso C porque me simplifica mucho las cosas.

Ahora, no es que sea facilista, pero el contexto en que me encuentro, donde estoy desarrollando proyectos empresariales (también cuento con la fortuna/infortunio de ser mi propio jefe), en mis productos (tengo socios claro está) aproximadamente sólo el 5% (exagerando) del costo del producto se me va en el tipo de microcontrolador, de hecho en relación con otros de los elementos del productos, la sensibilidad del precio final con respecto a la variación del costo del microprocesador es realmente baja (por no decir nula en algunos casos); obviamente, es insensato que si puedo hacer algo con un PIC16F630 lo haga con un PIC18F252. A lo que quiero llegar es que influye más en mi precio las horas hombre en i+d, el diseño mismo de la PCB (espacio, cantidad de vias, capas, tipos de componentes), el diseño industrial, diseño gráfico, la construcción del molde de inyección (esta vaina es muy cara!), personal de ensamble, los costos de envío de los componentes, la adecuación del espacio y los costos de comercialización (de hecho en esto se va la mayoría del precio final), esto, repito, es en mi caso.

Ahora bien, en un ambiente comercial a veces vale más el tiempo (coste de oportunidad), pero en un ambiente científico y/o académico importa demasiado el desempeño, es aquí donde encuentro validez en las posturas a favor del ASM, pera es simple, como todo en la vida, una cuestión de equilibrio, alguien decía que su frase favorita era "todo en sus justas proporciones", para mi ese es el verdadero secreto de algo tan valioso como el conocimiento..., la sabiduría. Ahora hago un paralelo un poco absurdo, pero, muchas veces el buen jugador de fútbol es el que hace las jugadas correctas en el momento correcto (Fabregas es uno -me perdonan los españoles si lo escribí mal-); eso mismo es lo que seguramente impulsó a Maradona a sacarse medio equipo (y al mismo tiempo humillar, jajaja!) de inglaterra en el 86, porque la opción más adecuada con sus capacidades era esa; esa es la diferencia entre un borrachín y alguien que sabe disfrutar de una rumba.

Para terminar solo queda agregar que todas las opiniones tienen validez después de que se aprenda, al fin y al cabo eso es lo que nos tiene en el foro.

Saludos!

Andros.


Andros!

Desconectado Menta

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 607
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #49 en: 06 de Noviembre de 2006, 08:12:00 »
Me tomó unas 4 horas recorrer todos los mensajes, pero lo hice, el debate es más atrapante que la novela de la siesta.  :lol:
Que se yo, soy nuevo y aprendí muchos conceptos al recorrerlo.

Mario: Me gustaría leer alguno de los proberbio populares mexicanos a los que te referís sobre nuestra arrogancia. jeje Ya ves este tipo argento (carcass) que se llebaba todo por delante terminó aceptando en parte que en muchas ocaciones un buen compilador de C es muy útil y principalmente PRODUCTIVO. Lo cual habla bien de él y de su capacidad para asumir que no lo sabe todo.

Mi opinión es la misma a la que finalmente llegaron todos: Depende de la situación.

Yo tengo que hacer justamente un sistema programable que permita efectuar cálculos numéricos definidos por el usuario. Y no veo como lo haría sin usar C. Un compañero mio estaba haciendo un medidor de punto de rocío. Bastante simple hasta que tuvo que calcular una raíz a la 8. (creo que era 8) y le recomendé usar C, porque solo tenía que medir humedad, temperatura, calcular y mostrar...

Por otra parte otro compañero usando C hizo un secuenciador tipo auto fantástico con for´s y no se que... pero quedo 4 veces más grande que uno en asm que bajé de internet. Eso era el año pasado que no sabíamos nada de nada.... ahora sé el 1.2% (el 100% sería algo así como carcass) (sin ser irónico, aclaro)

PD: En favor de carcass en la antigua grecia ser llamado vago era bien visto, debido a que el vago disponía de mayor tiempo para reflexionar sobre la vida y filosofar sobre todo tipo de temas. Así que si uso C tengo más tiempo de vagancia. :D
     

Desconectado Zaphyrus

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 323
    • Mi blog: Es cuestión de actitud
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #50 en: 06 de Noviembre de 2006, 08:47:19 »
Hola Menta, no sé si has leido la revista del Clarin de hace 2 domingos allí los extranjeros no nos tildan de arrogantes sino de ser muy frontales :)
Ah hay veces que uno se pudre de todo y se pone vago por algunos días, para reflexionar de la vida como decis, y luego vuelve a sus tareas habituales.

Saludos.

Martín
"¿Lo quiere rápido, barato, o bien hecho? Puede elegir dos de las tres cosas." Arthur C. Clarke.
Mi Proyecto Final de Carrera-Microprocesador RISC de 16 bits en HDL: http://martin.calveira.googlepages.com/home
Mi página web o blog: http://es-cuestion-de-actitud.blogspot.com/
Martín Calveira - Zárate - Argentina

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #51 en: 06 de Noviembre de 2006, 11:19:08 »
También soy argentino y más allá de lo que diga Clarín... creo que en el mundo somos vistos como arrogantes.

Las razones son varias y tenemos especímenes que van por el mundo (porque tienen 2$ en el bolsillo) y se creen la gran cosa, y es esa gente la que nos hace quedar mal...  Pagan muchos por unos pocos pero la época del 1 a 1, tampoco nos benefició en este sentido sino que por el contrario, nos perjudicó!

Creo que se está yendo del topico del tema, pero yendo a las fuentes de dónde se originó el tema, opino que por saber mucho no significa que uno deba ser soberbio... todo por el contrario.  De todas formas, ¿quién puede evaluar lo que uno sabe o no?  Sería cuestión de sentarse en un grupo a ver qué sabe quien!.  Uno mismo no puede decir que sabe mucho o no de un tema... creo que es el resto y el tiempo son los que terminan juzgando eso.

Admiro por ejemplo a Juan Manuel Fangio, siendo el número 1 en lo suyo y admirado por millones, siempre conservó un corazón humilde.  Eso realmente vale oro.  No se puede decir lo mismo de otros... sin citar nombres pero que muchos imaginarán. 

Es fácil hablar de afuera pero cuando se está dentro... y se es famoso , reconocido, etc y además se es humilde... bueno, creo que ahí salta la calidad de persona.

Hay mucha gente en el foro que sabe mucho y no por eso lo anda diciendo a voces por ahí... eso también vale oro.

Saludos
« Última modificación: 06 de Noviembre de 2006, 11:20:54 por maunix »
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado Darukur

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 464
    • Informacion, recursos y ejemplos para desarrollos con microcontroladores
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #52 en: 06 de Noviembre de 2006, 11:35:07 »
De acuerdo contigo maunix.
Uno puede estar contento con su autosuperacion, pero a la hora de ver todo lo que se hace sobre el tema en el mundo, se da cuenta que uno no sabe nada.
Lo unico que uno puede hacer es tener la humildad de reconocerlo, y la voluntad de seguir aprendiendo.

Saludos

Marcelo
El que no sabe lo que busca no entiende lo que encuentra.
Mi Pagina Web:  http://www.sistemasembebidos.com.ar
Mi foro:             http://www.sistemasembebidos.com.ar/foro/

Desconectado Menta

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 607
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #53 en: 07 de Noviembre de 2006, 03:32:52 »
carcass: Más allá de algún sarcasmo en mis dichos, no estoy a la altura de opinar ante alguien como vos o ante alguien como maunix en cuanto a cuestiones técnicas.
Por la sencilla razón de que:                         [suExperiencia ≈ miExperiencia * 30]

Yo sólo me guío por el gran número de personas que usan C. No creo que todos estén equivocados...
De nuevo rescato el hecho de que lo estés probando, en eso sí puedo opinar, y como ya dije, eso habla bien de vos. Supongo que cuando lo domines a C, lo vas a "mechar" con el asm del mismo modo que mi abuela mechaba el peceto los domingos :mrgreen:

Consulta al margen: alguien usó i2c con más de 2 dispositivos en asm. En ese caso, habría diferencia en el desempeño y/o memoría de programa consumida si uso C. Porque veo que en C con una simple instrucción (write y read)es suficiente.
en fín en ese casó C es muy fácil, me pregunto a qué precio? 10% más de prog, 20%, 30% quiza? No lo sé estimar yo porque no lo hice en asm, ni sé como lo haría.
     

Desconectado Menta

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 607
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #54 en: 07 de Noviembre de 2006, 04:18:45 »
Maunix: encontre en http://www.todopic.com.ar/foros/index.php?topic=2248.15 que intentaban hacer un plc con pic y surgió este problema a partir de la respuesta #21
Citar
A:
auque las macros ayudan en gran medida a la programacion en ensablador, no es bueno abusar de ellas.
una macro no se complila hasta cuando no se llama desde el programa, pero si se llama dos, tres, cuatro o mas veces, cada llamada va a hacer que se incremente el tamaño del programa en la memoria del micro.
Ej: una macro que ocupe 10 pocisiones en memoria de programa, a no llamarla no se compila y oviamente no ocupa nada, al llamarla una vez ocupará 10 posiciones, al llamarla dos veces 20 posiciones, 3 veces -> 30 posiciones y asi sucesivamente.
es mejor trabajar con funciones se compilan solo una vez y se pueden diseñar para que se comporten diferente de acuerdo al valor de W o de algun registro temporal.

B:
Coincido plenamente contigo acerca de las macros, tienes toda la razon acerca del consumo infernal de memoria por cada llamado a la macro que utilizes.
Estuve pensando como hacer esto en otro lenguaje, para evitar el assembler, donde pasar un parametro por referencia es bastante complejo (en esto coincidiras conmigo), y lo que encuentro disponible es el Basic y el C.
Aunque no se como pasar los parametros por referencia en Basic, lo descarto pues no atiende las interrupciones hasta que no termina el comando que esta ejecutando en ese momento.
Con ese defecto no nos sirve para garantizar el minimo tiempo de scan y tener control sobre el mismo.
Si miras el C veo que podemos pasar parametros por referencia (es el campeon en ese sentido) y ademas creo que atiende correctamente las instrucciones.
Entre otros tambien es facil hacer matematica de punto flotante, tiene rutinas para atender teclados, etc...

A:
si se busca otro lenguaje (c, basic, etc), tocaría adaptarse a él, y muchas veces el código que generan no es optimizado, es muy grande, lo ideal sería seguir trabajando en ensamblador.

C:
Diste en el clavo del tema que quise explicar cuando publique ese codigo.
El PBP trabaja en background con macros.
Si miras en el directorio donde compilaste el programa veras un archivo del mismo nombre con extension .mac, entre otros.
Cada comando aumenta en forma increible el tamaño del codigo, es mas cuando repites muchas veces la misma instruccion (la peor es LCDOUT) se agranda en forma desproporcionada el tamaño del .hex resultante.
Imaginate que aun en ensamblador tu archivo tiene pocas lineas, cuando agrandas el programa se porta peor.

Pero si un Team de programadores uso ese esquema en assembler, porque lo hicieron asi??, no saben ellos programar funciones con pasada de parametros??
A mi entender son bastante genios y duchos en assembler, me parece fantastico que podamos disfrutar de una herramienta de ese tipo, pero por que no lo hicieron de otra forma??
No saben o no pueden??
La comparacion de tamaño de codigo yo la hice en su momento en Assembler, Basic y C.
Optimize aun mas en assembler al usar el Carry para rotar bits en las tramas de cada byte recibido.
Creo que me dio unos 57 KB el assembler, unos 64 a 65 KB el C y unos 128 KB el B, que es el mismo que enviaste.
Como seguimos??
Yo no encuentro la forma de pasar parametros y ademas como cubro la forma de llamar a la funcion sin el CALL??

Quería saber tu opinión, si es verdad lo que afirman y cuál sería la mejor solución para esto?
     

Desconectado Darukur

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 464
    • Informacion, recursos y ejemplos para desarrollos con microcontroladores
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #55 en: 07 de Noviembre de 2006, 09:21:19 »
Me parece que el punto mas importante a hablar acerca del C vs el assembler es la flexibilidad lograda en el codigo y la facilidad de entenederlo y depurarlo.
Una rutina en assembler es lo que hiciste en dicho momento, en C se puede cambiar la estructura del programa y alterar el funcionamiento total del codigo.

Carcass ya que empezaste con el C te recomiendo "El lenguaje de programacion C" de Kernighan & Ritchie, no tiene desperdicio, sobre todo en el manejo de punteros de memoria, que para mi es la base de una buena utilizacion del C en un microcontrolador, sino es como decis vos, no se le ve claramente el punto.

Saludos y me alegro que hayas empezado con el C.

Marcelo
El que no sabe lo que busca no entiende lo que encuentra.
Mi Pagina Web:  http://www.sistemasembebidos.com.ar
Mi foro:             http://www.sistemasembebidos.com.ar/foro/

Desconectado Darukur

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 464
    • Informacion, recursos y ejemplos para desarrollos con microcontroladores
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #56 en: 07 de Noviembre de 2006, 09:39:44 »
Menta:
Con respecto a las macros es verdad, no solo no son muy utiles si debes llamarlas a cada rato (hace una funcion mejor) sino que pueden llevar a codigo erroneo.
Ejemplo:
#define pot2(x) x*x

Esto funciona mientras que en X cargues una variable, pero si haces por ejemplo pot2(h++) y "h" valia 2 en vez de hacer resultado=2*2= 4 y que h=3, hace resultado=2*3=6 h=3.

En definitiva, usar la macro con criterio y no cargarle funciones en su entrada!

Yo por ejemplo uso las macros en las interrupciones ya que una funcion en interrupcion es lenta por el salvado de registros y ademas para dejar dentro de un componente todo el codigo relacionado.
El que no sabe lo que busca no entiende lo que encuentra.
Mi Pagina Web:  http://www.sistemasembebidos.com.ar
Mi foro:             http://www.sistemasembebidos.com.ar/foro/

Desconectado Darukur

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 464
    • Informacion, recursos y ejemplos para desarrollos con microcontroladores
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #57 en: 07 de Noviembre de 2006, 11:20:27 »
Yo me referia a las macros de C. El uso de macros en assembler ayudan mucho a la legibilidad del código en donde es contraproducente llamar a una subrutina.
Con respecto a "saber o no saber", yo considero  que nunca hay que cerrar un libro, siempre hay que agregar conocimiento.
Sino miren el dicho "Mas vale horas de prueba y error que minutos de lectura de libros".

A partir del PIC18, Microchip diseño sus micros especialmente para ser utilizados en C, utilizarlos en assembler es a mi entender en dichos micros, un desperdicio. O tal vez al entender de Microchip, que los diseño para tal fin.

Lo mismo pasa con las PC, todo recurso tecnologico nuevo (lease MMX, SSE, SSE2, 3Dnow,etc), si no hay un soporte de software que lo use, es como si no lo tuviese.
El uso de C en microcontroladores permite hacer desarrollos que obviamente consumiran mas recursos, pero el nivel de los resultados lo valida.
Peguense una vuelta por www.pumpkininc.com para ver las cosas que se pueden hacer (y en que poco tiempo) con un sistema operativo en tiempo real.
Uno puede realizar un programa pensado de manera lineal que el sistema operativo (en cooperacion con la tarea) realiza el context switch para realizar otras tareas con uso de prioridades, eventos, semaforos, mensajes, etc.

Uno podria pensar que algunos Kbytes no alcanzan para usar un lenguaje de alto nivel, pero parece que para algunos no fue impedimento para realizar exitos como la commodore 64, con solo 38 Kbytes libres para programar ¡y la de cosas que se podian hacer! (sin contar todo el kernel para BASIC que tenia en unos pocos Kbytes)

Saludos


Sistema operativo GEOS sobre una CBM64 a 0.99Mhz y 64Kbytes TOTALES (memoria RAM+ROM+VIDEO+CARACTERES,etc)
« Última modificación: 07 de Noviembre de 2006, 11:30:34 por Darukur »
El que no sabe lo que busca no entiende lo que encuentra.
Mi Pagina Web:  http://www.sistemasembebidos.com.ar
Mi foro:             http://www.sistemasembebidos.com.ar/foro/

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #58 en: 07 de Noviembre de 2006, 12:15:41 »
Cita de: carcas
Admiro por ejemplo a Juan Manuel Fangio, siendo el número 1 en lo suyo y admirado por millones, siempre conservó un corazón humilde.  Eso realmente vale oro.  No se puede decir lo mismo de otros... sin citar nombres pero que muchos imaginarán. 
Hay mucha gente en el foro que sabe mucho y no por eso lo anda diciendo a voces por ahí... eso también vale oro.

No conozco en detalle la vida de Fangio, pero posiblemente vos solo conozcas lo que se ve por la tele. O realmente sabes si en la intimidad era arrogante o no?
Muchos, entre los que me incluyo, somos muy humildes y buenas personas delante de los que conocen nuestros logros y delante de quienes nos felicitan y nos premian, siempre mantenemos la humildad. Pero delante de los que no tienen ni idea de lo que hacemos, lo que sabemos o lo que no sabemos, (como por ejemplo el foro) nos permitimos ser arrogantes, odiosos o como lo quieran llamar.

Yo creo que el que sabe mucho y no lo dice, es porque no esta seguro de saberlo o no quiere compartirlo. No se cual es peor.
Saber mucho y mantenerlo en secreto, lejos de valer oro, me parece una idiotez.

Si los grandes personajes de la historia hubiesen mantenido su "humildad", no divulgando sus inventos, hoy viviriamos en cavernas prendiendo fuego con hojas secas y un palito.

Saludos.
Carcass


Realmente me ha sorprendido el giro que tomó mi frase.

Realmente a veces me sorprendo de lo poco que conozco a la gente o de lo poco que se expresarme al escribir y no hacerme entender con hasta las frases mas simples.

Si has pensado que hablaba de tí, estás muuuy equivocado.

Si has pensado que yo dije que ser humilde significa no decir las cosas, nuevamente estás muyyy equivocado. 

Decir lo que uno sabe cuando corresponde es lo que hay que hacer, demostrar que uno sabe también me parece muy bien.  Ser agrandado, arrogante, pendenciero, no está bien, se sepa o no se sepa de un tema. 

En ningún momento asocio, asocié y asociaré humildad con no decir, comentar, demostrar, expresar lo que uno sabe. 

Saludos

PD: lamento lo de tus decepciones con el C, también opino que 4 horas (si usas el C18, IAR o el Hi-tech) es poco tiempo para que le saques el jugo y puedas realmente usarlo óptimamente (de manera que tus códigos en C ocupen casi lo mismo que en assembler). 

PD2: de Juan Manuel Fangio conozco muchas anécdotas de gente, no solo allegados a él sino gente común y es uno de los pocos casos en que todos coinciden con su extrema humildad. 

Te dejo una anécdota: Un amigo de él contaba una vez que estando en españa, lo paró un oficial de tránsito porque JMF estaba manejando su vehículo con una sola mano, a lo que JMF le respondió "si, es cierto, tiene ud razón".  Otro... le podría haber dado una respuesta "maradoniana" y decirle algo asi como "¿sabés quién soy yo? ¿vos me vas a venir a enseñar a manejar un auto a mi?", etc.
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Tema Dividido. ¿ASM Vs C?
« Respuesta #59 en: 07 de Noviembre de 2006, 12:20:21 »
carcass: Más allá de algún sarcasmo en mis dichos, no estoy a la altura de opinar ante alguien como vos o ante alguien como maunix en cuanto a cuestiones técnicas.
Por la sencilla razón de que:                         [suExperiencia ≈ miExperiencia * 30]

Menta, te equivocas, todos podemos opinar técnicamente o no.  De eso se trata el foro. 

Lo importante, y siempre lo aclaro, es "fundamentar la opinión".

Yo sólo me guío por el gran número de personas que usan C. No creo que todos estén equivocados...

Así es, incluso los "gurus" que rondan por el foro de Microchip andan ya todos migrados al C y usan el assembler para estudiar la arquitectura del micro o para alguna tarea específica. 

A mi me costó el cambio por opinar exactamente como opina carcass ahora, simplemente yo cambié de opinión, el tal vez siga pensando igual.  Cada cual a lo suyo.

Consulta al margen: alguien usó i2c con más de 2 dispositivos en asm. En ese caso, habría diferencia en el desempeño y/o memoría de programa consumida si uso C. Porque veo que en C con una simple instrucción (write y read)es suficiente.
en fín en ese casó C es muy fácil, me pregunto a qué precio? 10% más de prog, 20%, 30% quiza? No lo sé estimar yo porque no lo hice en asm, ni sé como lo haría.

No distan mucho, de hecho las rutinas en C para el i2c son prácticamente leer directamente los registros, modificarlos y esperar que suceda "algo". 

No se decirte un porcentaje porque depende de cada caso pero es bajo, si usas las bondades de optimizar tu código, de ubicar los buffers y los punteros en los mismos bancos de memoria.

- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)


 

anything