Newsgroup: it.comp.lang.c
Titolo: [assembler][aiuto!!!]

ciao, sono nuovo del ng, dovrei svolgere tre
esercizi-compiti in assebler, qualcuno può darmi una mano?
i tre compiti sono questi:
1. Convertire un numero nella corrispondente stringa di caratteri ascii che
lo rappresenta
2. Generare tutte le premutazioni dei primi N numeri naturali
3. Dato un array di DWORD, invertire l'ordine dei byte delle DWORD che hanno
un numero dispari di bit a uno (praticamente sarebbe il passaggio da
little-endian a big-endian giusto?)
un grazie di cuore a chi me li vorrà risolvere così poi meli studio per bene
:) ciao ancora
ah, ho visto che anche un mio amico a postato le stesse domande eheh basta
che rispondete a uno :) ciao

 che rispondete a uno :) ciao
.. e provare a postare sul ng giusto? Tipo
it.comp.lang.assembly
HTH
C:\>iao Angelo
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


Altro che uno... sembra che una miriade di persone abbiano gli stessi
esercizi, fra l'altro non li reputo cosi' difficili , a parte quello delle
dword che avrei gia' un modo per risolverlo ma sarebbe una schifezza
incredibilmente incredibile (della serie sprechiamo 1000 cicli perche' ci
piace).
ps = sei OT  -> it.comp.lang.assembly
--
Keita'
--
ATI drivers on Linux, firmate la petizione!
http://www.petitiononline.com/xf123456/petition-sign.html
?

si infatti anch'io ho gli stessi esercizi. ah, su assembly non si degnano di
rispondere...magari eravate più gentili :) ciao

 di rispondere...magari eravate piů gentili :)
Gentile non e' sinonimo di "fesso" (e non e' detto che si debba conoscere
tutto per risolvere i problemi del mondo).
Se vuoi ti risolvo i problemi proposti in 2 (leggasi due) minuti usando il
"C" (che, se non vado errato, e' il linguaggio di cui si discute in questo
NG).
C:\>iao Angelo
P.S. Nonostante abbia una scarsissima conoscenza dell'Assembler (a
proposito, assembler di quale processore?) x86, i problemi citati non
dovrebbe essere troppo complicato risolverli.
Il primo si risolve con un po' di divisioni per 10 e somme con 0x30H, il
secondo dovrebbe risolversi con qualche ciclo (o cercando con google un
post di Serni intitolato "Permutazione in assembly", l'ultimo con
qualche shift e qualche lettura di AH e AL (ammesso che si stia usando
il registro AX) e qualche mov.
Non e' che su assembly non vi hanno risposto semplicemente perche' non
avevano voglia di farvi i compiti?
Per il link di cui sopra, lascia perdere, te l'ho trovato io... Spero
almeno che tu sia in grado di farci click sopra
http://groups.google.com/groups?q=group:*.programmare+author:serni&hl=en&lr=&ie=UTF-8&oe=UTF-8&scoring=d&selm=57pacvgjo2h3d65o5soa47l3rt2n6bkk11%40L.Serni&rnum=1
Serni ha usato "ABCD", spero non sia un problema generalizzarlo usando
"12345 ... N".



Vedi, secondo il sottoscritto, se avete degli esercizi di assembly vuol dire
che e' una vostra materia.
Andando a naso direi che sono compiti per le vacanze? da consegnare entro
l'ultimo giorno di scuola e non ci state dentro? dubito siate studenti
universitari perche' quegli esercizi li reputo facili io che faccio le
superiori.
Secondo me basterebbe sbattersi un momentino e un idea vi viene, in piu'
molto probabilmente come dicono anche un post piu' su l'asm e' x86 avete la
bellezza di 4 registri, che puo' sembrare una banalita' ma aiuta molto.
Direi che in 2 orette li avete scritti ,debuggati,corretti, ridebuggati.


 ha scritto nel messaggio
news:xWjFa.68383$pR3.1...@news1.tin.it...


cioé se secondo ta una domanda di aiuto è fesso? bah

cmq bastava mandare a Marco un diagramma a blocchi e poi selo faceva da solo
il programma, non vedo dove sta  il casino, se è tanto facile farli per voi
sti esercizi.

ops ho scritto male, volevo dire, se uno risponde a una domanda di aiuto
(qualsiasi sia la ragione della domanda) è un fesso? boh

 farli per voi sti esercizi.
Ci vuole tanto a capire che  questo *NON* e` il gruppo giusto? Non hanno
risposto su iclassembly? E  allora? Avranno avuto i loro  motivi, non e`
una scusa per postare (offtopic) su altri gruppi.
*plonk*
Kronos
-- 
Home: 
http://kronoz.cjb.net
Una donna sposa un uomo sperando che cambi, e lui non cambiera`. Un
uomo sposa una donna sperando che non cambi, e lei cambiera`.

ma guarda che avrà capito di essere ot ma che c'entra se uno sa capire come
funziona un programma capirlo pensando in c o asm è uguale, bastava fargli
capire il funzionamento dei programmi (come aveva iniziato a fare Angelo, ma
magari più aprofondito, il diagblocchi già bastava secondo me) e poi in asm
selo scriveva lui, se uno voleva rispondere ci mancherebbe, se no niente.

 funziona un programma capirlo pensando in c o asm è uguale, bastava fargli
Hai ragione si, hai ragione no.
Hai ragione si nel fatto che l'algoritmo non cambia al cambiare del
linguaggio.
Hai ragione no nel appoggiare il suo post OT , perche' dalla domanda pare
che voglia l'esercizio, non l'algoritmo.


 un grazie di cuore a chi me li vorrà risolvere così poi meli studio per 
bene
Non si chiedeva un suggerimento o come svolgerlo... Si chiedeva a qualcuno
di risolverli, e questo può dar fastidio.
Certo, il modo con cui rispondono molte volte non è dei più amichevoli, ma
questo è un altro paio di maniche... :)

 questo č un altro paio di maniche... :)

 non è difficile capire questo per persone intelligenti come voi...
