第一范文网 - 专业文章范例文档资料分享平台

汇编语言学习笔记

来源:用户分享 时间:2025/5/17 16:25:16 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

OF标志

flag的第十一位是OF,溢出标志位.一般情况下,OF记录了有符号数运算的结果是否发生了溢出.如果发生溢出,OF=1,否则 OF=0.

溢出:进行有符号数运算的时候,结果超出机器所能表示的范围

机器表示的范围:8位有符号数据,机器所能表示的范围是-128~127,而16位有符号数据,机器所能表示的范围是-32768~32767

注意CF和OF的区别:CF是对无符号数运算有意义的标志位,而OF是对有符号数运算有意义的标志位

adc指令

adc是带进位加法的指令,它利用CF位上记录的进位值. 指令格式:adc 操作对象1,操作对象2 功能:操作对象1=操作对象1+操作对象2+CF

inc和loop指令不影响CF位. sbb指令

sbb指令是带借位减法指令,它利用了CF上记录的借位值 指令格式:sbb 操作对象1,操作对象2 功能:操作对象1=操作对象1-操作对象2-CF

cmp指令

cmp是比较指令,功能相当于减法指令 指令格式:cmp 操作对象1,操作对象2

功能:计算操作对象1-操作对象2,不保存结果,只根据计算结果对标志寄存器进行设置

cmp指令的含义 cmp ah,bh

SF=1,OF=0 ;(ah)< (bh) SF=1,OF=1 ;溢出 (ah)>(bh) SF=0,OF=1 ;溢出 (ah)<(bh) SF=0,OF=0 ;(ah) ≥ (bh)

检测比较结果的条件转移指令

指令 含义 检测的相关标志位 je 等于则转移 ZF=1 jne 不等于则转移 ZF=0 jb 低于则转移 CF=1 jnb 不低于则转移 CF=0 ja 高于则转移 CF=0且ZF=0 jna 不高于则转移 CF=1或ZF=1

DF标志和串传送指令

flag的第10位是DF,方向标志位,在串处理指令中,控制每次操作后si,di的增减

DF=0,每次操作后si,di递增 DF=1,每次操作后si,di递减

传送字节串指令

格式:movsb 相当于mov es:[di], byte ptr ds:[si]

功能:将ds:si指向的内存单元中的字节送入es:di指向的单元中,然后根据DF的值,将si和di进行递增或递减

传送字串指令

格式:movsw 相当于mov es:[di], word ptr ds:[si]

功能:将ds:si指向的内存单元中的字送入es:di指向的单元中,然后根据DF的值,将si和di进行递增2或递减2 两个指令可以和rep配合使用

格式:rep movsb/movsw

相当于:s: movsb/movsw loop s

rep的作用:根据cx的值,重复执行后面的串传送 rep movsb可以循环实现(cx)个字符的传送

8086CPU提供下面两条指令对DF位进行设置 cld指令:将DF置0 std指令:将DF置1

pushf和popf

格式:pushf

功能:将标志寄存器的值压栈

格式:popf

功能:从栈中弹出栈顶数据,送入标志寄存器 上面的两条指令可以直接访问标志寄存器

标志寄存器在Debug中的表示

标志 值为1的标记 OF OV SF NG ZF ZR PF PE CF CY DF DN 值为0的标记 NV PL NZ PO NC UP

搜索更多关于: 汇编语言学习笔记 的文档
汇编语言学习笔记.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c9a0ni9v2s34n25r6n285_10.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top