Junior
Πώς μπορούμε να ορίσουμε ένα bit σε 1 χρησιμοποιώντας την bitwise OR;
sobes.tech AI
Απάντηση από AI
Για να ορίσετε ένα συγκεκριμένο bit σε έναν αριθμό σε 1 χρησιμοποιώντας την λογική πράξη OR σε επίπεδο bit, πρέπει να χρησιμοποιήσετε μια μάσκα που έχει 1 στη θέση που θέλετε και 0 στα άλλα.
Για παράδειγμα, για να ορίσετε το bit με αριθμό n (αρίθμηση από το 0, ξεκινώντας από το λιγότερο σημαντικό bit), κάντε το εξής:
int setBit(int num, int n) {
return num | (1 << n);
}
Εδώ, το 1 << n μετακινεί το 1 στη θέση n, και η πράξη | ορίζει αυτό το bit σε 1 στον αριθμό num, χωρίς να αλλάξει τα άλλα bits.
Παράδειγμα:
int x = 4; // 0100 σε δυαδική μορφή
int y = setBit(x, 1); // ορίζουμε το bit 1
// y θα είναι 6 (0110)