Προς το περιεχόμενο

Πότε σταματάω μια γλώσσα;


PiDefiner

Προτεινόμενες αναρτήσεις

Εντάξει, έμαθα τα βασικά μίας γλώσσας και δε σκοπεύω να την αφήσω.

Ακόμα και τέλειος γνώστης να ήμουν και πάλι δε θα την άφηνα.

Η γλώσσα είναι μέσο δημιουργίας και αν σου αρέσει να δημιουργείς θα συνεχίσεις να τη χρησιμοποιείς.

Νομίζω ότι απλά δε χρειάζεται να ασχοληθείς με την python άλλο αν κατέχεις τα βασικά.

Βρες μία που να σε ενδιαφέρει.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Απαντ. 74
  • Δημ.
  • Τελ. απάντηση

Συχνή συμμετοχή στο θέμα

Συχνή συμμετοχή στο θέμα

Οι πιο παραγωγικοι ανθρωποι που ξερω ασχολουνται με 1 γλωσσα ανα διαστημα. Εγω δουλευω 3 ταυτοχρονα και μπερδευομαι :).Δεν ειναι μονο η γλώσσα αλλα και τι κανεις. Πχ αλλο ORM στη Α γλωσσα ,αλλο στη Β αλλο στη Γ. Αλλες δυνατοτητες/λογικη.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Σταματάς να μαθαίνεις κάτι όταν οι γνώσεις που αποκτήσεις είναι αρκετές για να κάνεις αυτο που θες. Εσύ δε θες να κάνεις τίποτα. Η απάντηση στην αρχική ερώτηση απλή...

Δεν θέλω να κάνω κάτι τώρα. Επειδή όμως στο μέλλον ίσως να χρειαστώ, προτιμώ τότε να ξέρω πως πρέπει να κάνω αυτό που θέλω ή πρέπει να κάνω, παρά να αρχίσω τότε από το μηδέν.

 

Εντάξει, έμαθα τα βασικά μίας γλώσσας και δε σκοπεύω να την αφήσω.

Ακόμα και τέλειος γνώστης να ήμουν και πάλι δε θα την άφηνα.

Η γλώσσα είναι μέσο δημιουργίας και αν σου αρέσει να δημιουργείς θα συνεχίσεις να τη χρησιμοποιείς.

Νομίζω ότι απλά δε χρειάζεται να ασχοληθείς με την python άλλο αν κατέχεις τα βασικά.

Βρες μία που να σε ενδιαφέρει.

 

Η Verilog που μου πρότεινε ο gon, μου φαίνεται ωραία σαν λογική, αλλά θέλω να την ψάξω περισσότερο όσο θα έχω χρόνο, μήπως και μου αρέσει πιο πολύ. Python ξεκίνησα γιατί αυτή διάβασα πως είναι καλή για αρχή. Απ' ότι βλέπω όμως δεν την έχετε και σε τόσο εκτίμηση, οπότε μάλλον θα την παρατήσω. Αν βρω ενδιαφέρουσα την verilog, καλώς, αλλιώς θα ψάξω για  μια άλλη.

Οι πιο παραγωγικοι ανθρωποι που ξερω ασχολουνται με 1 γλωσσα ανα διαστημα. Εγω δουλευω 3 ταυτοχρονα και μπερδευομαι :).Δεν ειναι μονο η γλώσσα αλλα και τι κανεις. Πχ αλλο ORM στη Α γλωσσα ,αλλο στη Β αλλο στη Γ. Αλλες δυνατοτητες/λογικη.

Φυσικά, δεν σκόπευα ούτε σκοπεύω να ασχοληθώ με πολλές γλώσσες ταυτόχρονα (εκτός αν το NXT programms μετράει για γλώσσα :huh: ). Απλώς για να έχω σφαιρική άποψη του προγραμματισμού πρέπει να μάθω περισσότερες. Δεν θα πιάσω το νόημα μόνο μέσα από μία.

 

Απ' ότι κατάλαβα η απάντηση στην ερώτηση μου δεν είναι και τόσο απλή, και με αυτά που σας λέω την κάνω ακόμα πιο σύνθετη  B)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δεν υπάρχει απάντηση σε αυτό το ερώτημα γιατί είναι λάθος (κατά την γνώμη μου) η προσέγγιση και το ερώτημα. 

 

Δεν ξεκινάς μία γλώσσα για να την μάθεις. Δεν είναι άσκηση σε πολεμική τέχνη ούτε τεχνική. Είναι σαν να ρωτάς πότε σταματάς να χρησιμοποιείς οδοντωτά μαχαίρια ή ίσια κατσαβίδια. 

 

 

Οι πιο πολλοί που θέλουν να ασχοληθούν με τον προγραμματισμό και, συνήθως, είναι μικροί σε ηλικία (i.e. <20) βλέπουν την ενασχόληση αυτή σαν να πηγαίνουν στο γυμναστήριο... όπου κάθε γλώσσα είναι και ένα όργανο ή/και μία άσκηση. Δεν θέλουν να προγραμματίσουν αλλά να τους γράψει κάποιο blog ή να τους θαυμάζουν οι φίλοι τους που είτε χάκαραν την τάδε υπηρεσία είτε έβγαλαν το δείνα φοβερό παιχνίδι. 

 

 

Δεν μαθαίνεις μία γλώσσα και πας στην επόμενη... βασικά δεν μαθαίνεις καμία γλώσσα. Μαθαίνεις να προγραμματίζεις και χρησιμοποιείς όποια γλώσσα σε καλύπτει, έχεις χρόνο να πειραματιστείς, επιβάλλει ο head, ζητάει ο πελάτης, μπορείς να πουλήσεις σε έκαστη περίπτωση. 

 

Εάν όμως η κ@υλα σου είναι να μάθεις γλώσσες προγραμματισμού, τότε η σύνταξη, οι βιβλιοθήκες και τα frameworks είναι μόνο η αρχή του παγόβουνου και αμφιβάλλω εάν ποτέ πας σε επόμενη (π.χ. διαγωνισμοί για κρυπτικό προγραμματισμό σε C). Αν και τελικά θα καταλήξεις είτε σε simula είτε σε "κουβεντούλα"...

 

 

 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Η Verilog που μου πρότεινε ο gon, μου φαίνεται ωραία σαν λογική, αλλά θέλω να την ψάξω περισσότερο όσο θα έχω χρόνο, μήπως και μου αρέσει πιο πολύ. Python ξεκίνησα γιατί αυτή διάβασα πως είναι καλή για αρχή. Απ' ότι βλέπω όμως δεν την έχετε και σε τόσο εκτίμηση, οπότε μάλλον θα την παρατήσω. Αν βρω ενδιαφέρουσα την verilog, καλώς, αλλιώς θα ψάξω για  μια άλλη.

 

Πρόσχε όμως, η Verilog αποτελεί μία γλώσσα περιγραφής υλικού καθαρά. Σχεδιάζεις κυκλώματα. Δε δημιουργείς εφαρμογές, λογισμικό, αλλά σχεδιάζεις hardware είτε με behavioral, είτε με structural ή σε συνδυασμό. Τέλος, αυτό που έκανες μπορείς να το χρησιμοποιήσεις είτε σα simulator στο pc σου, είτε περνωντας από κάποια ειδικά προγράμματα (Synopsys design Compiler, Cadence Encounter) να σχεδιάσεις το δικό σου ASIC και αν θες το στέλνεις σε κάποια εταιρία να στο τυπώσει! (προχωράς σε VLSI μονοπάτια)

Εδώ βέβαια αναλαμβάνεις άλλου τύπου project: Παίρνεις ένα πρωτόκολλο, πχ eSATA, USB3.0 και το βελτιώνεις. Βέβαια, για να τα κάνεις όλα αυτά, για να αρχίσεις να καταλαβαίνεις τον τρόπο που λειτουργεί η Verilog, πρέπει να γνωρίζεις στο ελάχιστο άλγεβρα Boole, FSMs και να έχεις κάποιες γνώσεις Ψηφιακής Σχεδίασης.

 

