Iniziare con l'assembler

Bandit1
Ciao a tutti


seguendo una guida trovo

1)"caricare il programma da eseguire " io da dove li prendo i programmi?

2) inizializzare il pc all'entry point, che vuol dire?

3) procedere step by step con la modalità TRACE cioè?

Risposte
codino75
il link risulta non accessibile a noi mortali.

Bandit1
ok, ora me ne sono reso conto cmq non fa nulla
visto che ho scritto quello che c'è scritto ...al max posso aggiungere

1)"caricare il programma da eseguire (filename.lis)(menù-ProcUnit-LoadAssebler) " io da dove li prendo i programmi?

2) inizializzare il pc all'entry point (ricavabile ddal filename filename.lis)(menù-ProcUnit-Modify registers).
che vuol dire?

3)procedere step by step con la modalità TRACE (apposità icona nella bassa degli strumenti, oppure F7, oppure Simulation/Trace) .

cioè?

lorven
Premetto che non conosco l'ambiente di sviluppo dei tuoi programmi assembler.
Mi sembra però che venga chiesto di eseguire una specie di debug del programma. Si vuole:

1- caricare un programma, presumo quello corrispondente a filename.lis, ad un certo indirizzo di memoria, il cosiddetto entry point;
2- comandare l'esecuzione a partire dall'entry point;
3- eseguire una istruzione per volta, per poter visualizzare l'evolversi del contenuto dei registri e delle aree di memoria coinvolte.

Auguri! :D

Kroldar
Fammi indovinare: devi sviluppare dei programmi in assembly con Asim, che simula il Motorola 68000?

Bandit1
esatto per il 68000

@ lorven
non so dove prendere il file .lis
la 2 e la 3, sono un pò enigmatiche

lorven
Credo sia utile una breve storia di quanto accade programmando in assembly, con riferimento ad un generico ambiente di sviluppo assembler.
Dopo aver scritto un programma (.asm, il "sorgente") assembly, lo si deve rendere eseguibile. Qui inizia il compito dell'assembler,
il cui output consiste in un modulo oggetto (.obj) e di un listato (.lst). Il tuo file .lis dovrebbe essere il listato e contenere, tra l'altro,
l'indicazione dell'entry point del .obj, cioè della prima istruzione eseguibile (questa, in C, corrisponderebbe a main(); in assembly 80x86, ORG NumHex ).
Sarà poi linker a generare l'eseguibile vero e proprio (.exe) e sarà il loader a caricare in opportuna zona di memoria il .exe per iniziarne l'esecuzione.

A te -presumo- viene chiesto di:
- caricare un .exe, forse generato da te, con un comando del debugger di tipo "l(oad) filename.exe" all'indirizzo dell'entry point
- assegnare al pc (program counter) questo entry point, per far iniziare correttamente l'esecuzione
- comandare la simulazione dell'esecuzione del .exe, cioè un tracing del programma, una istruzione per volta.

Kroldar
"Bandit":

non so dove prendere il file .lis

Il .lis lo devi generare con un altro programma... io usavo Asimtool.

lorven
Un link che illustra il processo di assemblaggio sul 68000, dal sorgente al debugging, con un esempio chiaro e completo:
http://www.case.edu/cse/eeap/282/12_assembly_examples.html

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.