• Sábado 19 de Julio de 2025, 02:15

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - JuanK

Páginas: 1 ... 108 109 [110] 111 112 ... 231
2726
C/C++ / Re: Entrevista A Bjarne Stroustrup
« en: Miércoles 1 de Marzo de 2006, 15:37 »
Código: Text
  1. ; example of simplified Win32 programming using complex macro features
  2.  
  3. include 'win32ax.inc'
  4.  
  5. .code
  6.  
  7.  start:
  8.   invoke  MessageBox,HWND_DESKTOP,"Hi! I'm the example program!","Win32 Assembly",MB_OK
  9.   invoke  ExitProcess,0
  10.  
  11. .end start
  12.  
bueno esto no es asm es Win32Asm Ethernal me corregira si me equivoco.

Ahora indepenmdiente de si usas AWT, SWING, o java beans o lo que sea...
trata de hacer lo mismo en asm a ver como te va, por supuesto que es diez mil veces más rapido hacerlo en java C++ o C# no?

Estos son dos ejemplos de un hola mundo en asm intel de 16 bit para un exe y un com respectivamente
Código: Text
  1.  
  2. bits =16
  3. format MZ
  4. segment datos
  5. cad db "Hola Mundo",0
  6.  
  7. segment codigo
  8. entry codigo:start
  9.  
  10. start:
  11. cld
  12. mov ax, datos
  13. mov ds, ax
  14. mov si, cad
  15. call imprimir
  16. mov ah, 4ch
  17. int 21h
  18. ret
  19.  
  20. imprimir:
  21. mov ah,0eh
  22.  
  23. caracter:
  24. lodsb
  25. cmp al,0
  26. jz finchar
  27. int 10h
  28. jmp caracter
  29. finchar:
  30. ret
  31.  
  32.  

Código: Text
  1.  
  2. bits =16
  3. org 0100h
  4. start:
  5. cld
  6. mov si, cad
  7. call imprimir
  8. ret
  9. imprimir:
  10. mov ah,0eh
  11. caracter:
  12. lodsb
  13. cmp al,0
  14. jz finchar
  15. int 10h
  16. jmp caracter
  17. finchar:
  18. ret
  19. cad db "Hola Mundo",0
  20.  

Las facilidades de programaciíon generalmente tienen implicaciones a nivel de performance ya que en general poseen funciones 'genéricas' que permiten hacer mas cosas conmen os instrucciones, lo cual desde luego conlleva a un gasto mayor de memoria a un flujo d eprograma mucho más elaborado que si tuvieses una unica funcionalidad.

En el ejemplo anterior los programas sirven solo para colocar la palabra hola mundo en pantalla, modificandolo levemente servira para colocar alguna otra frase, sin embargo tratar de hacer algo mas generico y convertir ese programa en un printf de lenguaje C tomara muchisimo más tiempo y desde luego creara un programa mucho más grande, con mas gasto de memoria y menos eficiente pero que a la larga en un futuro nos ahorraria decenas de horas de porgramación para colocar otra frase en pantalla no o no?

2727
C/C++ / Re: Entrevista A Bjarne Stroustrup
« en: Miércoles 1 de Marzo de 2006, 14:21 »
jajaja
bueno eso depende de como compil¿e cada compilador y de que opciones tenga habilitadas por defecto.

A lo que más me refería es que es muy cierto que antes los programadores era considerados genios... hoy en día las secretarias hacen una macro en excel y ya son programadoras para muchas empresas  :blink:

Antes un porgramador podia cobrar miles de dolares por hacer un programa, hoy en día el software se regala e incluso 'es libre', asiq ue que no suena descabellada la idea de haber hecho con C++ lo que dice el articulo ya que en teoria  eso iria en favor de los porgramadores, por supuesto creo que eso nunca sucedio asi pero definitivamente hubiese podido ser...  :ph34r:

Respecto al performnce y al tamaño de los programas , todo es cuestion de reusabilidad y de seguridad, es decir de proteger el acceso a los datos y de demorar menos en el desarrollo,  por ello tenemos un hola mundo en asm mucho mas complejo y grande que en cualquier otro lenguaje pero mucho mas rapido y con un ejecutable mucho mas pequeño, mientras que en java ese mismo hola mundo  solo son tres lineas de codigo pero genera un ejecutable bastante grande y no es para nada rápido en comparación con el de asm...

diferencias:

