Cho biết kết quả trên màn hình khi chạy đoạn code sau:
int a = 34; cout << ((a >> 5) & 3) << endl;
Đáp án lựa chọn:
A. 3
B. 2
C. 0
D. 1
Giải thích:
a = 34
→ dạng nhị phân:0010 0010
a >> 5
(dịch phải 5 bit) →0000 0001
→ giá trị 11 & 3
:1
trong nhị phân:0000 0001
3
trong nhị phân:0000 0011
Kết quả
AND
:0000 0001
→ bằng1
Vậy đáp án đúng là: D. 1