Μετατροπή δυαδικού σε δεκαεξαδικό

Δοκιμάστε Το Όργανο Μας Για Την Εξάλειψη Των Προβλημάτων

Κάθε τόσο καιρό είναι ωραίο να κάνεις διάλειμμα από τα μαθήματα και να δεις κάτι λίγο πιο geekier. Όλοι έχουμε δει δυαδικό κώδικα και οι περισσότεροι γνωρίζουν ότι αποτελείται από δύο χαρακτήρες, μηδέν και έναν. Οι περισσότεροι άνθρωποι καταλαβαίνουν επίσης ότι ο δυαδικός κώδικας μπορεί να μετατραπεί σε δεκαδικό λαμβάνοντας τον δυαδικό αριθμό από τη δεξιά πλευρά της ακολουθίας και εφαρμόζοντάς τον σε μια άλλη ακολουθία αριθμών «δύο στη δύναμη του». Για παράδειγμα, ένας οκταψήφιος δυαδικός κώδικας θα μπορούσε να μοιάζει με αυτό - '10010001'. Αυτό περιλαμβάνει ένα '1', ένα '16' και ένα '128', κάνοντας συνολικά 145. Αυτό είναι αρκετά απλό. Παίρνει πιο περίπλοκο όταν προσθέτετε περισσότερους αριθμούς αλλά ο κύριος είναι ο ίδιος.

Τώρα - εάν κάνετε πολλή δουλειά HTML, θα έχετε δει κωδικούς που αντιπροσωπεύουν χρώματα. Αυτοί οι κωδικοί περιλαμβάνουν γράμματα και είναι δεκαεξαδικοί. Τα γράμματα είναι στην πραγματικότητα αριθμοί, αλλά επειδή οι χαρακτήρες που χρησιμοποιούμε συνήθως είναι στη βάση 10, δηλαδή στα ψηφία 0 έως 9, πρέπει να χρησιμοποιήσουμε γράμματα για να αντιπροσωπεύσουμε τους αριθμούς 10,11,12,13,14 και 15. Αυτό οφείλεται στο δεκαεξαδικό είναι η βάση 16 και έχει 16 ψηφία συμπεριλαμβανομένου του μηδέν. Δεν χρησιμοποιούμε δύο χαρακτήρες σε δεκαεξαδικό αριθμό έως ότου φτάσουμε στον αριθμό 16, ο οποίος είναι στην πραγματικότητα '10'. Αυτό αντιπροσωπεύει ένα δεκαέξι. Ο δεκαεξαδικός αριθμός «18» είναι στην πραγματικότητα δεκαέξι συν 8, που είναι 24. Ο δεκαεξαδικός κωδικός «1F» αντιπροσωπεύει 31 σε δεκαδικό επειδή έχουμε ένα δεκαέξι συν 15. Λάβετε την ιδέα;

binary to hexadecimal

Εντάξει, οπότε μπορούμε να βρούμε ως επί το πλείστον τον δεκαεξαδικό αριθμό όταν έχουμε μόνο δύο χαρακτήρες. Το ένα ψηφίο αντιπροσωπεύει πόσα «16» έχουμε και το άλλο μετρά απλώς από μηδέν έως δεκαπέντε. Έτσι, ο υψηλότερος αριθμός που έχουμε είναι 'FF', που είναι δεκαπέντε φορές δεκαέξι, συν δεκαπέντε. Η απάντηση είναι 255. Ήδη μπορείτε να δείτε τα οφέλη του δεκαεξαδικού, επειδή σε δυαδικό αριθμό θα απαιτούν οκτώ χαρακτήρες και το έχουμε κάνει σε δύο.

Πώς λοιπόν επιλύουμε ευκολότερα τους μεγαλύτερους αριθμούς σε δεκαδικά; Η απάντηση είναι να χωρίσετε κάθε δεκαεξαδικό χαρακτήρα σε δυαδικό ισοδύναμο. Έτσι, ο δεκαεξαδικός αριθμός 8FA4 γίνεται σε δυαδικό 1000.1111.1011.0100. Εδώ μπορούμε να δούμε κάθε αριθμό που αποτελεί την απόλυτη απάντηση. Ξεκινώντας από τα αριστερά έχουμε 4, 16, 32, 128 κ.λπ. ... μέχρι τον τελευταίο χαρακτήρα, δηλαδή 32.768. Προσθέστε όλους τους αριθμούς που αντιπροσωπεύονται από αυτούς μαζί και έχουμε 36772. Έτσι, ο δεκαεξαδικός κώδικας του 8FA4 είναι στην πραγματικότητα 36772 σε δεκαδικό. Τέσσερις χαρακτήρες που αντιπροσωπεύουν κάτι που είναι δεκαέξι χαρακτήρες σε δυαδικό είναι πραγματικά εντυπωσιακό.

Αν θυμάστε τους δεκαεξαδικούς κωδικούς σας σε HTML που αντιπροσωπεύουν χρώματα, θα παρατηρήσετε ότι έχετε δεκαεξαδικούς κωδικούς 6 χαρακτήρων. Ο πρώτος χαρακτήρας αντιπροσωπεύει 16, ο δεύτερος 16 στη δύναμη 2, ο τρίτος είναι δεκαέξι στη δύναμη 3 και ούτω καθεξής. Εάν το επιλύσετε, ο μεγαλύτερος αριθμός που μπορείτε να έχετε με έξι δεκαεξαδικά ψηφία είναι 16,777.215. Σχεδόν δεκαεπτά εκατομμύρια χρώματα αντιπροσωπεύονται μόνο από έξι χαρακτήρες.