逻辑左移与右移的操作指令
发表:2023-08-29 12:00:36 阅读:107

1)逻辑左移

LSL Rd 0≤d≤31

操作:C←b7b5b5b4b3b2b1 b0←0,PC←PC+1

机器码:0000 11dd dddd dddd ,周期:1

说明:寄存器Rd中所有位左移1位,第0位被清零,第7位移到SREG中的C标志位。该指令完成一个无符号数乘2的操作。

对状态标志位的影响:

逻辑左移与右移操作指令

2)逻辑右移

LSR Rd 0≤d≤31

操作:0→b7b6b5b4b3b2b1 b0→C,PC←PC+1

机器码:1001 010d dddd 0110,周期:1

说明:寄存器Rd中所有位右移1位,第7位被清零,第0位移到SREG中的C标志。该指令完成一个无符号数除2的操作,C标志被用于结果舍入。

对状态标志位的影响:

逻辑左移与右移操作指令

 

推荐您阅读:

使用地址指针寄存器Z间接将SRAM中内容送到寄存器

使用地址指针寄存器Z间接将寄存器内容送到SRAM

从程序存储器中取数装入指定寄存器与R0

从程序存储器中取数装入指定寄存器