*aprendes a hacer un hola mundo en java en menos de dos minutos, mientras que en asm a algunos les podria tomar una tarde o más

*entender el codigo java es igualmente facil casi que no se necesita de interpretacion, mientras que para entender elm codigo asm ... necesitaras saber un poco más y dedicarle más tiempo.

*no te debes preocupar por un buffer overflow en java porque los tipos son seguros, pero en asm debes hacer lo tu y vaya si se peude convertir en nu problema

*si quires ejecutar tu porgrama de asm en otroa maquina y ojala con un OS diferente , casi seguro que tendras que rehacerlo por completo, en java en cambio nisiquira tendras que tocarlo

y más


asi que la justificacion del tamaño, el consumo de memoria y otros que pueden tener los programas generados con lenguajes actuales esta más que dada, asique el texto es realmente un fraude pero, insisto, si tiene mucho de cierto y nos pone apensar acera de nuestro futuro y del curso que ha tomado la tecnología.

2728
C/C++ / Re: Entrevista A Bjarne Stroustrup
« en: Miércoles 1 de Marzo de 2006, 04:17 »
Creo que es una farsa que tiene mucho de cierto, aunque nada como para tomarlo muy a pecho.

2729
Programación de Videojuegos / Re: Terminacion De Proyectos
« en: Martes 28 de Febrero de 2006, 20:16 »
Si, mi proyecto de grado fue el videojuego y motor FMC.

Tal como lo habiamos delimitado fue terminado y nos fue bastante bien, aunque sin lugar siempre hay cosas extras que se querian hacer y no se hicieron por falta de tiempo.

AUNQUE HAY OTROS QUE HE DEJADO ABANDONADOS...

2730
DirectX / Re: Visual C++ 2005 Expres Edition?
« en: Martes 28 de Febrero de 2006, 14:15 »
lo más nidicado siempre estebner primero instslado la herramienta de progframacion, en tu caso C++.net  2005 y luego instalar el SDK.

Lsito ya despeus de eso no es sino comenzar a programar y ya.

2731
Programación de Videojuegos / Re: Mmm
« en: Martes 28 de Febrero de 2006, 14:07 »
no lo se,

ya le he enviado la solicitud a solocodigo a ver que se puede hacer.

2732
C/C++ / Re: Reservar Memoria Para Array De Estructuras
« en: Martes 28 de Febrero de 2006, 14:03 »
Exacto, y si mal no recuerdo en lenguaje C puedes hacer esto:

Código: Text
  1. struct Nodo *Array=(struct Nodo*) malloc(sizeof(struct Nodo)*Num);
  2.  

2733
C/C++ / Re: Duda Con Estructura De Control
« en: Lunes 27 de Febrero de 2006, 23:13 »
Ya veo,
siempre es conveniente leer las ayudas, para próxima:


Ayuda Tags

2734
C/C++ / Re: Crear Un Ping Con Turbo C
« en: Lunes 27 de Febrero de 2006, 18:14 »
CLARO, HASTA DONDE SE ES LA UNICA FORMA!!

Salvo que consigas una libreria que ya te haga todo el trabajo.

2735
C/C++ / Re: Crear Un Ping Con Turbo C
« en: Lunes 27 de Febrero de 2006, 14:03 »
1- Aprender socket bajo Unix
2- revisar le protocolo ICMP y hacer ejercicios de practica, es necesario revisr algun RFC
3- revisar el funcionamiento del ping e implementarlo


Referencia ICMP - PING

2736
C/C++ / Re: Ayuda Con Mi Programa, X Fis!!
« en: Lunes 27 de Febrero de 2006, 13:53 »
primero que nada, no necesitas crear nua clase fecha, proqwue este tipo de dato ya existe en C#.

DateTime

2737
C/C++ / Re: Duda Con Estructura De Control
« en: Lunes 27 de Febrero de 2006, 13:48 »
1- si quieres más ayuda debes colocar el codigo formateado haciendo uso del tag [ CODE ]
2- para lo que necesitas de capturar más de una tecla debes usar la funcion scanf o gets

2738
C/C++ / Re: Reservar Memoria Para Array De Estructuras
« en: Lunes 27 de Febrero de 2006, 13:41 »
revisa las intrucciones
malloc
calloc
realloc
de lenguaje C, o la instruccion
new

de
C++

entre otras.

2739
Allegro / Re: Libreria Allegro.h
« en: Domingo 26 de Febrero de 2006, 19:30 »
mas abajo estan los demas link...

