Dudas en ASM

Iniciado por Oblivi0n, 6 Octubre 2010, 19:55 PM

0 Miembros y 1 Visitante están viendo este tema.

Oblivi0n

Buenas gente, estoy mirando ensamblador, y viendo ahora el "Hello world" en Wikipedia, he visto cosas que nunca habia visto antes.

Aqui les dejo el codigo y espero que alguien me pueda explicar esos comandos que no entiendo. (estan marcados en el codigo como un comentario)
Código (ASM) [Seleccionar]

.model small     ;<------NO ENTIENDO ESTO
.stack              ;<------NI ESTO
.data               ;<.-------NI ESTO
Cadena1 DB 'Hola Mundo.$'
.code              ;<-----NI ESTO

programa:
    mov ax, @data
    mov ds, ax
    mov dx, offset Cadena1
    mov ah, 9
    int 21h
    mov  ah,4ch
    int 21h
end programa


De antemano muchas gracias!!!
Un saludo.

VirajeCR

Supongo que cuando uno no conoce un idioma, por ejemplo el inglés, es difícil saber lo que puede significar "hello world". Sin embargo, en estos casos, y en muchos otros, sería muy bueno que primero que nada se aprenda el lenguaje, al menos un poco. Esto con el fin de preguntar algo, que de no ser por tu propio esfuerzo, no puedas contestar.

Oblivi0n

Si conozco asm, y lo uso, pero dentro C, y estaba mirando ejemplos de ensamblador fuera de C, osea integros escritos en asm, quizas no tengo un gran conocimiento, pero desde luego, no pregunto que significa hola si no se hablar...

VirajeCR

La respuesta a su pregunta es tan simple como un breve análisis a la sintaxis del programa que usted a puesto de ejemplo. Por otro lado, usted dice saber que conoce de ASM, porque supuestamente lo a utilizado en C. Pero por sus palabras puedo deducir que realmente no conoce ASM. De ser así, al menos sabría que un programa generalmente está definido por tres segmentos. Uno para la pila, otro para los datos y uno para el código.

Esto, usted debería saberlo, o podría saberlo si al menos hubiese emprendido una simple búsqueda en google. Pero supongo que esto también lo sabe.

Saludos.

Oblivi0n

Como bien dije, no tengo un gran conocimiento de ensamblador, y si, realize una busqueda en Google primero, tras no encontrar nada (fallo mio tambien?), decidi preguntar aqui, porque hasta ahora mis dudas fueron resueltsa amblamente, ya veo que no todos lo usuarios son iguales, tranquilo, ya me las apañare solo, siento haberte molestado tanto con mis preguntas de novato.

Un saludo.

P.D : creo que podias haberte limitado a responder a la pregunta, al menos yo lo aria así, resuelves la duda y punto, si segun tu, me esfuerzo mas o menos, es problema mio, no tuyo,no crees?

VirajeCR

El problema, de muchos de los nuevos que se dan una vueltita por acá, es que todo lo quieren así no más. Es verdad, yo podría haberte simplemente contestado tu pregunta, y luego qué, siempre que tengas una pregunta la vas a preguntar sin haber hecho un esfuerzo previo. En fin. El tiempo de las personas es muy valioso sabes y hacer perder el tiempo a quienes gastan un poco para ayudarte es algo injusto. De allí que en muchas comunidades hacker los usuarios siempre sean indiferentes o sarcásticos a la hora de contestar.

En todo caso te he dado una respuesta a tu pregunta. Sé que no era la que esperabas, pero en cierto modo tener en cuenta esto que a pasado hoy acá, te va a ayudar mucho en el futuro.

franfis

Leete el tutorial de Iczelion, es muy bueno, con respecto a tu pregunta, son directivas o pseudoinstrucciones que le sirven al ensamblador que usas.