jump to navigation

Pequeños cambios, optimizaciones y fallos encontrados. 23 marzo, 2007

Posted by pjmicrocontroladores in Información general.
trackback

Se ha creado una optimización para configuraciones de 32 registros virtuales por la cual, las llamadas a las operaciones de multiplicación y división son mucho más cortas y además no usan memoria matemática intermedia. Así eliminamos la carga inicial y posterior lectura desde esta memoria y reducimos el tamaño de memoria necesaria para almacenar valores intermedios. Debido al carácter impositivo de la solución tomada, se necesitan conocer los registros exactos donde cuadrarán el código para poder generarlo. Por ello, solo se ha implementado cuando se dejan los 32 registros virtuales por defecto, necesitando en los otros casos el antiguo método.

También se han corregido dos fallos en el código. Uno en el fichero de cabecera p16f877.h de la forja donde se usaban en cierto punto comentarios en ensamblador sin comentarlo para C, por lo que se producía un error en su ejecución. El otro error más sutil se producía cuando se usaban los modificadores por línea de comandos para des-/activar la cabecera de interrupción y la memoria compartida.

Estoy ahora solucionando un pequeño fallo en la optimización introducida para las funciones tipo divmod por la que para dos operaciones de idénticos operandos una para dividir y otro para el resto, se use una sola operación y no dos.

Sigo con la idea de crear un manual para el porting que vaya desde el nivel básico hasta un nivel más avanzado, pero es difícil sacar tiempo sobre todo para decidir qué es un nivel básico y qué uno avanzado. Si no encuentro una máquina que multiplique el espacio/tiempo en las próximas semanas empezaré a hacer pequeñas entregas que se compliquen poco a poco, hasta confeccionar con ellas el manual completo.

Por otro lado todos los cambios están en el control de versiones. Las versiones de Windows se compilarán en con grandes cambios y no para estos avances intermedios, ya que si no sufriremos otra “inundación” de versiones. Saludos.

Anuncios

Comentarios»

No comments yet — be the first.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: