zoukankan      html  css  js  c++  java
  • 汇编 REPNE/REPNZ指令,SCASW指令,SCASD指令,SCAS指令

    知识点:
    REPNE/REPNZ   指令
    SCASW    指令
    SCASD    指令
    SCAS     指令
     
    
    一、SCASW   指令
         //SCASB
        cmp word ptr [edi],al  //对标志位的影响相当于sub指令
        //同时还会修改寄存器EDI的值:如果标志DF为0,则 inc EDI;如果DF为1,则 dec EDI。
    二、SCASD   指令
        SCAS  BYTE  PTR ES:[EDI] // 当ECX!=0并且ZF==0时 重复执行后边的指令 每执行一次EDI的值加  1
        SCAS  WORD PTR ES:[EDI] // 当ECX!=0并且ZF==0时 重复执行后边的指令  每执行一次EDI的值加  2
        SCAS  DWORD PTR ES:[EDI] // 当ECX!=0并且ZF==0时 重复执行后边的指令 每执行一次EDI的值加 4
    
        REPNE SCAS BYTE   PTR ES:[EDI] // 当ECX!=0并且ZF==0时 重复执行后边的指令 每执行一次ECX的值减1
        REPNE SCAS WORD  PTR ES:[EDI] // 当ECX!=0并且ZF==0时 重复执行后边的指令 每执行一次ECX的值减1
        REPNE SCAS DWORD PTR ES:[EDI] // 当ECX!=0并且ZF==0时 重复执行后边的指令 每执行一次ECX的值减1
    
        REPNE 和REPNZ 是同一条指令的不同助记符
    三、实例运用
       1、查找DWORD数据
       在"sabcdef12345678" 定位"f123"
    
    小结:REPNZ/REPNE与CMPS指令结合使用,表示当串未结束(CX=1)且当对应串元素不相同(ZF=0)时,继续重复执行串比较指令.
    
  • 相关阅读:
    10 款最佳剪贴板管理器
    悉数美剧《黑客军团》中的黑客工具
    Vim的使用方法
    Mysql跨平台(Windows,Linux,Mac)使用与安装
    Linux下网络故障诊断
    RHEL6.2下挂载光驱安装软件
    MySQL数据库服务器的架设
    Unix如何轻松快速复制
    【Linux基础】Linux常用命令汇总
    博客编号数字密码
  • 原文地址:https://www.cnblogs.com/whzym111/p/6373013.html
Copyright © 2011-2022 走看看