Ensamblador - De un novato

 
Vista:
Imágen de perfil de Willy

De un novato

Publicado por Willy (1 intervención) el 08/02/2006 12:04:33
Hola a todos.
Estoy empezando con esto del ensamblador.
y tengo las siguientes dudas:

1. que significa una instruccion como la siguiente mov ax, bx (o similares), donde esta y que tamaño es un ax, bx, cx, dx. Realmente todo bx pasa hacia ax?, si es así donde queda ax?, que pasa con su contenido.

2. Sea:
datos segment
variable1 db 3,50,100
variable2 db 'un dato', 'otrro', 'son mas de tres','porque'
datos ends
En una sola variabe (1 y 2) se agrupan varios datos?, como debo interpretar el anterior código?.

3. Que código debe estar siempre como encabezado, definiciones o como segmentos antes de escribir en si un programa cualquiera?.
Espero su ayuda gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:De un novato

Publicado por n.n (3 intervenciones) el 11/02/2006 22:39:28
manda el programa porfa y te alludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:De un novato

Publicado por Yoel Ocmin (4 intervenciones) el 14/02/2006 22:50:26
Como lei por ahi, a lo Jack el destripador, vayamos por partes.

1. que significa una instruccion como la siguiente mov ax, bx (o similares), donde esta y que tamaño es un ax, bx, cx, dx. Realmente todo bx pasa hacia ax?, si es así donde queda ax?, que pasa con su contenido.

Respuesta.- Bueno antes q nada, AX, BX, CX, DX, son registros internos q tiene el microprocesador. Estos registros son de 16Bits..... que se pueden tomar para AX como AH y AL donde AH es la parte mas alta (8 bits mas siginificativos) y AL (los 8 bits menos significativos

Ejemplo:
AX=1234H=0001 0010 0011 0100b
Bueno donde: AH=12H=0001 0010b y AL=34H=0011 0100b

Para mas informacion, busca arquitectura interna del computador de 8 Bits 80x86.

Bueno
Ahora, la instruccion MOV destino,fuente. Lo que hace es mover (chancar, reemplazar... como lo quieras llamar). a destino el contenido de Fuente.
para el caso de MOV AX,BX.... mueve en AX el valor de BX.... otras palabras AX=BX.

Ahora q sucede con AX, pues, se pierde... :-D

2. Sea:
datos segment
variable1 db 3,50,100
variable2 db 'un dato', 'otrro', 'son mas de tres','porque'
datos ends
En una sola variabe (1 y 2) se agrupan varios datos?, como debo interpretar el anterior código?.
Respuesta.
Bueno para la computadora, estos no son mas que cadenas de datos.
Con la salvedad, que en el primer caso estas ingresando valores q ocupan un byte
y en el segundo caso estos valores ocupan mas de 1.

variable1 puede ser tomado como un array de 3,
donde variable[0]=3 , variable[1]=50, variable[2]=100

pero para el segundo caso
es equivalente a
variable db 'u','n',' ','d','a','t','o','o','t','r','r','o','s','o','n',' ','m','a','s',' ','d','e',' ','t','r','e','s','p','o','r','q','u','e'

seria como un array de 33 valores.

3. Que código debe estar siempre como encabezado, definiciones o como segmentos antes de escribir en si un programa cualquiera?.
Espero su ayuda gracias.
Respuesta.
Basicamente depende del tipo de modelo q vas ha usar y el tipo de procesador.
Esto es algo q abarca mas de una simple respuesta. Te recomiendo leer un texto. Para mi uno facil de entender es el texto de ensamblador de la Universidad de Guadalajara.

Cualquier otra consulta facilmente puedes escribirme al correo

Atentamente
Yoel Ocmin
http://proyectosfie.tk
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar