虫虫联盟

 找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

查看: 831|回复: 0

汇编里的循环左移是什么意思?

[复制链接]
  • TA的每日心情
    开心
    2018-10-31 14:26
  • 签到天数: 18 天

    [LV.4]偶尔看看III

    78

    主题

    187

    帖子

    995

    积分

    高级会员

    Rank: 4

    积分
    995

    猴年

    龙龙实名认证 发表于 2015-6-22 03:08:33 | 显示全部楼层 |阅读模式
      
      循环左移就是把要移的数换成二进制,比如八位二进制数左移1位,各个数都向左移动1位,标志位CF填入你那个数的最高位(1或0),最低位补填入也是你原来那个二进数的最高位数,例如八位二进数11000100向左循环左移1位,CF=1,这个数变为10001001,很详细了吧~
      循环左移/右移指令只是移位方向不同,它们移出的位不仅要进入CF,而且还要填补空出的位。
      MOV AL,82H
      ROL AL,1
      MOV AL,82H
      ROR AL,1
      首先把82H转换成二进制数10000010B循环左移1位后变成:00000101B,换算成十六进制数便是05H
      循环右移1位后变成:01000001B,换算成十六进制数便是41H
      循环的话就好象一些人排队领东西,领完了返回队位继续排(当然一只是这几个人排);不循环就是领完就走人,空出位置来。
    您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

    本版积分规则

    QQ|手机版|小黑屋|虫虫联盟 ( 备案号:蜀ICP备15018121号-1 )

    GMT+8, 2020-5-30 01:12 , Processed in 1.161142 second(s), 43 queries .

    Powered by Discuz! X3.4 Licensed

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表