2011-04-27 108 views

回答

6

這是一個左移操作。如果您有:

a << b 

其中ab都是整數類型(字符,短,長,等等),然後在a位左移b地方用零填充在右側。換句話說,a乘以2^b

實施例:

12 << 3 

12 (decimal) = 00001100 (binary) 

左移位3個地方:

00001100 becomes 01100000 

它是96(其是12 * 812 * 2^3

+1

推論:'<< 0'沒有任何效果。 – joce 2011-04-27 03:06:15

1

它意味着向左移位0x0001數字0位。在那個特定的情況下,它什麼都不做。

例如,如果是(0x0001 << 4),則0x0001將變爲0x0010。向左移動的每個位置就像數字乘以2.

+0

所以,'纈氨酸&(0×0001 << 1)'意味着將bit1向左移動並且使用Val操作? – 2011-04-27 01:12:14

+0

不,這意味着將0x0001移位一位,因此它變爲0x0002。 – 2011-04-27 01:13:45

+0

@Nano:是的,和'Val&2'一樣。 – Potatoswatter 2011-04-27 01:14:25