Pagina 1 di 1
Aiuto NASM
Inviato: lunedì 13 gennaio 2014, 16:14
da Mieti
Buongiorno a tutti, sono nuovo nel forum e da poco ho installato ubuntu, quindi ho qualche difficolta ad ambientarmi con la riga di comando ed eccetera.
Il problema di adesso non riguarda tanto ubunto ma NASM. Io ho bisono di provare qualche programma fatto in assembly per processori 8086, ho scaricato nasm, istallato ma non so utilizzarlo. So che è solo un assemblatore quindi il sorgente l'ho fatto su un comune file di testo.
Non so se può servire ma vi metto il sorgente della prova che volevo fare
dosseg
.model small
.stack 100h
.data
s db "Hello World",13,10,"$"
.code
move ax,@data
mov ds,ax
lea dx,s
mov ah,9
int 21h
mov ax,4c00h
int 21h
end
Grazie in anticipo
Re: Aiuto NASM
Inviato: lunedì 13 gennaio 2014, 18:06
da ale4
La compilazione con nasm per un programma per architettura 32bit (per 64 bit metti -elf64 al posto di -elf) si fa con
Il che produrrà un file oggetto (programma.o) che dovrai successivamente linkare
oppure puoi fare il linking anche con gcc (in quel caso al posto di _start nella funzione principale programma dovrei mettere main)
Comunque sia quel programma non funzionerà mai,intano usa le chiamate del DOS (int 21h),e la sintassi non mi pare nemmeno compatibile con il compilatore nasm.
L' assembly è un linguaggio molto vario,ogni compilatore ha una sintassi diversa,in più i programmi dipendono da architettura del pc e dal sistema operativo usato
Re: Aiuto NASM
Inviato: giovedì 16 gennaio 2014, 18:05
da Mieti
ale4 [url=http://forum.ubuntu-it.org/viewtopic.php?p=4515961#p4515961][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:La compilazione con nasm per un programma per architettura 32bit (per 64 bit metti -elf64 al posto di -elf) si fa con
Il che produrrà un file oggetto (programma.o) che dovrai successivamente linkare
oppure puoi fare il linking anche con gcc (in quel caso al posto di _start nella funzione principale programma dovrei mettere main)
Comunque sia quel programma non funzionerà mai,intano usa le chiamate del DOS (int 21h),e la sintassi non mi pare nemmeno compatibile con il compilatore nasm.
L' assembly è un linguaggio molto vario,ogni compilatore ha una sintassi diversa,in più i programmi dipendono da architettura del pc e dal sistema operativo usato
si lo so, infatti io cercavo un programma che emulasse il processore intel8086. Comunque grazie per la risposta.

Re: Aiuto NASM
Inviato: giovedì 16 gennaio 2014, 18:09
da ale4
Più che altro se vuoi far girare quel programma devi emulare il DOS,non il processore x86 (dato che è quello che stai usando),e l' assembler adatto per il dos e quella sintassi,non avendo mai programmato in assembly sotto dos non ti so rispondere però
Re: Aiuto NASM
Inviato: giovedì 16 gennaio 2014, 18:31
da Mieti
ok, grazie comunque per la risposta.