Τι είναι το δυαδικό, και γιατί οι υπολογιστές το χρησιμοποιούν;
Οι υπολογιστές δεν καταλαβαίνουν λέξεις ή αριθμούς με τον τρόπο που οι άνθρωποι κάνουν. Το σύγχρονο λογισμικό επιτρέπει στον τελικό χρήστη να αγνοήσει αυτό, αλλά στα χαμηλότερα επίπεδα του υπολογιστή σας, όλα αντιπροσωπεύονται από ένα δυαδικό ηλεκτρικό σήμα που καταγράφει σε μία από τις δύο καταστάσεις: ενεργοποιημένη ή απενεργοποιημένη. Για να κατανοήσετε τα περίπλοκα δεδομένα, ο υπολογιστής σας πρέπει να το κωδικοποιήσει σε δυαδική μορφή.
Το δυαδικό είναι ένα σύστημα βάσης 2 αριθμών. Βάση 2 σημαίνει ότι υπάρχουν μόνο δύο ψηφία-1 και 0, τα οποία αντιστοιχούν στις καταστάσεις ενεργοποίησης και απενεργοποίησης που μπορεί να καταλάβει ο υπολογιστής σας. Ίσως γνωρίζετε τη βάση 10 - το δεκαδικό σύστημα. Το δεκαδικό ψηφίο χρησιμοποιεί δέκα ψηφία που κυμαίνονται από 0 έως 9 και στη συνέχεια αναδιπλώνεται για να σχηματίσει διψήφιους αριθμούς, με κάθε ψηφίο να αξίζει δέκα φορές περισσότερο από το τελευταίο (1, 10, 100 κ.λπ.). Το δυαδικό είναι παρόμοιο, με κάθε ψηφίο να αξίζει δύο φορές περισσότερο από το τελευταίο.
Μετρώντας το δυαδικό
Σε δυαδικό ψηφίο, το πρώτο ψηφίο αξίζει 1 σε δεκαδικό. Το δεύτερο ψηφίο αξίζει 2, το τρίτο αξίζει 4, το τέταρτο αξίζει 8, και έτσι κάθε φορά διπλασιάζεται. Η προσθήκη όλων αυτών σας δίνει τον αριθμό στο δεκαδικό. Έτσι,
1111 (σε δυαδικό) = 8 + 4 + 2 + 1 = 15 (σε δεκαδικό)
Υπολογίζοντας το 0, αυτό μας δίνει 16 πιθανές τιμές για τέσσερα δυαδικά δυαδικά ψηφία. Μετακινήστε σε 8 bits και έχετε 256 πιθανές τιμές. Αυτό καταλαμβάνει πολύ περισσότερο χώρο για να εκπροσωπήσει, καθώς τέσσερα ψηφία σε δεκαδικό μας δίνουν 10.000 πιθανές τιμές. Μπορεί να φανεί ότι περνάμε από όλα αυτά τα προβλήματα να ανακαλύψουμε το σύστημα καταμέτρησης μας μόνο και μόνο για να το καταστήσουμε πιο πυκνοκατοικημένο, αλλά οι υπολογιστές κατανοούν δυαδικές πολύ καλύτερα από ό, τι καταλαβαίνουν το δεκαδικό. Σίγουρα, η δυαδική καταλαμβάνει περισσότερο χώρο, αλλά είμαστε συγκρατημένοι από το υλικό. Και για μερικά πράγματα, όπως η επεξεργασία λογικών, το δυαδικό είναι καλύτερο από το δεκαδικό.
Υπάρχει ένα άλλο βασικό σύστημα που χρησιμοποιείται επίσης στον προγραμματισμό: δεκαεξαδικό. Παρόλο που οι υπολογιστές δεν τρέχουν σε δεκαεξαδική μορφή, οι προγραμματιστές τη χρησιμοποιούν για να αναπαριστούν δυαδικές διευθύνσεις σε μορφή που διαβάζεται από τον άνθρωπο όταν γράφουν κώδικα. Αυτό συμβαίνει επειδή δύο δεκαδικά ψηφία μπορούν να αντιπροσωπεύουν ένα ολόκληρο byte, οκτώ ψηφία σε δυαδικό. Το δεκαεξαδικό χρησιμοποιεί 0-9 σαν δεκαδικό, ενώ τα γράμματα Α έως F αντιπροσωπεύουν τα έξι πρόσθετα ψηφία.
Έτσι γιατί οι υπολογιστές χρησιμοποιούν δυαδικό?
Η σύντομη απάντηση: το υλικό και οι νόμοι της φυσικής. Κάθε αριθμός στον υπολογιστή σας είναι ένα ηλεκτρικό σήμα και στις πρώτες μέρες του υπολογιστή, τα ηλεκτρικά σήματα ήταν πολύ πιο δύσκολο να μετρηθούν και να ελέγχονται με μεγάλη ακρίβεια. Έγινε πιο λογικό να διακρίνουμε μόνο μια κατάσταση "σε κατάσταση" που εκπροσωπείται από το αρνητικό φορτίο - και μια "off" κατάσταση - που αντιπροσωπεύεται από μια θετική χρέωση. Για όσους δεν είναι σίγουροι για το γιατί το "off" αντιπροσωπεύεται από μια θετική επιβάρυνση, είναι επειδή τα ηλεκτρόνια έχουν αρνητική επιβάρυνση - περισσότερα ηλεκτρόνια σημαίνουν περισσότερο ρεύμα με αρνητικό φορτίο.
Έτσι, οι πρώτοι υπολογιστές μεγέθους δωματίων που χρησιμοποιήθηκαν δυαδικά για να χτίσουν τα συστήματά τους, και παρόλο που χρησιμοποιούσαν πολύ παλαιότερο, πιο ογκώδες υλικό, διατηρήσαμε τις ίδιες βασικές αρχές. Οι σύγχρονοι υπολογιστές χρησιμοποιούν αυτό που είναι γνωστό ως τρανζίστορ για να εκτελούν υπολογισμούς με δυαδικό. Ακολουθεί ένα διάγραμμα για το τι φαίνεται ένα τρανζίστορ πεδίου-αποτελέσματος (FET):
Ουσιαστικά, επιτρέπει μόνο ρεύμα να ρέει από την πηγή στη δεξαμενή εάν υπάρχει ρεύμα στην πύλη. Αυτό αποτελεί ένα δυαδικό διακόπτη. Οι κατασκευαστές μπορούν να κατασκευάσουν αυτά τα τρανζίστορ απίστευτα μικρά - σε όλη τη διαδρομή μέχρι τα 5 νανόμετρα, ή περίπου το μέγεθος των δύο κλώνων του DNA. Αυτό είναι το πώς λειτουργούν οι σύγχρονες CPU και ακόμη και αυτοί μπορούν να υποφέρουν από προβλήματα που διαφοροποιούν τις καταστάσεις on και off (αν και αυτό συμβαίνει κυρίως εξαιτίας του μη πραγματικού μοριακού τους μεγέθους, που υπόκειται στην περίεργη κβαντική μηχανική).
Αλλά γιατί μόνο βάση 2?
Έτσι ίσως σκέφτεστε, "γιατί μόνο 0 και 1; Δεν μπορείτε να προσθέσετε μόνο ένα άλλο ψηφίο; "Ενώ μερικά από αυτά έρχονται κάτω από την παράδοση για το πώς κατασκευάζονται υπολογιστές, να προσθέσετε ένα άλλο ψηφίο θα σήμαινε ότι θα έπρεπε να διακρίνουμε μεταξύ διαφορετικών επιπέδων ρεύματος - όχι μόνο" off "και" on " , "Αλλά και δηλώνει" λίγο "και" πολύ ".
Το πρόβλημα εδώ είναι αν θέλετε να χρησιμοποιήσετε πολλαπλά επίπεδα τάσης, θα χρειαστείτε έναν τρόπο για να εκτελέσετε εύκολα υπολογισμούς μαζί τους και το υλικό για αυτό δεν είναι βιώσιμο ως αντικατάσταση του δυαδικού υπολογιστή. Υπάρχει πράγματι. ονομάζεται τριπλός υπολογιστής και είναι γύρω από τη δεκαετία του 1950, αλλά αυτό είναι λίγο πολύ όπου η ανάπτυξη σε αυτό σταμάτησε. Η τριμερής λογική είναι πολύ πιο αποδοτική από τη δυαδική, αλλά μέχρι στιγμής, κανείς δεν έχει μια αποτελεσματική αντικατάσταση του δυαδικού τρανζίστορ ή τουλάχιστον δεν έχει γίνει καμία εργασία για την ανάπτυξή τους στις ίδιες μικροσκοπικές κλίμακες όπως οι δυαδικές.
Ο λόγος για τον οποίο δεν μπορούμε να χρησιμοποιήσουμε την τριμερή λογική έρχεται στον τρόπο με τον οποίο οι τρανζίστορ στοιβάζονται σε έναν υπολογιστή - κάτι που ονομάζεται "πύλες"-και πώς χρησιμοποιούνται για να κάνουν μαθηματικά. Οι πύλες παίρνουν δύο εισόδους, εκτελούν μια ενέργεια σε αυτά και επιστρέφουν μία έξοδο.
Αυτό μας φέρνει στη μακρά απάντηση: το δυαδικό μαθηματικό είναι πολύ πιο εύκολο για έναν υπολογιστή από οτιδήποτε άλλο. Οι λογικές λογικές Boolean χρωματίζουν εύκολα σε δυαδικά συστήματα, με True και False να εκπροσωπούνται από την on and off. Οι πύλες στον υπολογιστή σας λειτουργούν με λογική boolean: παίρνουν δύο εισόδους και εκτελούν μια πράξη σε αυτές όπως AND, OR, XOR, και ούτω καθεξής. Δύο είσοδοι είναι εύκολο να διαχειριστούν. Αν θα γράψετε τις απαντήσεις για κάθε πιθανή εισαγωγή, θα έχετε αυτό που είναι γνωστό ως πίνακας αλήθειας:
Ένας πίνακας δυαδικής αλήθειας που λειτουργεί με λογική boolean θα έχει τέσσερις πιθανές εξόδους για κάθε θεμελιώδη λειτουργία. Αλλά επειδή οι τριαδικές πύλες παίρνουν τρεις εισόδους, ένας τριμερής πίνακας αληθείας θα έχει 9 ή περισσότερους. Ενώ ένα δυαδικό σύστημα έχει 16 πιθανούς χειριστές (2 ^ 2 ^ 2), ένα τριμερές σύστημα θα έχει 19,683 (3 ^ 3 ^ 3). Η κλιμάκωση γίνεται ζήτημα επειδή, ενώ η τριμερής είναι πιο αποτελεσματική, είναι επίσης εκθετικά πιο περίπλοκη.
Ποιός ξέρει? Στο μέλλον, θα μπορούσαμε να αρχίσουμε να βλέπουμε τους τριμερείς υπολογιστές να γίνονται ένα πράγμα, καθώς ωθούμε τα όρια του δυαδικού σε ένα μοριακό επίπεδο. Προς το παρόν, όμως, ο κόσμος θα συνεχίσει να λειτουργεί δυαδικά.
Εικόνες πιστώσεις: spainter_vfx / Shutterstock, Wikipedia, Wikipedia, Wikipedia, Wikipedia