Ho appena iniziato a imparare il linguaggio dell'assembler. Mi sono inventato il concetto di EQU. All'inizio ha perfettamente senso fino a quando sono arrivato a DC.B. Qual è la differenza tra DC.B e EQU? Non puoi semplicemente usare EQU per ogni costante? Grazie per l'aiuto.EQU vs DC.B. Qual è la differenza?
risposta
Non ho familiarità con la sintassi specifica dell'assemblatore, quindi questa risposta è un'ipotesi plausibile.
La direttiva EQU è utilizzata per indicare l'assemblatore che si desidera avere una costante simbolica di nome (spesso calcolata da altri valori assembler incluse altre definizioni EQU) che è possibile fare riferimento a in altri luoghi nel testo di partenza assemblaggio. Si deve sempre scrivere
symbolname EQU constantexpression
Questo permette di scrivere symbolName al posto del constantexpression in altri posti nel testo di partenza. Ma questo nome di per sé non ha alcun effetto diretto sui dati binari del programma assemblato finale.
"DB.B" (presumo 'define constant (byte)' è usato per dire all'assembler che tu con il programma assemblato finale di avere un byte di dati incorporato in esso nella posizione relativa nel file sorgente " . Scrive
optionalname DB.B constantexpression
per avere il valore calcolato dell'espressione costante collocato in un byte di dati nei dati binari del programma assemblato.
Quindi, si potrebbe scrivere
AnEvenNumber EQU 2
MyEvenNumber DB.B AnEvenNumber
La prima riga produce solo una costante denominata e senza la seconda non ha alcun effetto sul file binario. La seconda riga produce un byte nel tuo binario, che contiene il valore indicato dalla costante simbolo denominata.
Si noti che la direttiva DB.B consente anche un nome opzionale; questo simbolo può essere utilizzato anche in altri punti del codice. A seconda della sofisticazione del vostro assemblatore, si può essere in grado di definire
LocationOfEvenNumber EQU MyEvenNumber
e
DW.W LocationOfEvenNumber
ora producendo una parola nel file binario che "punti" sul tuo byte di dati binari.
- 1. node.js vs. mete.js qual è la differenza?
- 2. mb_strpos vs strpos, qual è la differenza?
- 3. Shim vs. Sham: Qual è la differenza?
- 4. Permetti vs Stub, qual è la differenza?
- 5. $ dirty vs $ invalid: Qual è la differenza?
- 6. Database vs tablespace, qual è la differenza?
- 7. javax.ws.rs.core.Cookie vs javax.ws.rs.core.NewCookie, Qual è la differenza?
- 8. Qual è la differenza tra colorWithSRGBRed vs colorWithDeviceRed vs colorWithCalibratedRed
- 9. Qual è la differenza tra Cassandra vs Oracle Coherence?
- 10. qual è la vera differenza tra lemmatization vs stemming
- 11. Qual è la differenza tra npm 3 vs Bower?
- 12. Java IO vs NIO, qual è la differenza?
- 13. underscorejs: qual è la differenza tra extendOwn vs extend?
- 14. qual è la differenza tra ResultSetExtractor vs Rowmapper?
- 15. Qual è la differenza "master origine" vs "origine/master"
- 16. webpack "--watch" vs "--hot": qual è la differenza?
- 17. Qual è la differenza tra process.cwd() vs __dirname?
- 18. Qual è la differenza tra `while (true)` vs `while (\ true)`?
- 19. Qual è la differenza tra process.cwd() vs process.env.PWD?
- 20. PHP post_max_size vs upload_max_filesize, qual è la differenza?
- 21. Javascript - inline vs script esterno - qual è la differenza?
- 22. JS .checked vs jquery attr ('checked'), qual è la differenza?
- 23. Categoria Datastore vs. Stringa: qual è la differenza?
- 24. In MsBuild, qual è la differenza tra CreateProperty vs PropertyGroup?
- 25. GCC -g vs -g3 GDB Flag: Qual è la differenza?
- 26. Qual è la differenza tra Template.Instance() vs template.data?
- 27. Qual è la differenza tra Function Pointer vs Function Call?
- 28. ActionBar setDisplayHomeAsUpEnabled (true) vs setDisplayShowHomeEnabled (true). Qual è la differenza?
- 29. login google plus vs login google, qual è la differenza?
- 30. Qual è la differenza tra essere db_owner vs db_datareader/db_datawriter?
Con quale assemblatore si sta lavorando, su quale sistema operativo? Per quale processore? –
HC12? EQU definisce solo un simbolo costante, DC riserva spazio per una variabile (.B lo rende un byte). – harold