• Viernes 29 de Mayo de 2020, 00:05

Autor Tema:  Bucle con el 8086  (Leído 2007 veces)

albertocp89

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Bucle con el 8086
« en: Domingo 15 de Enero de 2012, 18:25 »
0
Hola, soy nuevo, me registro para ver si me ayudais con una duda

Estoy empezando a programar con el 8086, en una practica consistente en pasar una cadena de 0 y pasarlos a decimal

El codigo del bucle en cuestion es este

(asi estan definidas las cadenas)
cadena_binaria db 1, 0, 1, 0, 1, 0, 1, 0
vector_peso db 128, 64, 32, 16, 8, 4, 2, 1

(esta es la parte del codigo del bucle)
mov si, 0
mov cx, 8
mov bl, 0
bucle1:
mov AL, cadena_binaria[si]
mul vector_peso[si], AL
sum BL, vector_peso[si]
inc si

me da error en la linea del mul y en la del sum, alguien me podría decir por qué?
loop bucle1
mov sinsigno, BL

Toph

  • Moderador
  • ******
  • Mensajes: 420
  • Nacionalidad: sv
    • Ver Perfil
    • http://www.electronicayotros.blogspot.com/
Re:Bucle con el 8086
« Respuesta #1 en: Sábado 28 de Julio de 2012, 21:05 »
0
Bueno el post es viejo, pero ya que no se respondió, puede ser que alguien mas le surja la duda asi que la contesto:

El Mul trabaja asi:

MUL (registro o memoria de 8 bits) = AL*(registro o memoria de 8 bits) ; la respuesta queda en AX

MUL (registro o memoria de 16 bits)= AX*(registro o memoria de 16 bits) ; la respuesta queda en DX:AX

por lo que solo debes poner MUL vector_peso[si] para multiplicarlo con AL

y SUM no existe en 8086, ahi puedes usar ADD o ADC asi:

ADD BL, vector_peso[si]


Por favor leer esto antes de postear. Gracias
NO alimenten al TROLL y morirá
¿Querés ayudar?, pues doná comida gratis con un simple clic aqui ,sin trucos
photobucket , Google , wine y cutepdf Rock!!!


programacion,c,c++,
Microcontroladores,java,linux,videojuegos,
,.NET,asm,codigo
por favor este 2012 que sea