彙編 shl和shr指令的使用
shl和shr是邏輯移位指令。
shl是邏輯左移指令,它的功能為:
(1)將一個暫存器或記憶體單元中的資料向左移位;
(2)將最後移出的一位寫入CF中;
(3)最低位用0補充。
指令:
mov al,01001000b
shl al,1 ;將al中資料左移一位
執行後(al)=10010000b,CF=0。
注意:
如果移動位數大於1時,必須將移動位數放在cl中。
比如,指令:
mov al,01010001b
mov cl,3
shl al,cl
執行後(al)=10001000b,因為最後移出的一位是0,所以CF=0。
shr是邏輯右移指令,它和shl所進行的操作剛好相反。