Αν τελικά αποφασίσεις να ξεκινήσεις με Verilog....αν πιστεύεις ότι σου χρειάζεται....ρώτα στο forum ότι θέλεις.

 

 

EDIT: Οι γλώσσες είναι καθαρά θέμα δημιουργίας. Χάνεις όλο το ζουμί αν απλά κάθεσαι και τις κοιτάς. Ξεκίνα να δημιουργείς και που ξέρεις, μπορεί και να σου αρέσει! ;)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δεν υπάρχει απάντηση σε αυτό το ερώτημα γιατί είναι λάθος (κατά την γνώμη μου) η προσέγγιση και το ερώτημα. 

 

Δεν ξεκινάς μία γλώσσα για να την μάθεις. Δεν είναι άσκηση σε πολεμική τέχνη ούτε τεχνική. Είναι σαν να ρωτάς πότε σταματάς να χρησιμοποιείς οδοντωτά μαχαίρια ή ίσια κατσαβίδια. 

 

 

Οι πιο πολλοί που θέλουν να ασχοληθούν με τον προγραμματισμό και, συνήθως, είναι μικροί σε ηλικία (i.e. <20) βλέπουν την ενασχόληση αυτή σαν να πηγαίνουν στο γυμναστήριο... όπου κάθε γλώσσα είναι και ένα όργανο ή/και μία άσκηση. Δεν θέλουν να προγραμματίσουν αλλά να τους γράψει κάποιο blog ή να τους θαυμάζουν οι φίλοι τους που είτε χάκαραν την τάδε υπηρεσία είτε έβγαλαν το δείνα φοβερό παιχνίδι. 

 

 

Δεν μαθαίνεις μία γλώσσα και πας στην επόμενη... βασικά δεν μαθαίνεις καμία γλώσσα. Μαθαίνεις να προγραμματίζεις και χρησιμοποιείς όποια γλώσσα σε καλύπτει, έχεις χρόνο να πειραματιστείς, επιβάλλει ο head, ζητάει ο πελάτης, μπορείς να πουλήσεις σε έκαστη περίπτωση. 

 

Εάν όμως η κ@υλα σου είναι να μάθεις γλώσσες προγραμματισμού, τότε η σύνταξη, οι βιβλιοθήκες και τα frameworks είναι μόνο η αρχή του παγόβουνου και αμφιβάλλω εάν ποτέ πας σε επόμενη (π.χ. διαγωνισμοί για κρυπτικό προγραμματισμό σε C). Αν και τελικά θα καταλήξεις είτε σε simula είτε σε "κουβεντούλα"...

 

Άντε πάλι τα ίδια. :P

Είπαμε, δεν έχω θέμα με τον προγραμματισμό, ούτε τη θέλω να το παίζω ξύπνιος σε άλλους, γιατί απλούστατα δεν θα φτάσω ποτέ σε αυτό το επίπεδο. Θέλω απλώς να ξέρω και αυτό το κομμάτι των υπολογιστών. Ούτε έχω σκοπό ποτέ να πάω σε διαγωνισμό.

Πρόσχε όμως, η Verilog αποτελεί μία γλώσσα περιγραφής υλικού καθαρά. Σχεδιάζεις κυκλώματα. Δε δημιουργείς εφαρμογές, λογισμικό, αλλά σχεδιάζεις hardware είτε με behavioral, είτε με structural ή σε συνδυασμό. Τέλος, αυτό που έκανες μπορείς να το χρησιμοποιήσεις είτε σα simulator στο pc σου, είτε περνωντας από κάποια ειδικά προγράμματα (Synopsys design Compiler, Cadence Encounter) να σχεδιάσεις το δικό σου ASIC και αν θες το στέλνεις σε κάποια εταιρία να στο τυπώσει! (προχωράς σε VLSI μονοπάτια)

