SAR,SHR,SAL,SHL的区别

SHL(Shift Left),SAL(Shift Arithmetic Left)

逻辑左移和算术左移,运行结果是一样的,都是数据往左移动,然后在右边补零,高位进CF;

SHR (Shift Right)

逻辑右移,数据往右移动,在左边补零。如1000 0000->0010 0000(逻辑右移两位)

SAR (Shift Arithmetic Right)

算术右移,比较特殊。他的最高位一直是不变的。如1000 0000算术右移7位后就成了1111 1111.
即:就SAR最高位保持不变,其它都补1

posted @ 2024-09-16 20:45  不会笑的孩子  阅读(43)  评论(0编辑  收藏  举报