Σπίτι Προσωπικά Οικονομικά Εκφράζουν δυαδικούς αριθμούς σε C ++ - dummies

Εκφράζουν δυαδικούς αριθμούς σε C ++ - dummies

Πίνακας περιεχομένων:

Βίντεο: Week 0 2024

Βίντεο: Week 0 2024
Anonim

Οι μεταβλητές C ++ αποθηκεύονται εσωτερικά ως λεγόμενοι δυαδικοί αριθμοί. Οι δυαδικοί αριθμοί αποθηκεύονται ως ακολουθία τιμών 1 και 0 γνωστών ως bits. Τις περισσότερες φορές, δεν χρειάζεται να ασχοληθείτε με τα συγκεκριμένα bits που χρησιμοποιείτε για να αντιπροσωπεύετε τους αριθμούς. Μερικές φορές, ωστόσο, είναι πρακτικό και βολικό να τικνάρουμε με αριθμούς σε επίπεδο bit - έτσι το C ++ παρέχει ένα σύνολο χειριστών για το σκοπό αυτό.

Οι λεγόμενοι bitwise λογικοί τελεστές λειτουργούν στα επιχειρήματά τους σε επίπεδο bit. Για να κατανοήσουν πώς λειτουργούν, πρώτα εξετάστε πώς οι υπολογιστές αποθηκεύουν μεταβλητές.

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

δεκαδικοί αριθμοί επειδή βασίζονται στον αριθμό 10. Γενικά, ο προγραμματιστής εκφράζει μεταβλητές C ++ ως δεκαδικούς αριθμούς. Έτσι θα μπορούσατε να καθορίσετε την τιμή του var ως (ας πούμε) 123, αλλά εξετάστε τις συνέπειες. Ένας αριθμός όπως ο 123 αναφέρεται σε 1 * 100 + 2 * 10 + 3 * 1. Όλοι αυτοί οι αριθμοί βάσης - 100, 10 και 1 - είναι εξουσίες 10.

123 = 1 * 100 + 2 * 10 + 3 * 1

Εκφράζεται σε ελαφρώς διαφορετικό (αλλά ισοδύναμο) 2

+ 2 * 10