Εδώ βέβαια αναλαμβάνεις άλλου τύπου project: Παίρνεις ένα πρωτόκολλο, πχ eSATA, USB3.0 και το βελτιώνεις. Βέβαια, για να τα κάνεις όλα αυτά, για να αρχίσεις να καταλαβαίνεις τον τρόπο που λειτουργεί η Verilog, πρέπει να γνωρίζεις στο ελάχιστο άλγεβρα Boole, FSMs και να έχεις κάποιες γνώσεις Ψηφιακής Σχεδίασης.

 

Αν τελικά αποφασίσεις να ξεκινήσεις με Verilog....αν πιστεύεις ότι σου χρειάζεται....ρώτα στο forum ότι θέλεις.

 

 

EDIT: Οι γλώσσες είναι καθαρά θέμα δημιουργίας. Χάνεις όλο το ζουμί αν απλά κάθεσαι και τις κοιτάς. Ξεκίνα να δημιουργείς και που ξέρεις, μπορεί και να σου αρέσει! ;)

Αυτό διάβαζα τώρα και ήρθα για να σε ρωτήσω λεπτομέρειες. Καλό (αν και διαφορετικό, όπως λες) το όλο concept, αλλά με χαλάει το κομμάτι με τη "σχεδίαση", αν και δεν έχω καταλάβει ακριβώς πως την εννοείς.

Δεν έχω πρόβλημα να κάτσω να φτιάξω ένα πρόγραμμα (και με αυτό εννοώ ότι δεν βαριέμαι, ή δεν δυσανασχετώ), απλά δεν με τρελαίνει.

 

Τώρα εγκατέστησα την verilog και άρχισα ένα tutorial που βρήκα. Αν έχεις κάποιο και εσύ στείλε μου, αλλά να είναι κάτι που να μου δείχνει πιο πολύ τις δυνατότητες του προγράμματος, για να καταλάβω περί τίνος πρόκειται.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Πάντως γενικά η ερώτηση που κάνεις δεν έχει απάντηση.

Η python είναι εξαιρετική γλώσσα για να ξεκινήσει κάποιος, κυρίως λόγω του οτι μπορεί πολύ άμεσα να εκτελεί κομμάτια κώδικα και να βλέπει το αποτέλεσμα τους.

Από εκεί και πέρα, λες οτι μαθαίνεις προγραμματισμό μήπως σου χρειαστεί μελλοντικά. Αυτό που θέλω να σου πω είναι ότι η τεχνολογία προχωράει τόσο γρήγορα που αν μάθεις κάτι σήμερα και αποφασίσεις να το χρησιμοποιήσεις μετά από 5 χρόνια τα πράγματα θα έχουν αλλάξει αρκετά και σίγουρα θα χρειαστεί να ξαναδιαβάσεις.

Όπως πολλοί είπαν παραπάνω το σημαντικό είναι να μάθεις τις αρχές του προγραμματισμού ώστε να μπορείς να τις εφαρμόσεις με οποιαδήποτε γλώσσα.

 

Αν θες να γίνεις και λίγο πιο συγκεκριμένος τότε σίγουρα θα μπορέσεις να πάρεις έναν καλυτερο προσανατολισμό. Π.χ. αν μας πεις ότι διαβάζεις προγραμματισμό γιατί ίσως στο μέλλον χρειαστεί να συντηρείς μια ιστοσελίδα τοτε η verilog δε σου χρειάζεται. 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Πάντως γενικά η ερώτηση που κάνεις δεν έχει απάντηση.

Η python είναι εξαιρετική γλώσσα για να ξεκινήσει κάποιος, κυρίως λόγω του οτι μπορεί πολύ άμεσα να εκτελεί κομμάτια κώδικα και να βλέπει το αποτέλεσμα τους.

