Ensamblador - Ayuda con las interrupciones

 
Vista:

Ayuda con las interrupciones

Publicado por Juan (12 intervenciones) el 08/11/2008 12:18:50
¡Hola!, Tengo un problema, al poner este codigo en 8 bits funciona perfectamente pero lo intento poner en 16 bits y el ensamblador me da este error: mov es:[bx],si -> invalid operand mov es:[bx],ax -> invalid operand, ¿Alguien sabe como lo puedo poner en 16 bits de modo que funcione?:
org 100h
start:
mov ah, 0
mov al, 3
int 10h
xor ax,ax
mov es, ax
mov al, 90h
mov bl, 4h
mul bl
mov bx, ax
mov si, offset [test1]
mov es:[bx], si
add bx, 2
mov ax, cs
mov es:[bx], ax

int 90h

mov ah, 0
int 16h


int 20h

test1:
pusha
push cs
pop ds
popa
iret
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:Ayuda con las interrupciones

Publicado por MSH (120 intervenciones) el 08/11/2008 14:57:30
Según yo le faltaba la directiva .386 ó .486 que indica compatibilidad con 16 bits

Saludos

;--------------------------------------------------------------------------------------------------------------------

model small
.386
.code
org 100h
start:
mov ah, 0
mov al, 3
int 10h
xor ax,ax
mov es, ax
mov al, 90h
mov bl, 4h
mul bl
mov bx, ax
mov si, offset [test1]
mov es:[bx], si
add bx, 2
mov ax, cs
mov es:[bx], ax

int 90h

mov ah, 0
int 16h

int 20h

test1:
pusha
push cs
pop ds
popa
mov ax,4c00h
int 21h
end start
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:Ayuda con las interrupciones

Publicado por Juan (12 intervenciones) el 08/11/2008 15:12:55
lo e intentado pero dice que .386 y .486 no lo soporta y sigue diciendo lo mismo
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:Ayuda con las interrupciones

Publicado por Juan (12 intervenciones) el 08/11/2008 15:21:44
PD: yo utilizo emu8086 y la instruccion use16 para indicar que son 16 bits.
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:Ayuda con las interrupciones

Publicado por MSH (120 intervenciones) el 08/11/2008 18:53:14
Intenta ensamblarlo en MASM611 o en TASM. El EMU8086 no es de fiar...

De hecho lo ensamblé en MASM611 y no me dió problemas

Saludos
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