1 #第二には、ビット単位の 2 位補数ビットのための補完計算 3 2の補数オペランドがビットのために、採取される&#&とそうでない場合、両方のビットが1である場合、1が返され0 4#|または:|ビットに2ビット1がある場合、結果は0そうでなければ、1 5:^ビット#^ XOR そうでなければ、2つのビットが1と同じでない場合、 0 6。#<<左シフト:補体のためには、符号ビット0パディングを使用する権利を左方向に移動しました。各モバイル1は、*と等価である2 。7#>> 埋めるために左に右の補数、符号ビットに移動するには:右シフト。2で割った各モバイル1は、切り捨てに対応する、と等価で、そうでない場合は割り切れる 8#〜ビット単位:単項演算子、補数を取得し、符号ビットを反転さを含みます。 9 A = 0b10001 10 B = 0b01011 。11# 00001 12である 13である - C = 2 14 = D 5。 15# - 2 1010 1110補数 16# 0101 0101補数 17 #0100補数 18はプリント(C&D) 。19 20は、# - 2 1010 1110補数 21# 0101 0101補数 22は#|補体1111 1001 ---- - 1 23である |(C印刷D) 24 25 - #2 1010 1110補数 26# 0101 0101補数 27#1011補体 1101 - ---- 。5 28プリント(C ^ D) 29 30#2 31#0010 32#00100 --- 4 33プリント(2 << 1 ) 34 35 36#2 37#0000 0010 38#00 001000 --- 8 39プリント(2 < < 2 ) 40 41プリント(2 << 3)#--- 16 2 * 2 ** 3 =16 42 43プリント(15 << 3)#15 * 2 ** 3 44 45 46 47#2 >> 1 48#0010 49#0001 ---- 1枚の 50プリント(2 >> 1 ) 51 52#15 > > 1 53#0000 1111 54#0000 0111 ----- 7 15 // 2 = 7 55プリント(15 >> 1 ) 56プリント( - 15 >> 1 ) 57 58#0000 1111 59#1111 0000 ---- 10010000 --- - 16 60プリント(〜15)
16マシン#にアナログ: # - 27 -------->補数0B 1000年 0000 0001 1011 # - 27 << 。3 -----> - 27 2の補数3ビット左0B 1000年 0000 1101 1000年 ------>小数- 216 # - 27 >> 3 -----> --27右3ビット補数0B補数1000年 0000 0000 0100 ------>小数点- 。4 プリント( - 27 << 3。 ) プリント( - 27 >> 3 ) NUM = INT(INPUT(「番号を入力してください' )) #のnビット左シフト演算が同等である2 ^ nは、次いで、7 = 2 ^ 3 - 2 ^ 0 、NUMのNUMを減算することによって3ビット左に理解される NUM((プリント < < 3。 )- NUM)
乗算:すべての数は変更できる、2 ^ n倍のnビット左
除算を右nビットは、不可分に降ろさ、2 ^ nで分割されています全体