Από εκεί και πέρα, λες οτι μαθαίνεις προγραμματισμό μήπως σου χρειαστεί μελλοντικά. Αυτό που θέλω να σου πω είναι ότι η τεχνολογία προχωράει τόσο γρήγορα που αν μάθεις κάτι σήμερα και αποφασίσεις να το χρησιμοποιήσεις μετά από 5 χρόνια τα πράγματα θα έχουν αλλάξει αρκετά και σίγουρα θα χρειαστεί να ξαναδιαβάσεις.

Όπως πολλοί είπαν παραπάνω το σημαντικό είναι να μάθεις τις αρχές του προγραμματισμού ώστε να μπορείς να τις εφαρμόσεις με οποιαδήποτε γλώσσα.

 

Αν θες να γίνεις και λίγο πιο συγκεκριμένος τότε σίγουρα θα μπορέσεις να πάρεις έναν καλυτερο προσανατολισμό. Π.χ. αν μας πεις ότι διαβάζεις προγραμματισμό γιατί ίσως στο μέλλον χρειαστεί να συντηρείς μια ιστοσελίδα τοτε η verilog δε σου χρειάζεται. 

Μα αυτός είναι ο λόγος που δεν θέλω να μείνω προσκολλημένος σε μια γλώσσα. Αν αλλάξω ανάμεσα σε πολλές δε θα μάθω τις αρχές του προγραμματισμού; Και όταν λέω αρχές δεν εννοώ μόνο το when, while, if κλπ που μου έλεγαν να μάθω πριν ξεκινήσω. Εννοώ τον τρόπο που λειτουργεί ο προγραμματισμός στο σύνολό του και όχι μεμονωμένα μια γλώσσα.

