Μετατροπή αριθμού μεταξύ δυαδικού, οκταδικού, δεκαδικού και δεκαεξαδικού

μετατρέπει εύκολα έναν αριθμό από μορφή εισόδου (δεκαδική, δυαδική, οκταδική, δεκαεξαδική) σε διάφορες μορφές εξόδου, διευκολύνοντας τις εργασίες προγραμματισμού, debugging και ανάλυσης δεδομένων.

Γιατί να χρησιμοποιήσετε ένα εργαλείο μετατροπής αριθμών;

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

Αυτόματος εντοπισμός μορφής εισαγωγής

Το εργαλείο εντοπίζει αυτόματα τη βάση εισόδου:

  • Πρόθεμα 0b: δυαδικό (π.χ. 0b101010)
  • Πρόθεμα 0o: οκταδικό (π.χ. 0o52)
  • Πρόθεμα 0x: δεκαεξαδικό (π.χ. 0x2a)
  • Χωρίς πρόθεμα που περιέχει γράμματα a-f: δεκαεξαδικό (π.χ. 2a, ff)
  • Μόνο χωρίς πρόθεμα και αριθμούς: δεκαδικός (π.χ. 42)

Πώς να χρησιμοποιήσετε το εργαλείο

Εισαγάγετε έναν αριθμό στο πεδίο εισαγωγής και, στη συνέχεια, κάντε κλικ στο "Μετατροπή". Και οι τέσσερις αναπαραστάσεις (δυαδική, οκταδική, δεκαεξαδική, δεκαδική) θα εμφανίζονται ταυτόχρονα. Στη συνέχεια, μπορείτε να αντιγράψετε το αποτέλεσμα με το ειδικό κουμπί.

Παράδειγμα

Saisie : 0b101010

Αποτελέσματα:

δυαδικό: 101010
οκταδικό: 52
δεκαεξαδικό: 2α
δεκαδικό: 42

Συχνές ερωτήσεις

Ποια είναι τα αποδεκτά προθέματα για τη διάκριση των βάσεων;

Το εργαλείο αναγνωρίζει τις τυπικές συμβάσεις: 0b για το δυαδικό (π.χ. 0b101010), 0o για το οκταδικό (π.χ. 0o52), 0x για το δεκαεξαδικό (π.χ. Χωρίς πρόθεμα, ένας αριθμός που αποτελείται μόνο από ψηφία ερμηνεύεται ως δεκαδικός και ένας αριθμός που περιέχει γράμματα a έως f ερμηνεύεται ως δεκαεξαδικός. Αυτή η σύμβαση είναι συμβατή με Python, JavaScript και τις περισσότερες σύγχρονες γλώσσες.

Γιατί μετατροπή μεταξύ δυαδικού, οκταδικού, δεκαεξαδικού και δεκαδικού;

Διαφορετικές βάσεις εξυπηρετούν διαφορετικά πλαίσια. Το δυαδικό αντιπροσωπεύει πιστά τη δομή της μνήμης (bits, flags, masks). Η δεκαεξαδική συμπίεση 4 bit ανά χαρακτήρα, ιδανική για ανάγνωση διευθύνσεων μνήμης, χρωμάτων (#ff6600), κατακερματισμών ή UUID. Το Octal εξακολουθεί να εμφανίζεται στα δικαιώματα Unix (chmod 755). Το δεκαδικό είναι η συνηθισμένη ανθρώπινη βάση. Η μετατροπή μεταξύ αυτών των βάσεων είναι απαραίτητη σε χαμηλό επίπεδο, ασφάλεια και δικτύωση.

Ποια είναι η διαφορά μεταξύ της βάσης 2, της βάσης 8, της βάσης 16 και της βάσης N;

Η βάση ενός αριθμητικού συστήματος υποδεικνύει πόσα διακριτά σύμβολα χρησιμοποιεί. Η βάση 2 (δυαδική) χρησιμοποιεί 0 και 1, η βάση 8 (οκταδική) τα ψηφία 0 έως 7, η βάση 10 (δεκαδική) τα ψηφία 0 έως 9 (adhexacodecode>, βάσης 1) f. Οποιαδήποτε βάση N ακολουθεί την ίδια αρχή: N σύμβολα και κάθε θέση αξίζει N^k. Αυτό το εργαλείο στοχεύει τις τέσσερις κοινές βάσεις (2, 8, 10, 16).

Το εργαλείο χειρίζεται αρνητικούς ή δεκαδικούς αριθμούς;

Η τρέχουσα έκδοση εστιάζει σε θετικούς ακέραιους αριθμούς, οι οποίοι καλύπτουν τις περισσότερες ανάγκες προγραμματισμού του συστήματος. Οι αρνητικοί αριθμοί εκφράζονται σε συμπλήρωμα δύο σύμφωνα με ένα σταθερό πλάτος λέξης (8, 16, 32, 64 bit) και απαιτούν πρόσθετο πλαίσιο. Οι αριθμοί σημείων σε δυαδικό σύστημα (πρότυπο IEEE 754) αποτελούν ξεχωριστό θέμα. Για αυτές τις περιπτώσεις, χρησιμοποιήστε τα printf, bc στη γραμμή εντολών ή ένα εργαλείο αφιερωμένο στο IEEE 754.

Πώς γίνεται μη αυτόματη μετατροπή μεταξύ δυαδικού και δεκαεξαδικού;

Η μετατροπή δυαδικού σε δεκαεξαδικό είναι ασήμαντη επειδή τα 4 bit είναι ακριβώς ένα δεκαεξαδικό ψηφίο. Σπάστε το δυαδικό αρχείο σε ομάδες 4-bit από τα δεξιά και αντικαταστήστε κάθε ομάδα με το δεκαεξαδικό της ισοδύναμο: 0000 δίνει 0, 1010 δίνει a, 1111 δίνει f. Παράδειγμα: Το 10101010 χωρίζεται σε 1010 1010 και αξίζει aa. Η αντίστροφη διαδρομή είναι επίσης άμεση.

Γιατί ο δεκαεξαδικός αριθμός μου ff δίνει 255 σε δεκαδικό;

Σε δεκαεξαδικό, κάθε ψηφίο αντιπροσωπεύει δύναμη 16. Το ff είναι f * 16 + f * 1 ή 15 * 16 + 15 = 255. Είναι η μέγιστη τιμή ενός byte (8 bit), εξ ου και η πανταχού παρουσία του ff στον προγραμματισμό: μέγιστη ένταση ενός καναλιού χρώματος (#ff0000 καθαρό κόκκινο), πλήρης μάσκα, τιμή φρουρού.

Παράδειγμα αιτήματος

curl -X POST https://cdrn.fr/api/v1/tools/number-converter/execute \
  -H "Content-Type: application/json" \
  -d '{"number":"..."}'

Σχήμα εισόδου

Πεδίο Τύπος Απαιτείται Προεπιλογή
number string

Σημεία πρόσβασης

  • GET https://cdrn.fr/api/v1/tools - εμφανίζει όλα τα διαθέσιμα εργαλεία
  • GET https://cdrn.fr/api/v1/tools/number-converter - ανακτά το σχήμα αυτού του εργαλείου
  • POST https://cdrn.fr/api/v1/tools/number-converter/execute - εκτελεί αυτό το εργαλείο με payload JSON