| Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS | ||||
| FAQ: ¿Qué es un ensamblador? |
estoy aqui mal Se muestran 3 comentarios sin revisar
| A Stray Child | 04/5/06 |
| Bueno.. el lenguaje ensamblador es aquel lenguaje de bajo más nivel que usa mnemónicos, lo cual significa que tu usas palabras para hacer las operaciones máquina puesto que sería muy complicado hacerlo en binario, en ese lenguaje no hay nada de lo que estás acostumbrado en los otros lenguajes osea... no hay for, no hay write, ni objetos, ese tipo de lenguaje es específico de la arquitectura a la que le desees programar; de hecho en electrónica es muy usado para programar los microcontroladores ya que como tienes que hacer varios operaciones... el micro no tiene la manera de llevarlas a cabo con lenguajes de mas alto nivel (hay opciones que te permiten programarlos en C, pero eso lo cambian a instrucciones en ensamblador) por lo cual cada cosa que necesites hacer lo tienes que programar... mhh... como decirlo... a "pie", y debes de estar muy conciente de banderas, registros, y además estar muy conciente de las operaciones binarias, manejar hexadecimales y ver que te permite hacer la arquitectura en la que deseas programar... es más de hecho si "descompilas" una aplicación ejecutable verías que esta esta hecha en ensamblador. Saludos. |
|
| Ramiro | 04/5/06 |
| En cuanto a los lenguajes ensambladores tienes varios dependiendo de la Arquitectura, es decir, no es lo mismo programar bajo un Arquitectura Intel que bajo una de Motorola ya que la forma en la cual se maneja los operandos y operadores es realmente diferente. Por Ejemplo Intel: MOV AX,0004h Motorala MOV 0004h,AX como puedes ver es diferente la asignación pero tambien tienes que tener que no todos los operadores son iguales es decir, difiere del lenguaje. ¿Es posible utilizar assembler en algún lenguaje de alto nivel para producir mejoras en cuanto a la perfomance? Si por ejemplo: Vamos a ver los siguientes casos en los siguientes lenguajes Por Ejemplo en Delphi: Vamos a suponer que tienes Form1 y quieres programar un Función de Suma como hago? Hazlo de la siguiente manera: Function TForm1.Suma (Param1,Param2:Integer) : Integer; Begin Asm XOR EAX,EAX XOR EBX,EBX MOV EAX,Param1 MOV EBX,Param2 ADD EAX,EBX MOV Param1,EAX JMP @EndF; @EndF End; Suma:=Param1; End; |
|
| Ruben Dario Suarez Luzardo | 11/5/06 |
| Internamente las computadoras no entienden nada mas que 0 y 1, en otras palabras las memorias y procesadores trabajan como si fueran interruptores (apagado=0 y encedido=1). Los humanos utilizamos letras del alfabeto y numeros decimales(combinaciones del 0 al 9) y por lo tanto los computadores no podrian entender lo que queremos hacer; entonces para que nos entiendan tendriamos que escribirles solamente con ceros y unos pero seria un infierno para nosotros, ademas que nos cansarianos y terminariamos no haciendo nada. Es aqui donde el humano escribe un programa con letras del alfabeto y numeros decimales, y despues este programa debe ser convertido a traves de un compilador especial llamado ensamblador, en ceros y unos equivalentes, y de esta manera el computador interpretaria lo que queremos los humanos, en otras palabras las letras se convierten a ceros y unos para el computador. Revisa sistemas de numeracion binaria, decimal, octal, hexadecimal, bytes, bits, memorias y procesadores ademas de fundamentos de programacion. Espero de alguna manera haber colaborado contigo. Suerte!! |
|
| Ver la FAQ y todos sus comentarios | |
| Añadir un comentario del artículo |
|
Comentarios no revisados de: |