Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    [ASM x86] Alcuni dubbi...

    Ciao ragazzi, ho studiato un pò di assembly da qui:

    http://old.disco.unimib.it/architett...9/x86/asm1.htm

    Dite che è buona come guida? ci ho messo una vita per trovarla

    Comunque mi permangono ancora alcuni dubbi... tipo:

    1) Quando usare le parentesi quadre attorno ai registri?
    2) Quando indico variabile[si] a cosa mi riferisco?

    Ce ne sono altri ma questi sono i più importanti... Vi prego aiutatemi



    Scusate mods il titolo vago ma non sapevo che mettere...
    PaTeR
    From Ban to Life

  2. #2
    Utente di HTML.it L'avatar di cso
    Registrato dal
    Aug 2004
    Messaggi
    2,050
    Non sembra male come guida.

    1) Quando ne hai bisogno, basta capire come usarle.
    2) Ti faccio un esempio.

    Tu sai che i registri DI e SI servono per puntare alla memoria RAM.
    Se tu vuoi puntare all'indirizzo 1000 fai:
    codice:
    MOV SI,1000
    Se invece vuoi mettere nell'indirizzo 1000 un dato:
    codice:
    MOV SI,1000
    MOV [SI],<DATO>
    Capito?

  3. #3
    Se invece vuoi mettere nell'indirizzo 1000 un dato:
    codice:
    MOV SI,1000
    MOV [SI],<DATO>
    Capito? [/QUOTE]


    oppure

    codice:
    MOV SI,1000
    MOV BYTEPTR[SI],<DATO>

  4. #4
    ok, grazie a tutti e due

    Ma voi avete imparato all'uni come lavorare in asm?

    Grazie veramente...
    PaTeR
    From Ban to Life

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Personalmente ho imparato da solo ... iniziando dalla CPU 6502 ...

    Non e' difficile ...

  6. #6
    in modo "grezzo" potremmo dire che quando vuoi usare SI o DI come "variabili" ovvero vuoi modificare il contenuto del registro allora non usi le [] mentre se vuoi modificare l'area di memoria a cui puntano DI e SI allora devi usare le [] in questo caso ti consiglio di usare byteptr[] wordptr[] ect ect almeno rileggendo il codice capisci cosa posti :3

  7. #7
    Originariamente inviato da X-sPiKe_iT
    in modo "grezzo" potremmo dire che quando vuoi usare SI o DI come "variabili" ovvero vuoi modificare il contenuto del registro allora non usi le [] mentre se vuoi modificare l'area di memoria a cui puntano DI e SI allora devi usare le [] in questo caso ti consiglio di usare byteptr[] wordptr[] ect ect almeno rileggendo il codice capisci cosa posti :3
    ok...

    ah poi per provare, ho stabilito una variabile così:

    aaa DB 'abd'

    ed ho 'scoperto' che con

    mov aaa[2], 'c'

    posso cambiare i valori dell'array :P
    PaTeR
    From Ban to Life

  8. #8
    Utente di HTML.it L'avatar di cso
    Registrato dal
    Aug 2004
    Messaggi
    2,050
    Originariamente inviato da PaTeR non PeTeR
    ok, grazie a tutti e due

    Ma voi avete imparato all'uni come lavorare in asm?

    Grazie veramente...
    Superiori
    Quando arriverò all'uni sarò avvantaggiato!

    Visto che stai facendo le variabili guardati anche DW ed EQU (costante).


  9. #9
    Originariamente inviato da cso
    Superiori
    Quando arriverò all'uni sarò avvantaggiato!

    Visto che stai facendo le variabili guardati anche DW ed EQU (costante).

    anche tu sei alle superiori? Io in seconda...


    Beh, DeclareWord la conosco, ma non ho trovato a cosa serve EQU


    PS: Ho studiato tutto, anche le procedure e le macro, ora non mi resta che esercitarmi...
    PaTeR
    From Ban to Life

  10. #10

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 © 2026 vBulletin Solutions, Inc. All rights reserved.