Come me, no. :) Io non capisco una mazza nè di assembly nè di c. :)

 entusiasmante che parlare con uno schermo...tu che dici?:))ciao ciao
ROTFL.
Da noi (che siamo i vostri "genitori" bolognesi, caro il mio CSR-er) è 
successo un putiferio perchè qualcuno aveva chiesto ad un newsgroup la 
pappa cotta. Certo magari da voi non accadrà niente, magari nessuno si 
farà problemi di sorta su quanto sia giusto o meno riuscire per meriti 
che non sono propri.
La qualità dei corsi universitari è decisamente crollata (anche la 
qualità a bologna, sebbene ritengo che -purtroppo per me- ci sia ancora 
da lavorare un minimo di più rispetto alla media).
Spero solo che tutti i laureati che sfornerà l'università in questi anni 
non vadano a ledere le possibilità di persone più preparate (tra le 
quali, ancora, non mi inserisco).

 ha scritto nel messaggio
news:cJBFa.119254$g92.2...@news2.tin.it...


 allo studente e che studiera mattina pomeriggio e sera
Guarda, a parte gli esami matematico/fisici tutti gli altri esami che ho 
dato finora presupponevano la capacità di programmare (quando in C, 
quando in assembler, Java, Scheme, Perl, Php ...)
In bocca al lupo per l'esame, la mia critica era rivolta non a te, ma al 
sistema universitario.

 (qualsiasi sia la ragione della domanda) è un fesso? boh
<CITE hoc>
si infatti anch'io ho gli stessi esercizi. ah, su assembly non si degnano
di
rispondere...magari eravate più gentili :) ciao
</CITE>
Mia interpretazione: Su icla non ci hanno dato retta, magari qui siete
piu' "gentili" e  ci fate gli esercizi.  Una  richiesta di questo tipo
di "gentilezza" irrita  per tutta una serie motivi:
- NON E' IL NG DOVE SI DISCUTE DI ASSEMBER e  la lettura del manifesto
  del ng dove si posta e' sempre consigliabile;
- un  ng non  e'  obbligato a  prendere  in considerazione  i post  di
  nessuno: se qualcuno lo fa, lo fa a titolo di cortesia personale;
- di solito si  apprezza molto lo sforzo del poster: il detto "Aiutati
  che Dio ti aiuta", vale anche qui e  chi  vuole la pappa  pronta non
  viene considerato un "ganzo";
- chi risponde su un ng non deve dimostrare niente a nessuno, pertanto
  puoi anche evitare di scrivere frasi tipo "se e'  tanto facile farli
  per voi": contariamente  a te, il sottoscritto i  suoi esami  li  ha
  superati tutti (alcuni anche brillantemente);