Η αλήθεια είναι ότι δεν ήξερα μέχρι χθες για τις γλώσσες σαν τη verilog, οπότε όταν λέω θα μου χρειαστεί μελλοντικά, ναι, εννοώ και το τη συντήρηση μια ιστοσελίδας. Τώρα βέβαια που διάβασα μερικά πράγματα για τη verilog, μένει να τη δοκιμάσω (όχι σήμερα, απ' ότι βλέπω) για να δω αν είναι κάτι που με ενδιαφέρει.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Άντε πάλι τα ίδια. :P

Είπαμε, δεν έχω θέμα με τον προγραμματισμό, ούτε τη θέλω να το παίζω ξύπνιος σε άλλους, γιατί απλούστατα δεν θα φτάσω ποτέ σε αυτό το επίπεδο. Θέλω απλώς να ξέρω και αυτό το κομμάτι των υπολογιστών. Ούτε έχω σκοπό ποτέ να πάω σε διαγωνισμό.

Αυτό διάβαζα τώρα και ήρθα για να σε ρωτήσω λεπτομέρειες. Καλό (αν και διαφορετικό, όπως λες) το όλο concept, αλλά με χαλάει το κομμάτι με τη "σχεδίαση", αν και δεν έχω καταλάβει ακριβώς πως την εννοείς.

Δεν έχω πρόβλημα να κάτσω να φτιάξω ένα πρόγραμμα (και με αυτό εννοώ ότι δεν βαριέμαι, ή δεν δυσανασχετώ), απλά δεν με τρελαίνει.

 

Τώρα εγκατέστησα την verilog και άρχισα ένα tutorial που βρήκα. Αν έχεις κάποιο και εσύ στείλε μου, αλλά να είναι κάτι που να μου δείχνει πιο πολύ τις δυνατότητες του προγράμματος, για να καταλάβω περί τίνος πρόκειται.

 

Ώραια, βρήκες το κατάλληλο tutorial!

Ποια verilog εγκατέστησες; Σε ποιο λειτουργικό δουλεύεις;

Αν είσαι σε Windows τότε μπορείς να εγκαταστήσεις το ModelSim IDE, το Students Edition. Είναι ένα ολοκληρωμένο εργαλείο, αν κι εγώ το αποφεύγω επειδή νιώθω ότι με περιορίζει σε κάποια θέματα. Θέλει απλά ένα verification.

Αν είσαι σε Linux, που σου το συνηστώ, τότε προτείνω, και προσωπικά με αυτά δουλεύω, τον compiler Icarus Verilog (iverilog) σε συνδυασμό για λίγο αργότερα με το Waveform viewer GTKWave. Αυτά τα 2 εργαλεία είναι εντελώς δωρεάν και open source. Ο iverilog θυμίζει τη χρήση του gcc. Το εκτελέσιμο το ανοίγεις στο GTKWave και από εκεί μπορείς να δεις τις κυματτομορφές και όποιες αλλαγές συμβαίνουν στο κύκλωμά σου. Για το τελευταίο που σου είπα περίμενε μέχρι να φτάσεις στον οδηγό που διαβάζεις στα testbenches.

 

Όταν λέμε σχεδίαση ενοούμε τη δημιουργία hardware μέσα από αυτή την υψηλού επιπέδου γλώσσα προγραμματισμού. Όπως δε θα κάτσεις να γράψεις σελίδες με κώδικα σε 0 και 1, έτσι, δε θέλεις να κάτσεις να φτιάξεις ένα ολόκληρο κύκλωμα με λογικές πύλες! Έτσι κι αλλιώς, ο compiler θα διαβάσει αυτά που θέλεις να κάνεις σε μία γλώσσα που μοιάζει με τη C (Verilog) και θα το μετατρέψει σε πύλες εφαρμόζοντας βελτιστοποιήσεις, τις οποίες εσύ δε θα έκανες αν ήθελες να τα κάνεις όλα στο χέρι.

 

Έστω για παράδειγμα θέλεις να φτιάξεις έναν Adder:

/* Ένα module είναι ένα κουτί που παίρνει κάποιες εισόδους και
 * βγάζει κάποιες εξόδους. Μπορείς να το καλέσεις από ανώτερο
 * επίπεδο, δίνοντάς του 2 32bit εισόδους και θα σου βγάλει μία
 * 32bit έξοδο.
 */
module Adder (inA, inB, out);        // module onoma (eisodoi, e3odoi)
        input [31:0] inA, inB;
        output[31:0] out;

        assign out = inA + inB;      // ana8esh e3odou
endmodule

Αν ήθελες να φτιάξεις έναν Adder σε επίπεδο λογικών πυλών θα πάσχιζεις πολύ περισσότερο.

Θα έπρεπε να φτιάξεις αρχικά 1bit full adders, που να βγάζουν και κρατούμενο και στη συνέχεια

να τους συνδέσεις για να πάρεις αυτό που θέλεις. Εδώ γράφεις μία γραμμή όπως σε οποιαδήποτε

άλλη γλώσσα προγραμματισμού και ο compiler θα αναλάβει να φτιάξει το hardware. Αυτός θα

καταλάβει ποιες πύλες χρειάζονται και ποια θα είναι η βέλτιστη σύνδεσή τους (υπάρχουν βελτιστοποιήσεις

μεταφοράς και πρόβλεψης κρατουμένων). Βέβαια κανένας δε σε εμποδίζει να προγραμματίσεις σε χαμηλότερο

επιπεδό, απλά αυτό σε περιορίζει.

 

Κοίταξε πόσο εύκολα και κατανοητά μπορείς να φτιάξεις μια Αριθμητική και Λογική Μονάδα που παρόμοια

βρίσκεται σε οποιοδήποτε επεξεργαστη:

// Small ALU. Inputs: inA, inB. Output: out. 
// Operations: bitwise and	(op = 0)
//             bitwise or	(op = 1)
//             addition		(op = 2)
//             subtraction	(op = 6)
//             slt		(op = 7)
//             nor		(op = 12)
module ALU (aluctrl, inA, inB, out, zero);

	parameter	N = 32;

	output reg [N-1:0]	out;
	output wire		zero;
	input [N-1:0]		inA, inB;
	input [3:0]		aluctrl;

	// Place your Verilog code here
	assign zero = out ? 0 : 1;

	always @(*) begin
		case (aluctrl)
		4'b0000:out <= inA & inB;	/* bitwise AND */
		4'b0001:out <= inA | inB;	/* bitwise OR */
		4'b0010:out <= inA + inB;	/* arithmetic ADD */
		4'b0110:out <= inA - inB;	/* arithmetic SUB */
		4'b0111:out <= ((inA < inB) ? 1 : 0);	/* SET ON LESS THAN */
		4'b1100:out <= ~(inA | inB);	/* bitwise NOR */
		default:out <= 'bx;		/* INVALID OPERATION */
		endcase
	end
	
endmodule

Γενικά, τα πάντα στο hardware εκτελούνται παράλληλα από τη στιγμή που ανοίξει ο διακόπτης. Έτσι και στη Verilog. Αυτό πρέπει να χωνέψεις. Τα πάντα γίνονται παράλληλα. Το always, όπως θα διαβάσεις και στο tutorial είναι ένα block, το οποίο εκτελείται μόνο

αν οι παράμετροι μέσα στην παρένθεση ακριβώς από δίπλα αλλάξουν τιμή:

always @(inA, inB) begin
        out <= inA + inB;
end

Ο,τιδήποτε μέσα σε always blocks εκτελείται σειριακά.

 

Το <= είναι ένας ειδικός τελεστής ανάθεσης, ενώ το x είναι το don't care bit...μπορεί να έχει οποιαδήποτε τιμή...δε σε νοιάζει.

 

Διάβασέ τα αυτά στο tutorial και ό,τι χρειαστείς εδώ είμαστε.

 

Επίσης όταν βρήκα ελεύθερο χρόνο έγραψα και έναν οδηγό iverilog + GTKWave. Αν σε ενδιαφέρει, για τώρα διάβασε το 1ο μέρος.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Επειδή άρχισες κατευθείαν από τα βαθιά, και εγώ δεν ξέρω καν που γράφω τον κώδικα, άσε μου λίγο χρόνο να διαβάσω τα βασικά για το πρόγραμμα, και μετά κοιτάω καλύτερα και όσα έγραψες :P

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Σε ένα μακρυνο χωριό ζούσε κάποτε ένας ζωγράφος . Ο ζωγράφος αυτος είχε ξεκίνησει απο πολύ μικρός την ζωγραφική . Στην αρχη έκανε κάποιες μουτζούρες , στη συνέχεια σχέδια που πλησίαζαν στο κάτι αφηρημένο μέχρι που εγινε τόσο καλός που μπορούσε να σχεδιάσει ότι του ζητούσε κάποιος πολυ γρήγορα και με μεγαλη δεξιοτεχνια.

 

Κάποια στιγμή έφτασαν στο χωριό τρεις μυστηριώδεις τυποι και ο καθένας κουβαλούσε μια κασετίνα απο μπογιές και πινέλα.

 

Τον πλησιάζει ο πρώτος και του λέει . Εγώ μπορώ να σχεδιασω πορτραίτα σε πέντε λεπτά με τα ειδικά πινέλα μου.

 

Ο δεύτερος τον πλησιάζει και του λέει . Εγώ μπορώ να σχεδιασω ότι θέλεις χρησιμοποιώντας την λιγότερη δυνατη μπογιά.

 

Ο τρίτος τον πλησιάζει και του λέει. Εγώ μπορώ να σχεδιασω με τα πινέλα μου με τρεις διαφορετικούς τρόπους ταυτόχρονα σε οποιοδήποτε είδος καμβα και να έχεις.

 

Ο ζωγράφος κοντοστέκεται λίγο, σκέφτεται και τους προκαλεί σε μονομαχία . Η μάχη δεν κράτησε πολυ και ηττήθηκε και απο τους τρεις .

 

 

Σταματάς μια γλωσσα όταν αποκτησεις τις δεξιότητες του ζωγράφου και δεν υποπέσεις στο λαθος του

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)

