Ayuda con assembler

Discusión cerrada
  1. #1
    Avatar de andres88_
    Registración
    Jan 2006
    Mensajes
    1,054

    Ayuda con assembler

    Hola gente, tengo el siguiente problema con este ej:

    1) realizar la sumatoria s=n1+n2+m3+...+nn, siendo datos las direcciones de n1,nn y s. Los operandos son todos numeros signados de 8 bits.

    A lo que el profesor planteo:

    ORG $0000 ; declaracion de variables
    S RMB 1 ; almacena el resultado de la sumatoria
    DIR1 RMB 2 ; almacena la direccion del primer sumando
    DIR2 RMB 2 ; almacena la direccion del ultimo operando


    ORG $8000 ; buscar condiciones ideales
    CLRA ; limpiar el acumulador
    CLRB ; limpia acumulador
    LDD DIR2
    SUBD DIR1 ;calculo la cantidad de temrinos a sumar
    CMPA # 0000 ; comparar A con 0
    BNE ERROR ; saltar si z==0


    ahora lo que no entiendo es: si deice que son de 8 bits, porque usa al acumulador d, para hacer la resta, y desp solo compara con la parte A? Osea que parte de la instruccion hace la resta?

    Gracias!!
    • Me gusta
    Me gusta
     

  2. Compartí este Tema:
    • Vistas: 293
    • Mensajes: 2
    Seguí este Tema: Suscribite
  3. #2
    Avatar de shrike
    Registración
    Sep 2003
    Mensajes
    469

    Re: Ayuda con assembler

    Es muy difícil responderte si no aclaras que set de instrucciones utilizas, parece tal vez, algún x86 de 8 bits, pero ni idea.

    LDD capaz carga la posición a memoria en 2 registros y cuando SUBD hace la resta deja el resultado en D:A, deberías conseguir el manual para cada una de esas instrucciones.
    Para ver esos detalles, y que se entienda mas fácil, seria raro que no te lo hayan dado en tu materia, al menos en un link.


    Igualmente este thread tal vez estaría mejor en el subforo de programación.
    • Me gusta
    Me gusta
     

  4. #3
    Avatar de andres88_
    Registración
    Jan 2006
    Mensajes
    1,054
    Citar Mensaje original enviado por shrike Ver Mensaje
    Es muy difícil responderte si no aclaras que set de instrucciones utilizas, parece tal vez, algún x86 de 8 bits, pero ni idea.

    LDD capaz carga la posición a memoria en 2 registros y cuando SUBD hace la resta deja el resultado en D:A, deberías conseguir el manual para cada una de esas instrucciones.
    Para ver esos detalles, y que se entienda mas fácil, seria raro que no te lo hayan dado en tu materia, al menos en un link.


    Igualmente este thread tal vez estaría mejor en el subforo de programación.
    Motorola HC11

    Enviado desde mi MB525 usando Tapatalk
    • Me gusta
    Me gusta
     

Discusión cerrada