JavaScript Υπολογισμοί Μέρους
- Προηγούμενη σελίδα JS καταστροφή
- Επόμενη σελίδα JS τυπικά έκφραση
JavaScript Υπολογισμοί Μέρους
Απλούστευση | Όνομα | Περιγραφή |
---|---|---|
& | AND | Αν και τα δύο bits είναι 1, τότε ορίζεται κάθε bit ως 1 |
| | OR | Αν ένα από τα δύο bits είναι 1, τότε ορίζεται κάθε bit ως 1 |
^ | XOR | Αν δύο bits έχουν μόνο ένα 1, τότε ορίζεται κάθε bit ως 1 |
~ | NOT | Αναστροφή όλων των bits |
<< | Διαδρομή αριστερά με συμπλήρωση μηδενίων | Με την εισαγωγή του μηδενικού στο δεξί και την αριστερή μετακίνηση, αφήνοντας το αριστερότερο bit να εξαφανιστεί. |
>> | Διαδρομή δεξιά με σημαντικός | Με την εισαγωγή της αντιγράφου του αριστερού bit στο αριστερό και την αριστερή μετακίνηση προς τα δεξιά, αφήνοντας το δεξιότερο bit να εξαφανιστεί. |
>>> | Διαδρομή δεξιά με συμπλήρωση μηδενίων | Με την εισαγωγή του μηδενικού στο αριστερό και την αριστερή μετακίνηση προς τα δεξιά, αφήνοντας το δεξιότερο bit να εξαφανιστεί. |
παράδειγμα
Εκτέλεση | Ε 결과 | ίδιο | Ε 결과 |
---|---|---|---|
5 & 1 | 1 | 0101 & 0001 | 0001 |
5 | 1 | 5 | 0101 | 0001 | 0101 |
5 ^ 1 | 4 | 0101 ^ 0001 | 0100 |
~ 5 | 10 | ~0101 | 1010 |
5 << 1 | 10 | 0101 << 1 | 1010 |
5 >> 1 | 2 | 0101 >> 1 | 0010 |
5 >>> 1 | 2 | 0101 >>> 1 | 0010 |
Το JavaScript χρησιμοποιεί 32-ψηφιαία δισεκατομμυριαστιαγώγισμα
Το JavaScript αποθηκεύει τα αριθμήματα ως 64-ψηφιαία δεκαδικά αριθμήματα, αλλά όλες οι δισεκατομμυριαστιαγώγισμα εκτελούνται ως 32-ψηφιαία δισεκατομμυριαστιαγώγισμα.
Πριν από την εκτέλεση της δισεκατομμυριαστιαγώγισμα, το JavaScript θα μετατρέψει το αριθμό σε 32-ψηφιαίο υπολογιστικό στοιχείο με πρόσημο.
Μετά την εκτέλεση της δισεκατομμυριαστιαγώγισμα, το αποτέλεσμα θα μετατραπεί σε 64-ψηφιαίο αριθμό του JavaScript.
Το παράδειγμα χρησιμοποιεί 4-ψηφιαία ανυπολογιστικά στοιχεία. Επομένως, το ~5 επιστρέφει 10.
Επειδή το JavaScript χρησιμοποιεί 32-ψηφιαία υπολογιστικά στοιχεία με πρόσημο, το JavaScript θα επιστρέψει -6.
00000000000000000000000000000101 (5)
11111111111111111111111111111010 (~5 = -6)
Για τα υπολογιστικά στοιχεία με πρόσημο, χρησιμοποιείται το αριστερότερο ψηφίο ως μінους.
Δισεκατομμυριαστιαγώγισμα AND
Όταν εκτελείται δισεκατομμυριαστιαγώγισμα AND σε ζευγάρι ψηφίων, αν τα ψηφία είναι όλα 1 επιστρέφει 1.
Ενότητα παράδειγμα:
Ε τύπος | Ε 결과 |
---|---|
0 & 0 | 0 |
0 & 1 | 0 |
1 & 0 | 0 |
1 & 1 | 1 |
Τέσσερα ψηφία παράδειγμα:
Ε τύπος | Ε 결과 |
---|---|
1111 & 0000 | 0000 |
1111 & 0001 | 0001 |
1111 & 0010 | 0010 |
1111 & 0100 | 0100 |
Δισεκατομμυριαστιαγώγισμα OR
Όταν εκτελείται δισεκατομμυριαστιαγώγισμα OR σε ζευγάρι ψηφίων, αν το ένα από τα ψηφία είναι 1 επιστρέφει 1:
Ενότητα παράδειγμα
Ε τύπος | Ε 결과 |
---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
Τέσσερα ψηφία υπολογισμός:
Εκτέλεση | Ε 결과 |
---|---|
1111 | 0000 | 1111 |
1111 | 0001 | 1111 |
1111 | 0010 | 1111 |
1111 | 0100 | 1111 |
Δισεκατομμυριαστιαγώγισμα XOR
Όταν εκτελείται δισεκατομμυριαστιαγώγισμα XOR σε ζευγάρι ψηφίων, αν τα ψηφία είναι διαφορετικά επιστρέφει 1:
Ενότητα παράδειγμα:
Ε τύπος | Ε 결과 |
---|---|
0 ^ 0 | 0 |
0 ^ 1 | 1 |
1 ^ 0 | 1 |
1 ^ 1 | 0 |
Τέσσερα ψηφία παράδειγμα:
Ε τύπος | Ε 결과 |
---|---|
1111 ^ 0000 | 1111 |
1111 ^ 0001 | 1110 |
1111 ^ 0010 | 1101 |
1111 ^ 0100 | 1011 |
JavaScript δισεκατομμυριαστιαγώγισμα AND (&)
Αν τα ψηφία είναι όλα 1, η δισεκατομμυριαστιαγώγισμα AND επιστρέφει 1:
δεκαδικός | δισδιάστατος |
---|---|
5 | 00000000000000000000000000000101 |
1 | 00000000000000000000000000000001 |
5 & 1 | 00000000000000000000000000000001 (1) |
παράδειγμα
var x = 5 & 1;
JavaScript δισεκατομμυριαστιαγώγισμα OR (|)
Αν κάποια θέση είναι 1, η αριθμητική κίνηση OR επιστρέφει 1:
δεκαδικός | δισδιάστατος |
---|---|
5 | 00000000000000000000000000000101 |
1 | 00000000000000000000000000000001 |
5 | 1 | 00000000000000000000000000000101 (5) |
παράδειγμα
var x = 5 | 1;
XOR (^)
Αν οι θέσεις είναι διαφορετικές, το XOR επιστρέφει 1:
δεκαδικός | δισδιάστατος |
---|---|
5 | 00000000000000000000000000000101 |
1 | 00000000000000000000000000000001 |
5 ^ 1 | 00000000000000000000000000000100 (4) |
παράδειγμα
var x = 5 ^ 1;
NOT (~)
δεκαδικός | δισδιάστατος |
---|---|
5 | 00000000000000000000000000000101 |
~5 | 11111111111111111111111111111010 (-6) |
παράδειγμα
var x = ~5;
Αριστερή κίνηση με συμπληρώσεις μηδενίων (<<)
Αυτό είναι η αριστερή κίνηση με συμπληρώσεις μηδενίων. Μια ή περισσότερες θέσεις μηδενίων εισάγονται από τα δεξιά, η πιο αριστερή θέση αριθμού αφαιρείται:
δεκαδικός | δισδιάστατος |
---|---|
5 | 00000000000000000000000000000101 |
5 << 1 | 00000000000000000000000000001010 (10) |
παράδειγμα
var x = 5 << 1;
Δεξιά κίνηση με διατήρηση του σημείου (>>)
Αυτό είναι η δεξιά κίνηση με διατήρηση του σημείου. Η πιο αριστερή θέση αριθμού εισάγεται από τη δεξιά, η τελευταία θέση αριθμού αφαιρείται:
δεκαδικός | δισδιάστατος |
---|---|
-5 | 11111111111111111111111111111011 |
-5 >> 1 | 11111111111111111111111111111101 (-3) |
παράδειγμα
var x = -5 >> 1;
Δεξιά κίνηση με συμπληρώσεις μηδενίων (>>>)
Αυτό είναι η δεξιά κίνηση με συμπληρώσεις μηδενίων. Μια ή περισσότερες θέσεις μηδενίων εισάγονται από τη δεξιά, η τελευταία θέση αριθμού αφαιρείται:
δεκαδικός | δισδιάστατος |
---|---|
5 | 00000000000000000000000000000101 |
5 >>> 1 | 00000000000000000000000000000010 (2) |
παράδειγμα
var x = 5 >>> 1;
32-bit υποκείμενα ακέραια (δισδιάστατοι αριθμοί)
Η κατανόηση μιας 32-bit ακέραιας τιμής με μοναδικό σημείο είναι πολύ εύκολη:
δυαδική εκδήλωση | δεκαδική τιμή |
---|---|
00000000000000000000000000000001 | 1 |
00000000000000000000000000000010 | 2 |
00000000000000000000000000000100 | 4 |
00000000000000000000000000001000 | 8 |
00000000000000000000000000010000 | 16 |
00000000000000000000000000100000 | 32 |
00000000000000000000000001000000 | 64 |
Περισσότερες θέσεις αποκαλύπτουν το μοτίβο του δυαδικού:
δυαδική εκδήλωση | δεκαδική τιμή |
---|---|
00000000000000000000000000000101 | 5 (4 + 1) |
00000000000000000000000000101000 | 40 (32 + 8) |
00000000000000000000000000101101 | 45 (32 + 8 + 4 + 1) |
Οι αρνητικές αριθμοί είναι η δυαδική αντιγραφή του θετικού αριθμού加上 1:
δυαδική εκδήλωση | δεκαδική τιμή |
---|---|
00000000000000000000000000000101 | 5 |
11111111111111111111111111111011 | -5 |
00000000000000000000000000101000 | 40 |
11111111111111111111111111011000 | -40 |
11111111111111111111111111011001 | -41 |
Μετατρέψτε το δεκαδικό σε δυαδικό
παράδειγμα
function dec2bin(dec){ return (dec >>> 0).toString(2); }
Μετατρέψτε το δυαδικό σε δεκαδικό
παράδειγμα
function bin2dec(bin){ return parseInt(bin, 2).toString(10); }
- Προηγούμενη σελίδα JS καταστροφή
- Επόμενη σελίδα JS τυπικά έκφραση