Assembly Motorola 68000

di il
5 risposte

Assembly Motorola 68000

Salve ragazzi, volevo chiedere delle informazioni riguardanti il linguaggio su questo tipo di processore motorola.
Esiste un libro "didattico" che,lo spiega in maniera limpida e facile?
Ho trovato solo manuali che,saltano parecchie cose e io che,sono alle prime armi sto riscontrando tanta difficoltà.

Non ho nemmeno trovato in giro per il web qualche supporto video, c'è solo per l'intel 8086 -.-'


Ho un'altra domanda,un dubbio sulle due direttive d'assemblaggio DS e DC:
Quando scrivo <label >DC.SIZE item , sto dichiarando e definendo una variabile giusto? Ma nella zona item cosa devo mettere?
Invece quando scrivo label DS.SIZE dimensione, sto riservando uno spazio di memoria alla variabile con un certo nome simbolico label.
Ho forti dubbi su queste due direttive.

Vi ringrazio anticipatamente.

5 Risposte

  • Re: Assembly Motorola 68000

    Libri ne esistono tanti, magari chiariscono anche i tuoi dubbi ma data la tua inesperienza non "afferri" i concetti subito, ma è normale. Ovviamente le basi devi averle ...

    DC definisce delle costanti non variabili. Ad esempio una stringa di testo o valori numerici conosciuti e che non cambiano.

    DS invece riserva spazio per dati che puoi sfruttare in lettura e scrittura, variabili, array e simili
  • Re: Assembly Motorola 68000

    La ringrazio per il chiarimento. Il fatto è che, qualsiasi programma che faccio, anche se penso di averlo fatto bene e rispettato tutte le regole, mi compare l'errore "error:simbolo non definito" , sa come posso risolvere in generale?

    Un altro dubbio:

    Ad esempio: somma di due numeri contenuti in DATA1 e DATA2, risultato messo in RESULT.
    SORGENTE:
    ORG $1000 ; Direttiva di assemblaggio capita e tiro sospiro di sollievo
    DATA1 DC.W $12 ; DUBBIO T.T , io sto dichiarando una costante di nome DATA1 di tipo word , però se scrivo $12 come item, cosa intendo?
    DATA2 DC.W $0D ; DUBBIO T.T , io sto dichiarando una costante di nome DATA2 di tipo word , però se scrivo $0D come item, cosa intendo?
    RESULT DC.W 0 ;DUBBIO T.T , io sto dichiarando una costante di nome RESULT di tipo word , però se scrivo 0 come item, cosa intendo?

    ORG $4000
    START: MOVE.W DATA1,D5
    ADD.W DATA2,D5
    MOVE.W D5,RESULT
    STOP #$2700
    END START

    Questo programma funziona, però non ho capito bene il segmento dati. Ho posto come commento i dubbi di fianco a ciascuna riga di codice, il restante mi è chiaro piu o meno.
    Nel caso scrivo:
    RESULT DS.W 1 , sto dicendo che sto riservando uno spazio di memoria di nome Result di una (1) word?


    La ringrazio anticipatamente e mi scuso per le banalità.
  • Re: Assembly Motorola 68000

    Per il primo problema non so, dipende dal programma... E comunque non mi pare sia così perché l'esempio che mostri non presenta quell'errore.

    $12 e $0D sono i valori delle due costanti che devi sommare, no?

    Per RESULT usa DS perché non è una costante


    P.s. Ci ciao tutti del tu...
  • Re: Assembly Motorola 68000

    Eh non sono abituato a dare del tu a persone incontrate per la prima volta XD
    Comunque ti ringrazio.

    Si da quanto ho capito se metto $ vuol dire che sto ragionando il esadecimale quindi se scriVo $2 , è un valore in esadecimale invece, se lo ometto è decimale.
  • Re: Assembly Motorola 68000

    Si è in esadecimale (l'esempio del $2 non è il migliore ma ok lo stesso)...
Devi accedere o registrarti per scrivere nel forum
5 risposte