gtroza Δημοσ. 20 Απριλίου 2006 Δημοσ. 20 Απριλίου 2006 γραφεις debug onomaarxeiou.com d0:100 εμφανίζει τα bytes απο τη θέση απο 0:100 μέχρι +128 νομίζω με d συνεχίζει παρακατω r δείχνει καταχωρητές στοίβα αρχή προγραμματος κ αλλα που δεν θυμαμαι u0:100 πχ εμφανιζει τις "εντολες" του προγραμματος δεν θυμαμαι αλλα! βρές ένα παλιο μηχανημα και παίξε.θα το ευχαριστηθείς. αλλα αυτα που σου γραφουν ισχύουν.θέλει πολυ δουλεια.
takis456 Δημοσ. 20 Απριλίου 2006 Δημοσ. 20 Απριλίου 2006 cfgreece όπως είπε και ο alkisg τα πράγματα δεν είναι τόσο απλά. Χρειάζεται ένα καλό υπόβαθρο ώστε να μπορείς να καταλάβεις τη λογική των εντολών και γενικότερα πως παίρνουν τιμές οι καταχωρητές, τι flags υπάρχουν, πότε ενεργοποιούνται, τι γίνεται με τις συνθήκες, τι γίνεται με τα loops (και τους ελέγχους που γίνονται εκεί - πχ για να καταλάβεις πως ελέγχεται εάν ένα key είναι έγκυρο για να φτιάξεις δικά σου κ.τ.λ.) κ.τ.λ. Υπάρχουν και προγράμματα τα οποία είναι σχετικά απλά να τα τροποποιήσεις (γιατι φαντάζομαι αυτό θέλεις να κάνεις ) αλλά δύσκολα θα βρεις τέτοια προγράμματα στις μέρες μας (ιδιαίτερα όταν είναι από σοβαρές εταιρίες).
cfgreece Δημοσ. 20 Απριλίου 2006 Μέλος Δημοσ. 20 Απριλίου 2006 aki thaks gia thi emimerosi file mou yparxei i diathesi(kai fysika mono gia mena san hobby) oson afora ton xrono safos den ginetai apo thn mia mera stin alli to katalabaino alla einai kati poy moy exei kinisi to endiaferon fysika thelo thn bothia filon etsi? siga siga kai den zitao alloste na gino expert eyxaristo (diabazo ena biblio gia assemly"to biblio ths assembly gia pc" kai siga -siga )
cfgreece Δημοσ. 20 Απριλίου 2006 Μέλος Δημοσ. 20 Απριλίου 2006 gtroza eyxaristo gia tin boithia katalabeno prospatho oso mporo alla goustaro
cfgreece Δημοσ. 20 Απριλίου 2006 Μέλος Δημοσ. 20 Απριλίου 2006 taki exo kataferei na kano kapoia patches alla mixanika diladi brika thn apagoreysi kai sto plisiestero c jump alaksa to 74 i to f84 alla mixanika gia ayto thelo na mahto pos ginetai ayto katalabaineis thn ousia .an mporeso pantos eyxaristo
alkisg Δημοσ. 20 Απριλίου 2006 Δημοσ. 20 Απριλίου 2006 ΟΚ, αφού έχεις όρεξη πάρε ένα προγραμματάκι για μελέτη. Απλά γυρίζει την οθόνη του DOS σε γραφικά και τη γεμίζει με χρώματα. Αποσυμπίεσε το συνημμένο και μετά δώσε debug alkis.com. Στη συνέχεια g και Enter και θα γεμίσει η οθόνη με χρώματα. Δοκίμασε και να το παρακολουθήσεις βήμα-βήμα, αλλά προσπέρασε τα int XX για να μη χαθείς. Αν τυχόν μπεις μέσα σε ένα interrupt, θα χρειαστούν χιλιάδες εντολές μέχρι να ξαναβγείς, οπότε απλά πάτα q για να βγεις από το debug. Οι γραμμές που ξεκινάνε με θαυμαστικό είναι σχόλια. Καλή αρχή! > !ΑΗ = 00 => αλλαγή ανάλυσης, AL = 13 => γραφικά 320x200 με 256 χρώματα !Το intrlist (google it) είναι manual για τα interrupts και !τις λειτουργίες που παρέχουν 14A4:0100 B81300 MOV AX,0013 !INT 10 => κλήση στο BIOS για την αλλαγή ανάλυσης 14A4:0103 CD10 INT 10 !Οι δύο παρακάτω εντολές είναι κόλπο για να μπει το A000 στον ES, επειδή !δεν υπάρχει εντολή MOV ES,A000. Το Α000 είναι η διεύθυνση της videoram 14A4:0105 B800A0 MOV AX,A000 14A4:0108 8EC0 MOV ES,AX !Το XOR μηδενίζει. Συνηθίζεται επειδή ο κώδικας είναι ένα byte μικρότερος !απ' ότι στη MOV DI,0 14A4:010A 31FF XOR DI,DI !Πόσες επαναλήψεις = πόσα pixel να γεμιστούν 14A4:010C B900F0 MOV CX,F000 !Set Direction Flag, ώστε ο DI να αυξάνεται και να πηγαίνει στο επόμενο pixel 14A4:010F FD STD !Βάλε ένα pixel στη videoram (ES:DI) 14A4:0110 AA STOSB !Πήγαινε στο επόμενο χρώμα 14A4:0111 FEC0 INC AL !Μείωσε το CX και αν δεν είναι 0 πήδα στο 110 14A4:0113 E2FB LOOP 0110 !Το INT 20 είναι κλήση στο DOS για τερματισμό του προγράμματος 14A4:0115 CD20 INT 20 alkis.zip
Επισκέπτης Δημοσ. 20 Απριλίου 2006 Δημοσ. 20 Απριλίου 2006 egw proteinw na arxiseis apo ayto http://computerscience.jbpub.com/ECOA/ de xreiazetai na to agoraseis,mporeis na to katebaseis kai se hlektronikh morfh apo ta gnwsta merh.. ayto to biblio 9a soy ma9ei prwta to MARIE (Machine Architecture that is Really Intuitive and Easy) kai thn assembly ths.meta 9a se paei se 80x86(ta basika kyriws...).epishs, 9a se ma9ei memory organization. afotoy ta exeis kataferei me ayto to biblio mporeis na pas se kapoio biblio poy afora mono 80x86 assembly h mporeis na pas se ayto http://www.amazon.com/gp/product/1558606041/qid=1145546418/sr=8-1/ref=pd_bbs_1/002-3939888-2733657?n=507846&s=books&v=glance (den yarxei se hlektronikh morfh-mono prwth ekdosh) bebaia,diapragmatevetai arxitetonikh MIPS http://www.mips.com/ alla 9a se ma9ei na skeftesai se assembly( na kaeis teleiws dld..) genika,na ksereis oti den mporeis na ma9eis eykola kai kala assembly xwris na ksereis basika pragmata peri arxite3ktonikhs ypologistwn (Computer Organization and Design)
damn3 Δημοσ. 20 Απριλίου 2006 Δημοσ. 20 Απριλίου 2006 reverse engineering gia arxarious kai mh: http://www.tuts4you.com/tutorials/lena/
cfgreece Δημοσ. 20 Απριλίου 2006 Μέλος Δημοσ. 20 Απριλίου 2006 oraia tutorial alla den ginetai download thanks
Thresher Δημοσ. 20 Απριλίου 2006 Δημοσ. 20 Απριλίου 2006 cfgreece Ποση ωρα εχεις διαθεσιμη σε καθημερινη βαση? Αν δεν εχεις πολυ χρονο και και και μαθε καλυτερα C++ που μπορει να σε χρησημευσει σε κατι. Μαθε απο καποιο tutorial λιγο C++ και μετα αν εχεις ορεξη πας σε asm. Αν μαθεις να δουλευεις debugger μπορεις να κανεις, αν οχι τα παντα, αλλα τα Π Α Ν Τ Α.....
teo64x Δημοσ. 20 Απριλίου 2006 Δημοσ. 20 Απριλίου 2006 Τι C++ βρε παιδιά... Αυτή η γλώσσα δεν είναι για αρχάριους. Ασχολούμαι από 6 χρονών με υπολογιστές και προγραμματισμό σε άλλες γλώσσες εδώ και 2-3 χρόνια, αλλά τις έννοιες της C++ κάνω εβδομάδες να τις χωνέψω... Αν μιλάμε για ξεκίνημα στον προγραμματισμό, ορίστε FMSLogo: http://fmslogo.sourceforge.net/ Python: http://www.python.org/
Directx Δημοσ. 20 Απριλίου 2006 Δημοσ. 20 Απριλίου 2006 Την εποχή που αποφάσισα να ασχοληθώ με την Assembly επέλεξα «Το Βιβλίο της Assembly για τα PC» του Peter Norton & John Socha. Το βιβλίο δίδασκε το βασικό σετ εντολών του Intel 8086 και αφορούσε κατεξοχήν τον προγραμματισμό 16μπίτ σε περιβάλλον DOS (μάθαινες κάποιες βασικές υπηρεσίες –Interrupts αυτού του λειτουργικού) καλύπτοντας την δημιουργία τόσο αρχείων COM όσο και EXE. Παράλληλα αφιέρωνε ένα κεφάλαιο (αν θυμάμαι καλά) στον προγραμματισμό των MS-Windows 3.1. Τα πρώτα παραδείγματα αναπτυσσόντουσαν με το DOS debug και ύστερα ακολουθούσε ο περίφημος MASM (Microsoft Assembler) και TASM (Turbo Assembler -Borland). Σε γενικές γραμμές έμπαινες στο πνεύμα της assembly και αν είχες πραγματική διάθεση μπορούσες να την μάθεις όμως το τελευταίο διαφέρει από το να γράψεις μαζί της μια ολοκληρωμένη εφαρμογή. Όσον αφορά τον κόσμο των 32μπίτ και των MS-Windows 9x, 2000&XP σαφώς η εκμάθηση της γλώσσας είναι πολύ πιο εύκολη αφού δεν έχεις να προβληματισθείς με την διαχείριση των segments (αν διαβάσεις το παραπάνω βιβλίο θα καταλάβεις τι εννοώ) ενώ παράλληλα με την χρήση macro εντολών του στυλ .IF .ELSE .INVOKE κ.α. που προσφέρουν ορισμένοι assemblers (όπως π.χ. ο MASM) αλλά και η διάθεση χρήσιμων έτοιμων συναρτήσεων από τα ίδια τα Windows (π.χ. MessageBox ή wsprintf ή lstrlen, lstrcat κ.α.) καθιστά την σύνταξη του κώδικα «πιο ανθρώπινη» προσεγγίζοντας γλώσσες υψηλού επιπέδου. Παρʼ όλα αυτά όμως η ανάπτυξη εφαρμογών σε assembly κρίνεται πολύ δυσκολότερη από οιανδήποτε άλλη γλώσσα. Υ.Γ. Το reverse engineering είναι μια άλλη υπόθεση για την οποία χρειάζεσαι γνώσεις assembly οπότε αν σε ενδιαφέρει δες το αργότερα.
godlike Δημοσ. 20 Απριλίου 2006 Δημοσ. 20 Απριλίου 2006 Άντε να πω και εγώ τα δικά μου. Λοιπών εγώ δεν έμαθα με κάποιο βιβλίο αλλά κοιτώντας τον κώδικα που παρήγαγε ένας C++ compiler. Μετά κατέβασα τα manual της intel για P4 και άρχισα να τα χρησιμοποιώ για να μαθαίνω της εντολές. Άμα έβλεπα καμία που δεν ήξερα τι έκανε τα κοίταζα. Το πάν είναι τα σωστά εργαλεία. Για assembler κατέβασε από masm32.com και κατέβασε ακόμα τα manual της intel.
gtroza Δημοσ. 21 Απριλίου 2006 Δημοσ. 21 Απριλίου 2006 gia cfgreece http://www.armory.com/~rstevew/Public/Tutor/Debug/debug-manual.html
cfgreece Δημοσ. 21 Απριλίου 2006 Μέλος Δημοσ. 21 Απριλίου 2006 damn3 poli kala ta tutorials!!! gtroza thanks paidia eyxaristo kai oti allo mporei na boithisei o.k thanks
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.