1 + 3 * 10 0 Άλλα συστήματα αριθμών Λοιπόν, καλά, χρησιμοποιώντας 10 ως βάση (ή

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

123

10 = 1 * 8 2

+ 3 * 8

0 = 173 8

Τα μικρά 10 και 8 εδώ αναφέρονται στο σύστημα αριθμοδότησης, 10 για δεκαδικό (βάση 10) και 8 για οκταδικό (βάση 8). Ένα σύστημα καταμέτρησης μπορεί να χρησιμοποιεί οποιαδήποτε θετική βάση. Το σύστημα δυαδικών αριθμών Οι υπολογιστές έχουν ουσιαστικά δύο δάχτυλα. Οι υπολογιστές προτιμούν την καταμέτρηση χρησιμοποιώντας τη βάση 2. Ο αριθμός 123 10 θα εκφράζεται με αυτόν τον τρόπο: 123 10 = 0 * 2 7

+ 1 * 2

5

+ 1 * 2 4 + 1 * 2

1 + 1 * 2 0 123 10 = 0 * 128 + 1 * 64 + 1 * 32 + 1 * 16 + 1 * 8 + 0 * 4 + 1 * 2 + 1 * 1 = 01111011 2 Η σύμβαση υπολογιστών εκφράζει δυαδικούς αριθμούς χρησιμοποιώντας 4, 8, 16, 32 ή ακόμα και 64 δυαδικά ψηφία.Αυτό οφείλεται επίσης στον τρόπο με τον οποίο κατασκευάζονται εσωτερικά υπολογιστές. Επειδή ο όρος ψηφίο αναφέρεται σε πολλαπλάσιο των 10, ένα δυαδικό ψηφίο ονομάζεται bit (συντομογραφία >). Ένα byte αποτελείται από 8 bits. (Η κλήση ενός δυαδικού ψηφίου byte-it δεν φαινόταν καλή ιδέα.) Η μνήμη συνήθως μετράται σε bytes (όπως τα ρολά μετριούνται σε μονάδες των δωδεκάδων του αρτοποιού). Με μια τόσο μικρή βάση, πρέπει να χρησιμοποιήσετε αριθμό μεγάλου

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

10 . Οι προγραμματιστές προτιμούν να εκφράζουν αριθμούς χρησιμοποιώντας έναν ζυγό αριθμό bits. Το οκταδικό σύστημα - το οποίο βασίζεται σε 3 bits - ήταν το προεπιλεγμένο δυαδικό σύστημα στις πρώτες ημέρες του C. Βλέπουμε ένα αποκορύφωμα ακόμα και σήμερα - μια σταθερά που αρχίζει με ένα 0 θεωρείται ότι είναι οκταδικό στην C ++. Έτσι, η γραμμή: cout << "0173 =" << 0173 << endl; παράγει την ακόλουθη έξοδο: 0173 = 123 Εντούτοις, το οκτάτο έχει σχεδόν αντικατασταθεί από το σύστημα δεκαεξαδικό , το οποίο βασίζεται σε ψηφία 4 bit. Το δεκαεξαδικό χρησιμοποιεί τα ίδια ψηφία για τους αριθμούς 0 έως 9. Για τα ψηφία μεταξύ 9 και 16, το δεκαεξαδικό χρησιμοποιεί τα πρώτα έξι γράμματα του αλφαβήτου: Α για 10, Β για 11 και ούτω καθεξής. Έτσι, 123 10 γίνεται 7Β 16, όπως παρακάτω: 123 = 7 * 16 1 + B = 7B

16

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

Τέλος, ποιος θέλει να εκφράσει έναν δεκαεξαδικό αριθμό όπως 7Β

16

χρησιμοποιώντας έναν δείκτη; Τα τερματικά δεν υποστηρίζουν ακόμη και δείκτες. Ακόμη και σε έναν επεξεργαστή κειμένου, είναι ένα drag για να αλλάξετε τις γραμματοσειρές από και προς την κατάσταση των υποδειγμάτων μόνο για να πληκτρολογήσετε δύο χίλια ψηφία.

Επομένως, οι προγραμματιστές (όχι ανόητοι, αυτοί) χρησιμοποιούν την αρχή της ένα δεκαεξαδικό αριθμό με ένα 0x. Έτσι, το 7Β γίνεται 0x7B. Χρησιμοποιώντας αυτήν τη σύμβαση, ο δεκαεξαδικός αριθμός 0x7B είναι ίσος με 123 δεκαδικό, ενώ 0x123 δεκαεξαδικό είναι ίσο με 291 δεκαδικό. Το απόσπασμα κώδικα cout << "0x7B =" << 0x7B << endl; cout << "0x123 =" << 0x123 << endl; παράγει την ακόλουθη έξοδο: 0x7B = 123 0x123 = 291 Μπορείτε να χρησιμοποιήσετε όλους τους μαθηματικούς χειριστές στους δεκαεξαδικούς αριθμούς με τον ίδιο τρόπο που θα τους εφαρμόζατε σε δεκαδικούς αριθμούς.

Αν θέλετε πραγματικά, μπορείτε να γράψετε δυαδικούς αριθμούς στο C ++ '14 χρησιμοποιώντας το πρόθεμα '0b'. Έτσι, το 123 γίνεται 0b01111011. 

Εκφράζουν δυαδικούς αριθμούς σε C ++ - dummies

Η επιλογή των συντακτών

Πώς να αλλάξετε τη ρύθμιση ισορροπίας λευκού σε ετικέτες Canon EOS 70D

Πώς να αλλάξετε τη ρύθμιση ισορροπίας λευκού σε ετικέτες Canon EOS 70D

Χρησιμοποιώντας το Ο έλεγχος εξισορρόπησης λευκού στο Canon EOS 70D σας μπορεί εύκολα και γρήγορα να διορθώσει προβλήματα χρώματος. Οι διαθέσιμες ρυθμίσεις ισορροπίας λευκού απεικονίζονται με τα σύμβολα που εμφανίζονται στον παρακάτω πίνακα. Μπορείτε να δείτε την τρέχουσα ρύθμιση στην οθόνη Ρυθμίσεις λήψης, όπως φαίνεται στο παρακάτω σχήμα. Για να προσαρμόσετε τη ρύθμιση, έχετε ...

Η επιλογή των συντακτών

Προετοιμασία αντιγράφου TIFF ψηφιακής εικόνας για δημοσίευση - ανδρεικέλες

Προετοιμασία αντιγράφου TIFF ψηφιακής εικόνας για δημοσίευση - ανδρεικέλες

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

Εξάγοντας το περίγραμμα επιλογής του ψηφιακού σας επεξεργαστή εικόνας - ανδρείκελα

Εξάγοντας το περίγραμμα επιλογής του ψηφιακού σας επεξεργαστή εικόνας - ανδρείκελα

Η πρώτη προσπάθεια. Αναμείνετε να βελτιώσετε το περίγραμμα επιλογής σας τουλάχιστον λίγο. Μπορείτε να βελτιώσετε το περίγραμμα σας με διάφορους τρόπους: Αντίστροφη περιγράμματος επιλογής: Απλά χρησιμοποιήστε την εντολή Invert (ή την αντίστοιχη εντολή του προγράμματος). Προσθέστε σε περίγραμμα επιλογής: ...

Επιλογή από τις άκρες της ψηφιακής εικόνας - ανδρείκελα

Επιλογή από τις άκρες της ψηφιακής εικόνας - ανδρείκελα

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

Η επιλογή των συντακτών

Πώς να χρησιμοποιείτε το παράθυρο μητρώου του QuickBooks 2010 - dummies

Πώς να χρησιμοποιείτε το παράθυρο μητρώου του QuickBooks 2010 - dummies

Για να εργαστείτε ευκολότερα με το παράθυρο του Μητρώου και να ελέγξετε τον τρόπο εμφάνισής του: Το κουμπί Μετάβαση: Εμφανίζει το παράθυρο διαλόγου Μετάβαση (Go To). Αυτό το παράθυρο διαλόγου σάς επιτρέπει να αναζητήσετε μια συναλλαγή στο παράθυρο "Εγγραφή". Για παράδειγμα, μπορείτε να αναζητήσετε ...

Πώς να εργάζεστε με έναν υπάρχοντα προϋπολογισμό σε QuickBooks - dummies

Πώς να εργάζεστε με έναν υπάρχοντα προϋπολογισμό σε QuickBooks - dummies

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

Πώς να χρησιμοποιείτε τα κουτιά παραθύρων αναφορών του QuickBooks - dummies

Πώς να χρησιμοποιείτε τα κουτιά παραθύρων αναφορών του QuickBooks - dummies

Από, Προς, Στήλες και Ταξινόμηση. Αυτά τα πλαίσια σας επιτρέπουν επίσης να ελέγχετε τις πληροφορίες που εμφανίζονται στο παράθυρο αναφοράς και την εμφάνιση των πληροφοριών. Για παράδειγμα, μπορείτε να ενημερώσετε το QuickBooks για το χρονικό διάστημα που θέλετε ...