Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Añadir registros de tabla paradox con asm (https://www.clubdelphi.com/foros/showthread.php?t=20909)

ciscu 29-04-2005 10:11:29

Añadir registros de tabla paradox con asm
 
Hola a todos!!!

¿Alguien puede decirme cómo insertar registros en una tabla paradox utilizando el assembler integrado de delphi, es decir, ASM...END;?

PD: de paso, cómo consultar, modificar y eliminar registros, si no es mucho pedir...

ciscu 29-04-2005 19:56:00

O podéis indicarme alguna página que explique ensamblador para tablas...?

Gracias anticipadas

delphi.com.ar 29-04-2005 20:08:18

¿Porqué quieres hacerlo con assembler y no directamente en ObjectPascal?....
Podrías hacerlo en Pascal, compilar y ver la ventana CPU para ver que es lo que compiló delphi :D

ciscu 02-05-2005 09:33:15

Gracias por tu respuesta, delphi.com.ar!!!

Verás, estoy haciendo un programa de gestión y hay algunos bucles (como pasar las facturas a contabilidad) que tardan entre 5 y 10 min. dependiendo de la cantidad (normalmente unas 3000 facturas), y lo que yo querría es que este bucle reduciese al máximo el tiempo; leé por ahí que el problema de hacer un programa con un lenguaje de alto nivel como delphi es que el ordenador tiene que emplear mucho tiempo en traducir las instrucciones a lenguaje máquina, y por eso querría solamente convertir el trozo de código del bucle en ensamblador.

Si hago lo que dices, cómo puedo saber lo que corresponde a dicho bucle si en la ventana CPU me aparece todo el programa compilado?

Gracias anticipadas!!!

delphi.com.ar 02-05-2005 14:52:02

Cita:

Empezado por ciscu
Si hago lo que dices, cómo puedo saber lo que corresponde a dicho bucle si en la ventana CPU me aparece todo el programa compilado?

Si tienes marcada la opción Mixed (boton derecho sobre el código compilado), te mostrará mezclado con el código assembler código Delphi lo que te ayudará a identificar el código.


Cita:

Empezado por ciscu
leé por ahí que el problema de hacer un programa con un lenguaje de alto nivel como delphi es que el ordenador tiene que emplear mucho tiempo en traducir las instrucciones a lenguaje máquina

Los lenguajes que pierden tiempo en esta tradución son los lenguajes interpretados, delphi no es un lenguaje interpretado. Por otro lado, si hay procesos que es conveniente escribirlos en assembler, proque no siempre los compiladores reducen nuestro código al mínimo posible de instruccionesa al procesador, o al juego mas veloz, no creo que logres mucho en un proceso como el tuyo. Hace unos años, ayudé a un compañero ha depurar un algoritmo de reconocimiento de imágenes, armamos alguna de las rutinas en asm, y notamos que no había diferencia alguna, luego comparamos nuestro assembler con el código que compilaba Delphi, y o sorpresa!... eran muuuy similares!

Saludos!

fly 03-05-2005 01:21:22

Como te dice el compañero delphi.com.ar, yo tampoco creo que puedas ser capaz de optimizar el código usando assembler.

Hace muuchos años, como ocho ó nueve (y más), yo si que conseguí mejoras notables usando ensamblador en temas gráficos, u optimizando un calculos que usaba una raiz cuadrada, aproximando el resultado con asm.

Pero esos eran otros tiempo ( Turbo Pascal ) y otras aplicaciones ( Puramente gráficas ). Hoy en día no creo que nadie "en su sano juicio" quisiera hacerlo en ensamblador, aún es más si tienes que aprenderlo.
¿No te seria más rentable pasar las DDBB a otro tipo? Firebird/Interbase va muy bien.
Optimizar sentencias en SQL es mucho más rentable en estos dias que optimizar el código en assembler.

Si fueran rutinas gráficas, de sonido, residentes, puro calculo aritmético,etc... estaría encantado en ayudarte, pero con lo que se de assembler para 80x86 me llega para descartar el uso de tan bajo nivel con DDBB. Eso es trabajo de los desorralladores de los motores de las bases de datos.

Saludos y suerte.

PD: Pon algo del código maldito y quizá alguien te pueda ayudar.

JXJ 03-05-2005 06:05:00

delphi.com.ar

¿Me explicas de favor como la hago para ver el codigo, ensamblador. ¡??
por que no entendi lo que dijiste. Tengo Delphi 7.

*******************
Si tienes marcada la opción Mixed (boton derecho sobre el código compilado),
te mostrará mezclado con el código assembler código Delphi lo que te ayudará
a identificar el código.

*******************

Gracias.-

marcoszorrilla 03-05-2005 06:59:42

Me uno a lo dicho, creo que no vas a ganar absolutamente nada intentando actualizar datos desde ensamblador.

1º.- Tienes que tener un dominio muy grande de ASM.
2º.- Tienes que conocer los datos técnicos de la cabecera de la tabla.
3º.- Hay que tener en cuenta que al dar altas o hacer modificaciones hay que actualizar índices....

Si el motor que utilizas es lento, piensa más bien en cambiar a otro motor, aunque si la cantidad de datos a insertar es grande, dificilmente se va a poder rebajar el tiempo.

Un Saludo.

delphi.com.ar 03-05-2005 14:12:26

Cita:

Empezado por JXJ
¿Me explicas de favor como la hago para ver el codigo, ensamblador. ¡??
por que no entendi lo que dijiste. Tengo Delphi 7.

Me refería a poder ver el código compilado en la ventana de debug "CPU"

Saludos!


La franja horaria es GMT +2. Ahora son las 04:29:40.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi