Assembly Help!!!

συζητήσεις για assembly

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
cambridge13
Δημοσιεύσεις: 2
Εγγραφή: 24 Νοέμ 2004 09:33
Τοποθεσία: Cambridge - Ilion
Επικοινωνία:

Assembly Help!!!

Δημοσίευση από cambridge13 » 06 Ιουν 2005 14:53

Paidia kalhmera. Exo sovaro provlhma me to uni gia ena assignment. An den peraso afto to assignment pou einai sthn assembly xano apo to ptyxio to Hons kai eimai proto etos. Einai h 3h kai teleftea fora pou to dino. Kserei kaneis apo assembly na me voh8hsei h na mou pei kanena site pou na pezoun etoimes ergasies??? To 8ema exei na kanei me "x power of y" . An 8elete mporo na anevaso to assignment na tou riksete mia matia. Paidia opoios kserei parakalo as me voh8hsei!!! Efxaristo.

Άβαταρ μέλους
agrippas
Script Master
Δημοσιεύσεις: 494
Εγγραφή: 18 Ιούλ 2002 14:52
Τοποθεσία: Υπερπέραν
Επικοινωνία:

Assembly Help!!!

Δημοσίευση από agrippas » 06 Ιουν 2005 15:11


cambridge13
Δημοσιεύσεις: 2
Εγγραφή: 24 Νοέμ 2004 09:33
Τοποθεσία: Cambridge - Ilion
Επικοινωνία:

Assembly Help!!!

Δημοσίευση από cambridge13 » 06 Ιουν 2005 15:38

to ksero oti exei diavasma kai afto prepei na kano giati thn prohgoumrnh evdomada edosa java, linux kai ma8hmatika, 3 assignments, afth thn evdomada dino System Analysis Design, Object Tools and Techniques kai 2 assignment....ante na prolavo mexri thn allh deftera! :S

thanx gia to link....

Άβαταρ μέλους
ThyClub
Honorary Member
Δημοσιεύσεις: 5312
Εγγραφή: 17 Νοέμ 2003 00:21
Τοποθεσία: Hell's Kitchen
Επικοινωνία:

Assembly Help!!!

Δημοσίευση από ThyClub » 07 Ιουν 2005 08:20

www.anticrack.de

Οτιδήποτε απο assembly βρείς... απο την καλή και απο την ανάποδη :wink:

Άβαταρ μέλους
vspartan
Δημοσιεύσεις: 57
Εγγραφή: 03 Δεκ 2007 03:18

Assembly Help!!!

Δημοσίευση από vspartan » 23 Μάιος 2008 18:35

Για να μην ανοίγω νέο thread,το συνεχίζω σ'αυτό.
Πριν λίγο πήρα ένα project στην Αρχιτεκτονική.Το θέμα είναι να υλοποιήσω την συνάρτηση Fibonacci σε Αssemply.Πως θα γίνει η αρχή?
Με ένα πρόχειρο search στο google βρήκα ότι η συνάρτηση αυτή είναι Η ακολουθία αριθμών στην οποία ο κάθε αριθμός είναι ίσος με το άθροισμα των δύο προηγούμενων 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, ... (κάθε αριθμός είναι ίσος με το άθροισμα των δύο προηγούμενων).
<Κόλλησα> :o
Οι Θερμοπύλες απέδειξαν ότι υπάρχουν πολλοί άνθρωποι,αλλά ολίγοι άνδρες.

Άβαταρ μέλους
ksarm
Δημοσιεύσεις: 915
Εγγραφή: 22 Μάιος 2007 10:47

Assembly Help!!!

Δημοσίευση από ksarm » 24 Μάιος 2008 02:53

δες εδώ: http://en.wikipedia.org/wiki/Fibonacci_number . Έχει μέσα και όλες τις πληροφορίες που χρειάζεσαι για τους αλγορίθμους.

για assembly ψάξε στην σελίδα του κατασκευαστή του hardware σου.

Άβαταρ μέλους
vspartan
Δημοσιεύσεις: 57
Εγγραφή: 03 Δεκ 2007 03:18

Assembly Help!!!

Δημοσίευση από vspartan » 24 Μάιος 2008 11:51

ksarm έγραψε:δες εδώ: http://en.wikipedia.org/wiki/Fibonacci_number . Έχει μέσα και όλες τις πληροφορίες που χρειάζεσαι για τους αλγορίθμους.

για assembly ψάξε στην σελίδα του κατασκευαστή του hardware σου.
Δεν ξέρω ρε παιδιά πως θα κάνω την αρχη! Εχω κάνει search ..στο μυαλό και στο Internet και δεν βρίσκω άκρη!
Οι Θερμοπύλες απέδειξαν ότι υπάρχουν πολλοί άνθρωποι,αλλά ολίγοι άνδρες.

Άβαταρ μέλους
Kainourios
Ruby Moderator
Δημοσιεύσεις: 504
Εγγραφή: 18 Μάιος 2005 16:20
Τοποθεσία: Κορυδαλλός
Επικοινωνία:

Assembly Help!!!

Δημοσίευση από Kainourios » 24 Μάιος 2008 12:19

Σε τι assembly το θες και ποιον assembler χρησιμοποιείς;

Άβαταρ μέλους
vspartan
Δημοσιεύσεις: 57
Εγγραφή: 03 Δεκ 2007 03:18

Assembly Help!!!

Δημοσίευση από vspartan » 24 Μάιος 2008 21:40

Kainourios έγραψε:Σε τι assembly το θες και ποιον assembler χρησιμοποιείς;
Δεν γνωρίζω αν υπάρχουν πολλές assemply.Πρώτη φορά το ακούω.Οι εντολές που έχει είναι add,addi,sub,mult,καταχωρητές κ.ο.κ.
Πάντως για compiler χρησιμοποιώ τον PCSpim.
Οι Θερμοπύλες απέδειξαν ότι υπάρχουν πολλοί άνθρωποι,αλλά ολίγοι άνδρες.

Άβαταρ μέλους
paink1ller
Δημοσιεύσεις: 865
Εγγραφή: 21 Ιαν 2008 19:51

Assembly Help!!!

Δημοσίευση από paink1ller » 24 Μάιος 2008 21:58

E ναι δεν υπαρχει μια assembly για ολες τις αρχιτεκτονικες CPU.
Καθε οικογενεια επεξεργαστων εχει την δικη της. Aλλα ακομη και μεσα στην ιδια οικογενεια επεξεργαστων εχεις διαφορες. Πχ δεν μπορεις να χρησιμοποιησεις ΜΜΧ καταχωρητες σε ενα 80286 cpu και ας ανηκει στην x86 οικογενεια.

Διαβασε το Art of assembly και μετα κατεβασε το instruction set του CPU που θες να χρησιμοποιησεις καθως επισης και το manual του compiler σου.

Άβαταρ μέλους
ksarm
Δημοσιεύσεις: 915
Εγγραφή: 22 Μάιος 2007 10:47

Assembly Help!!!

Δημοσίευση από ksarm » 24 Μάιος 2008 22:11

Κλασσικά δηλαδή: άχρηστος κώδικας in real life... Ο PCSpim είναι simulator και όχι compiler. Και είναι για MIPS...

δες εδώ: http://pages.cs.wisc.edu/~larus/spim.html
http://en.wikipedia.org/wiki/SPIM (αναφέρει ένα βιβλίο, μάλλον καλό θα ήταν να το αποκτήσεις)

και φυσικά googling: http://www.google.com/search?q=PCSpim

και φυσικά για αυτό που ψάχνεις υπάρχουν ήδη αποτελέσματα: http://www.google.com/search?q=MIPS+assembly+fibonacci

Καλό κλόπιραιτ :D

Εάν πραγματικά θες να μάθεις assembly ξεκίνα με έναν μικροελεγκτή αρχιτεκτονικής CISC. Μετά άσε την assembly και μάθε verilog ή vhdl.

Άβαταρ μέλους
vspartan
Δημοσιεύσεις: 57
Εγγραφή: 03 Δεκ 2007 03:18

Assembly Help!!!

Δημοσίευση από vspartan » 27 Μάιος 2008 11:16

Ψάχνοντας λίγο παραπάνω βρήκα εφαρμογή του Fibonacci για το MIPS.ΜΗ επαναμβανόμενη και επαναλαμβανόμενη.Ποια είναι η γνώμη σας?Είναι βάσιμοι?

ΜΗ επαναλαμβανόμενη εφαρμογή Fibonacci για το MIPS.

Κώδικας: Επιλογή όλων

.data
msg1&#58;.asciiz "Give a number &#58; "
.text
.globl main
main&#58;

li $v0,4
la $a0,msg1
syscall
li $v0,5
syscall
add $a0,$v0,$zero

jal fib

add $a0,$v0,$zero
li $v0,1
syscall

li $v0,10
syscall

fib&#58;
#a0=a
#if &#40;a==0&#41; return 0;
#if &#40;a==1&#41; return 1;
  
#    int x&#40;$t1&#41;,y&#40;$t2&#41;,z&#40;$t3&#41;,i&#40;$t4&#41;;
#    for &#40;x=0,y=0,z=1,i=1;i<a;i++&#41; &#123;
#        x=y+z;
#        y=z;
#        z=x;   &#125;   

#    return&#40;x&#41;;
    
addi $t0,$zero,1

beqz $a0,return0
beq $a0,$t0,return1

#arxikopiisi

add $t1,$zero,$zero
add $t2,$zero,$zero
addi $t3,$zero,1
addi $t4,$zero,1

loop&#58;
bge $t4,$a0,endloop
add $t1,$t2,$t3
add $t2,$zero,$t3
add $t3,$zero,$t1
addi $t4,$t4,1
j loop

endloop&#58;
add $v0,$zero,$t1
jr $ra

return0&#58;
add $v0,$zero,$zero
jr $ra

return1&#58;
addi $v0,$zero,1
jr $ra
Eπαναλαμβανόμενη εφαρμογή Fibonacci για το MIPS.

Κώδικας: Επιλογή όλων

.data
msg1&#58;.asciiz "Give a number&#58; "
.text
.globl main
main&#58;

li $v0,4
la $a0,msg1
syscall #print msg
li $v0,5
syscall #read an int
add $a0,$v0,$zero #move to $a0

jal fib #call fib

add $a0,$v0,$zero
li $v0,1
syscall

li $v0,10
syscall

fib&#58;
#a0=y
#if &#40;y==0&#41; return 0;
#if &#40;y==1&#41; return 1;
#return&#40; fib&#40;y-1&#41;+fib&#40;y-2&#41; &#41;;

addi $sp,$sp,-12 #save in stack
sw $ra,0&#40;$sp&#41;
sw $s0,4&#40;$sp&#41;
sw $s1,8&#40;$sp&#41;

add $s0,$a0,$zero

addi $t1,$zero,1
beq $s0,$zero,return0
beq $s0,$t1,return1

addi $a0,$s0,-1

jal fib

add $s1,$zero,$v0     #s1=fib&#40;y-1&#41;

addi $a0,$s0,-2

jal fib               #v0=fib&#40;n-2&#41;

add $v0,$v0,$s1       #v0=fib&#40;n-2&#41;+$s1
exitfib&#58;

lw $ra,0&#40;$sp&#41;       #read registers from stack
lw $s0,4&#40;$sp&#41;
lw $s1,8&#40;$sp&#41;
addi $sp,$sp,12       #bring back stack pointer
jr $ra

return1&#58;
 li $v0,1
 j exitfib
return0 &#58;     li $v0,0
 j exitfib
Οι Θερμοπύλες απέδειξαν ότι υπάρχουν πολλοί άνθρωποι,αλλά ολίγοι άνδρες.

Απάντηση

Επιστροφή στο “Assembly”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες