Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Esercizio su Assembler8086

    Ciao a tutti!
    Mi sto esercitando su Assembler8086 in vista dell'esame ma non mi sono chiare alcune cose su questo esercizio.

    Si scriva una procedura assembler per x86 per il la verifica della checksum di un vettore DATAVECT di 100 dati di tipo DW.
    Tale procedura deve calcolare il checksum dell’area come OR ESCLUSIVO (EXOR) dei valori di tutti gli interi (2 BYTE) dell’area occupata dal vettore di dati da controllare.
    LA procedura deve controllare il valore ottenuto con il vecchio valore di Checksum registrato all’atto della precedente scrittura di DATAVECT. Il valore di checksum è CHECK e occupa l’intero (ovvero i 2 byte) successivi a DATAVECT nello spazio dati dichiarato.

    La procedura deve terminare:

    • In caso di presenza di errori scrivendo il valore –1 su AX
    • In caso di assenza di errori scrivendo 0 in AX.



    La prima domanda è, come faccio a "dire" al programma che CHECK deve occupare i 2 byte sucessivi a DATAVECT? Avevo pensato di utilizzare LEA ma non so esattamente come.
    La seconda domanda è come conosco il vecchio valore di Checksum? Devo imporlo a priori?

    Ringrazio tutti quelli che mi vorranno aiutare

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Dichiara l'area per il vettore e subito dopo l'area per quella del check
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Dichiara l'area per il vettore e subito dopo l'area per quella del check
    Ti ringrazio!
    Quindi se io definisco i dati in data segment uno sucessivo all'altro, saranno memorizzati nella sequenza da me indicata?
    Per quanto riguarda invece il vecchio valore della Checksum lo devo impostare io a mio piacimento?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    1) Sì

    2) Dal testo si capisce che il valore ottenuto va confrontato con CHECK già memorizzato ma non si capisce come ci arrivi il precedente CHECK
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Quote Originariamente inviata da oregon Visualizza il messaggio
    1) Sì

    2) Dal testo si capisce che il valore ottenuto va confrontato con CHECK già memorizzato ma non si capisce come ci arrivi il precedente CHECK
    Perfetto grazie mille!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.