Δεν μου αρέσουν τα διδακτικά παραμύθια και οι παραλληλισμοί, γιατί συχνά είναι άστοχα και δυσνόητα. Επίσης με κάνουν να νιώθω βλάκας. Μισώ τέτοιου είδους "σοφίες", οπότε είναι ένα κακό μέσο για να μου περάσει κάποιος το μήνυμά του.

Μετά από αυτά που διάβασα αποφάσισα να σταματήσω να μαθαίνω μια γλώσσα όταν πιστεύω εγώ πως πρέπει να σταματήσω. Άλλωστε δεν φαίνεται κανείς να γνωρίζει μια δεδομένη απάντηση στο ερώτημά μου. Το θέμα μπορεί να κλειδώσει, ή να μετονομαστεί, γιατί από εδώ και πέρα ό,τι γράφεται θα αφορά τη Verilog ή οποιαδήποτε άλλη γλώσσα αποφασίσω να ακολουθήσω.

Επεξ/σία από PiDefiner
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δεν μου αρέσουν τα διδακτικά παραμύθια και οι παραλληλισμοί, γιατί συχνά είναι άστοχα και δυσνόητα. Επίσης με κάνουν να νιώθω βλάκας. Μισώ τέτοιου είδους "σοφίες", οπότε είναι ένα κακό μέσο για να μου περάσει κάποιος το μήνυμά του.

