農會 資訊管理類程式設計110 年第 8 題單選題
在Python中,16<<2 的結果為何?
D正確答案
左移運運算元(<<)相當於乘以2的次方,16左移2位即16乘以2的2次方(4),結果為64。
為什麼答案是 D
左移2位相當於乘以2的2次方(4),16乘以4等於64,為本題正確解答。
考點:位元AND考點:右移運算考點:右移陷阱考點:左移運算
載入中…
完整詳解
Pro · 無限重點 左移運運算元(<<)相當於乘以2的次方,16左移2位即16乘以2的2次方(4),結果為64。
秒解:左移n位就是乘以2的n次方。16 << 2 = 16 * (2^2) = 16 * 4 = 64,直介面算秒殺!
逐選項分析
A位元AND✕
0通常是位元AND(&)運算或與0進行位移的結果,與本題左移無關。
B右移運算✕
1可能是將16右移4位(16>>4)或整數除法的結果,並非左移2位的結果。
C右移陷阱✕ 陷阱
4是右移2位(>>)的結果(16除以2的2次方),考生若把左右移搞混就會錯選這項。
D左移運算✓ 正確
左移2位相當於乘以2的2次方(4),16乘以4等於64,為本題正確解答。
常見位元運運算元(Bitwise)速查
| 運運算元 | 名稱 | 運算邏輯 | 範例 |
|---|
| << | 左移 | 乘上 2^n | 16 << 2 = 64 |
| >> | 右移 | 除以 2^n | 16 >> 2 = 4 |
| & | AND | 皆為1才為1 | 5 & 3 = 1 |
| | | OR | 有1即為1 | 5 | 3 = 7 |
考生常把左移(<<)和右移(>>)方向搞混,或是忘記次方計算。請記住左移數值變大(乘法),右移數值變小(除法),選項C就是右移的陷阱!