- si potrebbe continuare, ma diventerei polemico.
Per quanto  riguarda la  risposta, ho risposto  e non credo  di essere
stato sgarbato:  non sapendo cosa hai/avete  fatto prima, indirizzarvi
su icla mi e' sembrata la risposta piu' appropriata.
Ma oggi e' il mio giorno  dedicato alle buone azioni: ne devo compiere
almeno due.
La  vecchiatta e' stata  aiutata ad  attraversare la  stada; pertanto,
visto che  sono rimasto particolarmente  oltraggiato dal fatto  che tu
non creda  nella mia  capacita' di risolvere  problemi con  livello di
difficolta' prossima allo zero, sono  disposto a postarti il codice in
assembler.
Vista la lunghezza del codice,  ti posto solo il programma che inverte
l'ordine dei byte. Se vuoi, gli altri te li invio nella tua m-box
C:\> revByteOrd 1234567890
Original byte order 0xd2 0x02 0x96 0x49
Reverse byte order 0x49 0x96 0x02 0xd2
<CODE "revByteOrd.asm">
        .file   "revByteOrd.asm"
        .def    ___main;        .scl    2;      .type   32;     .endef
        .text
        .align 32
LC0:
        .ascii "Original byte order %#04x %#04x %#04x %#04x\12\0"
        .align 32
LC1:
        .ascii "Reverse byte order %#04x %#04x %#04x %#04x\12\0"
LC2:
        .ascii "Insert a DWORD\0"
        .align 2
globl _main
        .def    _main;  .scl    2;      .type   32;     .endef
_main:
        pushl   %ebp
        movl    %esp, %ebp
        subl    $8, %esp
        andl    $-16, %esp
        movl    $0, %eax
        movl    %eax, -8(%ebp)
        movl    -8(%ebp), %eax
        call    __alloca
        call    ___main
        movl    $0, -4(%ebp)
        cmpl    $1, 8(%ebp)
        jle     L15
        subl    $12, %esp
        movl    12(%ebp), %eax
        addl    $4, %eax
        pushl   (%eax)
        call    _atoi
        addl    $16, %esp
        movl    %eax, -4(%ebp)
        subl    $12, %esp
        movl    $0, %eax
        movb    -1(%ebp), %al
        pushl   %eax
        movl    $0, %eax
        movb    -2(%ebp), %al
        pushl   %eax
        movl    $0, %eax
        movb    -3(%ebp), %al
        pushl   %eax
        movl    $0, %eax
        movb    -4(%ebp), %al
        pushl   %eax
        pushl   $LC0
        call    _printf
        addl    $32, %esp
        subl    $12, %esp
        movl    $0, %eax
        movb    -4(%ebp), %al
        pushl   %eax
        movl    $0, %eax
        movb    -3(%ebp), %al
        pushl   %eax
        movl    $0, %eax
        movb    -2(%ebp), %al
        pushl   %eax
        movl    $0, %eax
        movb    -1(%ebp), %al
        pushl   %eax
        pushl   $LC1
        call    _printf
        addl    $32, %esp
        jmp     L16
L15:
        subl    $12, %esp
        pushl   $LC2
        call    _printf
        addl    $16, %esp
L16:
        movl    $0, %eax
        leave
        ret
        .def    _printf;        .scl    2;      .type   32;     .endef
        .def    _atoi;  .scl    2;      .type   32;     .endef
</CODE>
C:\>iao Angelo
P.S. Per gli algoritmi, il NG piu' appropriato e' it.comp.programmare


scusa, ma credo che tu abbia capito male, hoc non voleva dire che non
riuscivi a risolverli anzi. boh credo che qui ci siano stati molti ma
proprio molti malintesi. cmq grazie, meli puoi postare a me su
mang...@csr.unibo.it
 ? poi glieli mando io che ci conosciamo grazie ancora

 con una birra(cere's) e una o due sigarette....
Io non fumo, pero' se eravamo al bar e mi offrivi una birra ti spiegavo come
fare =)


ah!!!scusami per il sesso.........cmq odio l'assembler perchè a me torna
noioso....e come dico sempre una bella birra non si rifiuta mai...eh
eh...specialmente se si parla di cere's...comunque ho spiegato in una e-mail
precedente che le cose che non mi piacciono faccio molta fatica a
studiarle.......per esmpio mi piace il php,il c(anche se ancora non è che ne
so tanto),l'action script.......e li studio volentieri e li non chiedo
niente a nessuno perchè se voglio imparare una cosa la faccio da
solo..orgoglio...:))

 entusiasmante che parlare con uno schermo...tu che dici?:))ciao ciao
Sono asociale, di indole solitaria, non bevo e non fumo (e non sto
scherzando...magari per il primo sì, ma per gli altri no)... :)

 scherzando...magari per il primo sě, ma per gli altri no)... :)