Domingo 22 de Diciembre de 2024, 13:06
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
ASM (Ensamblador)
(Moderador:
Eternal Idol
) »
Usando Mul
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Usando Mul (Leído 1615 veces)
tirengarfio
Miembro activo
Mensajes: 29
Usando Mul
«
en:
Miércoles 12 de Marzo de 2008, 20:14 »
0
Saludos,
viendo como se va ejecutando paso a paso este codigo de aqui abajo con CV, me he dado cuenta que tras ejecutar la linea "mul tabla[1h]" el resultado es:
DX: 0023
AX: 2800
¿El resultado no deberia de ser este?:
DX:0000
AX:2328
¿Que estoy haciendo mal?
Código: Text
DOSSEG
.MODEL SMALL
.STACK 100h
.DATA
tabla DW 5h DUP (2h, 9h, 3h, 7h, 1h) ; Trabajaremos con el rango 0-65535,
; tabla1<=50h
.CODE
INICIO:
mov ax, @data
mov ds, ax
mov ax, 2710h
mul tabla[0h]; Multiplicamos por 10.000 (2710h) el 1er elemento de tabla.
; El resultado se guarda en DX AX
mov bx, ax; Ahora vamos a mover el resultado almacenado en DXAX a BXCX.
mov cx, dx
mov ax, 3E8h; Multiplicamos por 1.000 (3E8h) el 2º elemento de tabla.
mul tabla[1h]
FIN:
mov ah, 4ch
int 21h
end INICIO
Un saludo
Tweet
Eternal Idol
Moderador
Mensajes: 4696
Nacionalidad:
Re: Usando Mul
«
Respuesta #1 en:
Sábado 15 de Marzo de 2008, 13:33 »
0
Si usas tabla[1h] entonces toma el segundo y tercer byte (siendo en este caso 0900h) y lo que en realidad queres es tabla[2h] (siendo en este caso 0009h).
Nacional y Popular
En mi país la bandera de Eva es inmortal.
Queremos una Argentina socialmente justa, económicamente libre y políticamente soberana.
¡Perón cumple, Evita dignifica!
La mano invisible del mercado me robo la billetera.
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
ASM (Ensamblador)
(Moderador:
Eternal Idol
) »
Usando Mul