|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Mar 2007
Messaggi: 384
|
[Assembly 8086] scrivere un byte in memoria invece di una word
Ciao a tutti ho il seguente problema:
ho un vettore in memoria che devo scansionare alla ricerca di occorrenze e, dove ne trovo, devo sovrascrivere la cella del vettore con un carattere. Il mio problema è proprio qui: facendo un dump della memoria mi sono accorto che oltre al carattere selezionato viene sovrascritto anche il successivo. L'istruzione incriminata è la seguente: Codice:
mov [BX+DI],'*' ;si marca la lettera Inoltre il fase di assemblaggio TASM mi restituisce proprio a questo rigo il seguente warning: Codice:
*Warning* occ.asm(134) Argument needs type override grazie per l'aiuto |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Mar 2007
Messaggi: 1792
|
Se non ricordo male la sintassi TASM prevede questa possibilità:
mov [byte BX+DI],1 |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Mar 2007
Messaggi: 384
|
grazie per l'aiuto
credo però che la sintassi sia sbagliata, infatti oltre al warning di prima appare il seguente errore Codice:
**Error** occ.asm(134) Need right square bracket grazie ancora! |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Mar 2007
Messaggi: 1792
|
Solitamente si adotta la sintassi mov byte [registro], 1
Però mi sembrava di ricordare che il buon vecchio TASM richiedesse il byte all'interno delle parentesi quadre. |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Mar 2007
Messaggi: 384
|
trovata la sintassi corretta!!!
Codice:
mov byte ptr [BX+DI],'*' |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Prova anche con
movb [BX+DI],'*' |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Mar 2007
Messaggi: 384
|
no mi spiace questa non funziona: secondo tasm è un'istruzione illegale
|
|
|
|
|
|
#8 |
|
Junior Member
Iscritto dal: May 2003
Messaggi: 10
|
il mio assembly è di gran lunga arrugginito, ma sei sicuro che con quell'indirizzamento (sulla destinazione) sia possibile passare un immediato?
edit. sì, si può. mi ritiro in buon ordine
__________________
Ultima modifica di gheg : 02-02-2008 alle 16:14. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:13.



















