Original Website

RCL - Rotate Through Carry Left

  • Usage: RCL dest,count
  • Modifies Flags: CF OF
  • Rotates the bits in the destination to the left “count” times with all data pushed out the left side re-entering on the right. The Carry Flag holds the last bit rotated out.

RCR - Rotate Through Carry Right

  • Usage: RCR dest,count
  • Modifies Flags: CF OF
  • Rotates the bits in the destination to the right “count” times with all data pushed out the right side re-entering on the left. The Carry Flag holds the last bit rotated out.

REP - Repeat String Operation

  • Usage: REP

  • Modifies Flags: None

  • Repeats execution of string instructions while CX != 0. After each string operation, CX is decremented and the Zero Flag is tested. The combination of a repeat prefix and a segment override on CPU’s before the 386 may result in errors if an interrupt occurs before CX=0. The following code shows code that is susceptible to this and how to avoid it:

  •     again:  rep movs  byte ptr ES:[DI],ES:[SI]   ; vulnerable instr.jcxz  next              ; continue if REP successfulloop  again             ; interrupt goofed countnext:
    

REPE/REPZ - Repeat Equal / Repeat Zero

  • Usage: REPE
    ​ REPZ
  • Modifies Flags: None
  • Repeats execution of string instructions while CX != 0 and the Zero Flag is set. CX is decremented and the Zero Flag tested after each string operation. The combination of a repeat prefix and a segment override on processors other than the 386 may result in errors if an interrupt occurs before CX=0. Look at example, how to avoid it.

REPNE/REPNZ - Repeat Not Equal / Repeat Not Zero

  • Usage: REPNE
    ​ REPNZ
  • Modifies Flags: None
  • Repeats execution of string instructions while CX != 0 and the Zero Flag is clear. CX is decremented and the Zero Flag tested after each string operation. The combination of a repeat prefix and a segment override on processors other than the 386 may result in errors if an interrupt occurs before CX=0.

RET/RETF - Return From Procedure

  • Usage: RET nBytes
    ​ RETF nBytes
    ​ RETN nBytes
  • Modifies Flags: None
  • Transfers control from a procedure back to the instruction address saved on the stack. “n bytes” is an optional number of bytes to release. Far returns pop the IP followed by the CS, while near returns pop only the IP register.

ROL - Rotate Left

  • Usage: ROL dest,count
  • Modifies Flags: CF OF
  • Rotates the bits in the destination to the left “count” times with all data pushed out the left side re-entering on the right. The Carry Flag will contain the value of the last bit rotated out.

ROR - Rotate Right

  • Usage: ROR dest,count
  • Modifies Flags: CF OF
  • Rotates the bits in the destination to the right “count” times with all data pushed out the right side re-entering on the left. The Carry Flag will contain the value of the last bit rotated out.

汇编语言-REP,RCR,ROR等指令相关推荐

  1. C语言逻辑左移指令shl怎么用,汇编语言SHL(左移)指令:将操作数逻辑左移一位...

    SHL(左移)指令使目的操作数逻辑左移一位,最低位用 0 填充.最高位移入进位标志位,而进位标志位中原来的数值被丢弃: 若将 1100 1111 左移 1 位,该数就变为 1001 1110: SHL ...

  2. 汇编语言笔记10-CALL和RET指令

    ☞模块化程序设计 模块化程序设计 汇编语言通过call和ret指令实现了模块化程序设计.可以实现多个相互联系.功能独立的子程序来解决一个复杂的问题. 子程序的框架 1 assume cs:code 2 ...

  3. 汇编语言rep的用法

    rep表示重复 mov edi,dword ptr[ebp+c] ;将内存地址为[ebp+c]的值赋给edi or ecx,0xFFFFFFFF ;ecx为0xFFFFFFFF xor eax,eax ...

  4. 汇编语言rep movsd 的使用

    mov esi,offset @s1 mov edi,offset @s2 mov ecx,10 cld rep movsd 1.rep movsd 每次ecx!=0便执行movsd ,然后ecx=e ...

  5. [从零学习汇编语言] - BX寄存器与loop指令

    文章目录 前言 一. Bx寄存器与[偏移地址] 二. loop指令与jmp指令 1. jmp指令 2. loop指令 三. 一些奇奇怪怪的注意点 1. 汇编源程序的数字问题 2. Debug和Masm ...

  6. 32位汇编语言学习笔记(33)--aaa指令

     aaa(ASCII adjust after addition)指令,是BCD指令集中的一个指令,用于在两个未打包的BCD值相加后,调整al和ah寄存器的内容. BCD(Binary-coded ...

  7. 汇编语言之常见的汇编指令

    1.常见汇编指令 1. 传送指令(4个):mov.push.pop.lea. 2. 转移指令(8个):call.jmp.je.jne.jb.jnb.ja.jna. 3. 运算指令(7个):add.su ...

  8. 汇编语言-012(扩展加法指令ADC、带借位减法指令SBB、执行加法后进行ASCII调整指令、AAS 、AAM、AAD 、DAA指令将和数转成压缩十进制格式)

    1:ADC : 扩展加法指令ADC .386 .model flat,stdcall.stack 4096 ExitProcess PROTO,dwExitCode:DWORD.code main P ...

  9. 用TMS320c54x汇编语言求方差,TMS320C54x的指令.pdf

    TMS320C54x的指令,我的世界指令大全,我的世界指令,我的世界圈地指令,我的世界领地指令,来自伦敦的绝密指令,我的世界地皮指令,我的世界创造模式指令,我的世界op指令,我的世界创世神指令 TMS ...

最新文章

  1. 深度学习处在大爆炸时代的边缘
  2. Linux之mount命令详解
  3. Android Service Security
  4. 05.doc_delete操作
  5. 数学--数论--(逆元)扩展欧几里求解+证明
  6. (四)Neo4j删除数据需要注意的问题
  7. (转) shiro权限框架详解04-shiro认证
  8. Java之注解的定义及使用
  9. Intellij Idea打包jar
  10. 工地小哥逆袭转行程序员的真实故事
  11. Google Chrome谷歌浏览器繁体字修改为简体字
  12. 【梦话区】如何解决QQ视频时别人听不到自己声音的问题——转
  13. OD(Ollydbg)基础常用汇编
  14. python处理视频图像_图像/视频处理选项
  15. HTML5学习系列之表单与文件
  16. Intel D435深度相机“No Frames Received!“问题
  17. oracle 行级死锁_Oracle常见死锁发生的原因以及解决方法
  18. 农业遥感技术科研成果汇总
  19. 双下巴的瘦脸运动方法 - 生活至上,美容至尚!
  20. 使用命令行登陆Mysql

热门文章

  1. 为什么说Thunderbird是最好的桌面RSS阅读器
  2. C++ STL的栈(stack)
  3. php 自带加密、解密函数
  4. 六大布局之RelativeLayout
  5. java,制作简易画图板
  6. ARM汇编指令集——数据处理指令(如何从底层直接操纵CPU)
  7. java redis geo_Redis GEO
  8. qml 组合框ComboBox
  9. JAVA初学(七):银行账户演示程序【改进版】
  10. 解决新版sonar-java插件需要配置sonar.java.binaries参数的问题