共找到2條詞條名為SHL的結果 展開

SHL

將操作數順序左移的彙編指令

SHL是一個彙編指令,作用是邏輯左移指令,將目的操作數順序左移1位或CL寄存器中指定的位數。

簡介


HL是一個彙編指令,作用是邏輯左移指令,將目的操作數順序左移1位或CL寄存器中指定的位數。左移一位時,操作數的最高位移入進位標誌位CF,最低位補零。

指令格式


或將一個二進位無符號數左移一位相當於將該數乘以2,因此可以利用左移指令完成某些常數的運算。
例如移位指令乘法指令的執行速度要快得多,但是在使用時應該注意移位后結果不應該超出該操作數的表示範圍。

特點


SHL指令將影響CF和OF兩個標誌位。如果移位次數為1,且移位后的符號位的值發生變化,則OF=1,否則OF=0.如果移位次數不為1,則OF的值不確定。

應用


將一個二進位無符號數左移一位相當於將該數乘以2,因此可以利用左移指令完成乘某些常數的運算。移位指令比乘法指令的執行速度要快得多,但是在使用時應該注意移位后結果不應該超出該操作數的表示範圍。
現在計算機中的數都是補碼錶示,shl就相當於乘二
=求和(2^i),左移就相當於冪值加一,即求和
求和
例如