PDA

View Full Version : Assembly


Mariuccia
19-09-2007, 20:26
Ragazzi volevo sapere se è possibile programmare in assembler su mac... oggi stavo seguendo la minuziosa guida di giobe2000 e ho provato a scaricare la roba tramite parallel ma mi ha crashato, a sto punto mi chiedo se sia possibile scrivere in assembler su mac:stordita:


grazie:)

Janky
19-09-2007, 20:47
eh... ne esistono tanti di assembly quale vorresti usare te?

solo per farti un esempio, se usi gli interrupt del dos naturalmente non ti funziona niente in modalità nativa

Mariuccia
19-09-2007, 21:02
avevo sentito parlare di sta cosa solo che io devo proprio iniziare a scrivere con questo linguaggio quindi per ora nn so quasi nulla...

io stavo senguendo questa guida che è la + completa :
http://www.giobe2000.it/index.htm
e volevo un qualcosa consono a seguire questa guida...che nn desse problemi :)

Criceto
19-09-2007, 21:33
avevo sentito parlare di sta cosa solo che io devo proprio iniziare a scrivere con questo linguaggio quindi per ora nn so quasi nulla...

io stavo senguendo questa guida che è la + completa :
http://www.giobe2000.it/index.htm
e volevo un qualcosa consono a seguire questa guida...che nn desse problemi :)

Non è che sia un "linguaggio". E' il codice macchina del processore.
Tanto devi decidere se programmare per x86 o per PPC. Dipende dal Mac che hai.

Nel primo caso io desisterei subito. L'x86 ha l'architettura più contorta e fatta coi piedi che si sia mai vista nel campo dei microprocessori. Meglio lasciar fare ai compilatori... ;)

Ma se proprio sei convinto probabilmente la cosa più facile è partire dal compilatore C e fare delle funzioni "inline" in assembler. Xcode (i tools di sviluppo inclusi) dovrebbero supportarle. Però mai fatto, quindi non ti so dire di più.

Janky
19-09-2007, 21:38
avevo sentito parlare di sta cosa solo che io devo proprio iniziare a scrivere con questo linguaggio quindi per ora nn so quasi nulla...

io stavo senguendo questa guida che è la + completa :
http://www.giobe2000.it/index.htm
e volevo un qualcosa consono a seguire questa guida...che nn desse problemi :)

mmh... è molto legato al dos, o lo emuli o devi cambiare architettura

purtoppo l'assembly non è un "linguaggio" che puoi imparare e usare indipendentemente su qualsiasi sistema

seguendo quella guida, molte cose non funzioneranno neanche su linux per esempio

Mariuccia
19-09-2007, 21:40
L'assembler che ci hanno "spiegato" ai corsi è quello del classico 8086. Te che consigli?:stordita:

Mariuccia
19-09-2007, 21:49
mmh... è molto legato al dos, o lo emuli o devi cambiare architettura

purtoppo l'assembly non è un "linguaggio" che puoi imparare e usare indipendentemente su qualsiasi sistema

seguendo quella guida, molte cose non funzioneranno neanche su linux per esempio




Come ho detto l'ambiente è l'8086 :)
e mi sembra che quella guida sia proprio sull'8086... purtoppo il libro del corso è scritto in un modo che uno che nn ha conoscenze precendenti non ci chiappa niente di niente

Criceto
19-09-2007, 22:17
Come ho detto l'ambiente è l'8086 :)
e mi sembra che quella guida sia proprio sull'8086... purtoppo il libro del corso è scritto in un modo che uno che nn ha conoscenze precendenti non ci chiappa niente di niente

Come ti ha detto Janky se fai un programma in puro assembly ti devi attenere alle regole dell'OS per riuscirlo ad eseguire. Quindi per ogni OS è diverso.
Se il corso è fatto per il DOS, per 8086 poi (con tutti i suoi problemi di indirizzamento della memoria) sarà dura farlo girare sotto Mac.

Viceversa se vuoi fare solo delle routine, la cosa migliore per me è inglobarle nel codice C, con una funzione inline. Il compilatore C si preoccupa dell'interfacciamento con l'OS, e tu puoi scrivere la parte che interessa in codice macchina.

Mariuccia
19-09-2007, 23:04
boh via... non so, è un macello:mc:
guarderò...se cela faccio chiedo al prof:)

brixia67
19-09-2007, 23:49
Certo che per iniziare l'assembler siete partiti dal peggio che c'è o che c'era, ti consiglierei vivamente di passare al MC6800 per imparare.

Solido
20-09-2007, 13:22
Certo che per iniziare l'assembler siete partiti dal peggio che c'è o che c'era, ti consiglierei vivamente di passare al MC6800 per imparare.

Per me è la stessa cosae poi il professore è un folle... l'esame verte quasi totalmente o totalmente sull'assembler e lui lo ha spiegato in 3 lezione di cui 2 pomeridiane fuori orario:rolleyes: :muro:

brixia67
20-09-2007, 13:33
Auguri...:bsod:

Solido
20-09-2007, 13:34
Auguri...:bsod:


sono nella m3rd4 :D

sirus
20-09-2007, 14:07
Purtroppo l'Assembly x86 è veramente pessimo (a livello di sintassi e non) se si sfruttano tutte le funzionalità che mette a disposizione (indirizzamento di memoria a 20 bit :eek: in particolare); sicuramente l'Assembly 68k è notevolmente più "bello" (suprattutto a livello di sintassi) ma se ti chiedono 8086 non puoi di certo decidere di fare altro. :D
La cosa migliore è installare una versione di DOS su qualche vecchio PC (almeno io feci così a suo tempo). ;)

Solido
20-09-2007, 14:59
con bootcamp e xp non c'è verso giusto?

AnonimoVeneziano
20-09-2007, 16:40
per il dos puoi provare :

http://dosbox.sourceforge.net/news.php?show_news=1

Come assemblatore ti consiglio il NASM con sintassi intel

Solido
20-09-2007, 17:00
per il dos puoi provare :

http://dosbox.sourceforge.net/news.php?show_news=1

Come assemblatore ti consiglio il NASM con sintassi intel


il primo a cosa servirebbe? :)

il nasm è per pc o mac? :stordita:


grazie mille per li info ;)

Ufobobo
20-09-2007, 17:48
Io alle superiori mi esercitavo virtualizzando una macchina windows.

Janky
20-09-2007, 17:57
il primo a cosa servirebbe? :)

il nasm è per pc o mac? :stordita:


grazie mille per li info ;)

il primo è un emulatore per dos, il secondo è per dos, da far girare quindi nell'ambiente emulato

frizzo28
20-09-2007, 18:08
Mi sa che il modo piu' semplice e' rimediarsi un vecchio PC anche noi studiamo assembler per 8086 e io ho un vecchio 486 in bianco e nero portatile che un mio amico voleva buttare e va benone per fare assembler puoi indirizzare direttamenta locazioni di memoria usare gli interrupt del bios e del Dos... insomma ci fai tutto (per lo meno per quanto riguarda l'assembler... certo non ci rippo un Divx :sofico: )

Solido
20-09-2007, 18:12
il primo è un emulatore per dos, il secondo è per dos, da far girare quindi nell'ambiente emulato

mm quindi se scarico quella roba mi dovrebbe funzionare giusto?
perchè virtualizzando win con parallel mi crasha:(