ademas recuerda que allegro.h no es la libreria, es el archivo con los encabezados de la libreria .

http://foros.solocodigo.com/index.php?showtopic=13007
http://foros.solocodigo.com/index.php?showtopic=19964

2740
Programación de Videojuegos / Re: Mmm
« en: Viernes 24 de Febrero de 2006, 16:07 »
mmm
las fundi y se perdio la encuesta...

maldición!!!  :angry:  :blink:  :fire:

2741
DirectX / Re: Visual C++ 2005 Expres Edition?
« en: Jueves 23 de Febrero de 2006, 13:31 »
Creen...?  :blink:

por supuesto que se puede, no hay ninguna limitante al respecto.

2742
Programación de Videojuegos / Re: Mmm
« en: Jueves 23 de Febrero de 2006, 13:29 »
Si, mi proyecto de grado fue el videojuego y motor FMC.

Tal como lo habiamos delimitado fue terminado y nos fue bastante bien, aunque sin lugar siempre hay cosas extras que se querian hacer y no se hicieron por falta de tiempo.

AUNQUE HAY OTROS QUE HE DEJADO ABANDONADOS...

2743
C# / Re: Diferencias
« en: Miércoles 22 de Febrero de 2006, 17:24 »
ninguna es mejor que otra.

lo que pasa es que se compila en modo debug para poder hacer debug... suena redundante pero asi es, sino compilas en modo debug no podras hacer seguimiento  de los valores de las variables en un momento determinado, un ejecutable creado en modo debug es mas grande y mas lento y más grande que uno creado de alguno de los otros modos.

El modo release generalmente viene preconfigurado para mejorar el rendimiento y el tamaño del archivo.

Los otros dos son variantes de los anteriores.

2744
Programación de Videojuegos / Re: La Mejor Forma Para Crear Un Juego?
« en: Miércoles 22 de Febrero de 2006, 15:02 »
ALTERNATIVAS:

LENGUAJES:   C++, C#, DELPHI
Librerias:       DirectX, OpenGL

2745
La taberna del BIT / Re: ¿como Se Hizo?
« en: Miércoles 22 de Febrero de 2006, 00:05 »
Cita de: "Enko"
¿escribieron la ejecutable del compilador en un heditor hexadecimal?
totalmente factible, aunque no lo peudo asegurar pero seguramente (y lo mas obvio a mi parecer)el  primer ensamblador fue hecho directamente en lenguaje de maquina.

2746
La taberna del BIT / Re: ¿como Se Hizo?
« en: Miércoles 22 de Febrero de 2006, 00:03 »
Cita de: "Enko"
Cita de: "JuanK"
en asm supongo  :rolleyes:
pero asm es un lenguaje de programación, como hicieron el compilador que compilo pro primera vez asm?
Asm no se compila, se ensambla, cada instruccion asm equivale a una instruccion en lenguaje de maquina.

2747
VB .NET / Re: 32 Bits /64 Bits
« en: Martes 21 de Febrero de 2006, 13:48 »
Asi es el desarrollo de .net para 64 bit esta en beta,
pero no puedes ejecutar un programa de 64 en una maquina de 32 salvo que el programa sea de 32 realmente o que tu sistema operativo posea una especie de em,ulador capaz de conmvertir un programa de 64 en uno de 32.

2748
C# / Re: Comparaciones De Cadenas
« en: Martes 21 de Febrero de 2006, 04:03 »
ademas en C# se pueden compara cadenas tan solo usando el operador ==  ejemplo

Código: Text
  1.  
  2.  
  3. String s1, s2;
  4.  
  5. s1="hola";
  6. s2="Hola";
  7.  
  8.  
  9. if (s1==s2)
  10. {
  11.    ....
  12. }
  13. else
  14. {
  15. ...
  16. }
  17.  
  18.  

2749
C/C++ / Re: Programa Tcpdump En C
« en: Martes 21 de Febrero de 2006, 04:00 »
bueno y si ya sabees que debes usa la libreria pcap... cual es el problema? en que necesitas puntualmente que te ayuden?

2750
C/C++ / Re: Bios.h
« en: Martes 21 de Febrero de 2006, 03:59 »
Como supongo que estas usando Windows, mejor ve a la pagina de msdn que alli esta la documentacion.  ahh si y si loo hacer para windows seguramente no puedes utilizar un compilador tan antiguo como el turbo C

Páginas: 1 ... 108 109 [110] 111 112 ... 231