Μετά από αυτά που διάβασα αποφάσισα να σταματήσω να μαθαίνω μια γλώσσα όταν πιστεύω εγώ πως πρέπει να σταματήσω. Άλλωστε δεν φαίνεται κανείς να γνωρίζει μια δεδομένη απάντηση στο ερώτημά μου. Το θέμα μπορεί να κλειδώσει, ή να μετονομαστεί, γιατί από εδώ και πέρα ό,τι γράφετε θα αφορά τη Verilog ή οποιαδήποτε άλλη γλώσσα αποφασίσω να ακολουθήσω.

 

Τι προσπάθησα να πω λοιπον στην παραμυθενια και δυσνοητη γλώσσα με την οποία εξεφραζα σοφίες 

 

Ο ζωγραφος ήξερε μια γλώσσα σαν την Java ας πούμε και ήταν πολύ καλός

 

ο πρώτος τυπος χρησιμοποιούσε μια domain specific language

ο δευτερος τυπος χρησιμοποιούσε μια γλώσσα χαμηλή σε resources 

ο τρίτος τυπος χρησιμοποιούσε εναν code generator όπως το CA GEN

 

Το ηθικό διδαγμα που προσπάθησα να περάσω και μάλλον όπως φάνηκε δεν μπορεσα να το κάνω είναι ότι σταματας όταν νιώθεις efficient σε μια γλώσσα και γνωρίζεις καλά τα όρια και τις αδυναμίες της

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Το θέμα μπορεί να κλειδώσει, ή να μετονομαστεί, γιατί από εδώ και πέρα ό,τι γράφεται θα αφορά τη Verilog ή οποιαδήποτε άλλη γλώσσα αποφασίσω να ακολουθήσω.

 

Ξεκίνα νέο θέμα γι'αυτό το λόγο ώστε να διευκολύνει και τους υπόλοιπους.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Πότε σταματάω μια γλώσσα;

 

Ποτέ. Άλλωστε δεν μαθαίνεις ποτέ μία συγκεκριμένη γλώσσα, αλλά προγραμματισμό.

 

Είναι σαν να έμαθες να οδηγάς σε cinquecento και θεωρείς ότι έμαθες cinquecento. Όχι, οδήγηση έμαθες.

Και βέβαια θα δυσκολευτείς να συνηθίσεις το νέο αυτοκίνητο, αν αλλάξεις. Αλλά δεν ρώτησες ποτέ "πότε παρατάω το cinquecento".

Και φυσικά, όσα περισσότερα αυτοκίνητα οδηγήσεις, και για όσο περισσότερο καιρό, και σε όσους περισσότερο δρόμους, τόσο πιο σφαιρική θα είναι η γνώση σου στην οδήγηση.

 

Τηρουμένων των αναλογιών, πάντα...

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα

  • Δημιουργία νέου...