移位寄存器指令包括sftr(位右移)、sftl(位左移)、wsfr(字右移)、wsfl(字左移)、sfwr(移位寫入)、sfrd(移位讀出)。這里主要介紹sftr(位右移)、sftl(位左移)指令。
sftr(位右移)指令,其指令代碼為fnc34,sftl(位左移)指令,其指令代碼為fnc35,它們的源操作數(shù)和目標操作數(shù)均為x、y、m、s,操作元件n1指定目標操作元件[d·]的長度,操作元件n2指定移位位數(shù)和源操作元件[s·]的長度。n2≤n1≤1024,其功能是對于n1位(移動寄存器的長度)的位元件進行n2位的右移或左移。指令執(zhí)行的是n2位的移位。在圖14-1中,當x11由off變?yōu)閛n時,執(zhí)行如圖14-2所示的右移過程。在圖14-3中,當x12由off變?yōu)閛n時,執(zhí)行如圖14-4所示的左移過程。