汇编语言OR指令:对两个操作数进行逻辑(按位)或操作

您所在的位置:网站首页 汇编语言zf=1什么意思 汇编语言OR指令:对两个操作数进行逻辑(按位)或操作

汇编语言OR指令:对两个操作数进行逻辑(按位)或操作

2023-07-01 14:45| 来源: 网络整理| 查看: 265

首页 > 编程笔记 汇编语言OR指令:对两个操作数进行逻辑(按位)或操作 OR 指令在两个操作数的对应位之间进行(按位)逻辑或(OR)操作,并将结果存放在目标操作数中:

OR destination, source

OR 指令操作数组合与 AND 指令相同:

OR reg,reg OR reg,mem OR reg, imm OR mem,reg OR mem,imm

操作数可以是 8 位、16 位、32 位和 64 位,但是两个操作数必须是同样大小。对两个操作数的每一对对应位而言,只要有一个输入位是 1,则输出位就是 1。下面的真值表展示了布尔运算 x∨y: X Y X∨Y 0 0 0 0 1 1 1 0 1 1 1 1 当需要在不影响其他位的情况下,将操作数中的 1 个位或多个位置为 1 时,OR 指令就非常有用了。比如,计算机与伺服电机相连,通过将控制字节的位 2 置 1 来启动电机。假设该控制字节存放在 AL 寄存器中,每一个位都含有重要信息,那么,下面的指令就只设置了位 2:

or AL, 00000100b ;位 2 置 1,其他位不变

如果 AL 初始化为二进制数 1110 0011,把它与 0000 0100 进行 OR 操作,其结果等于 1110 0111:

mov al,11100011b or al, 00000100b        ;AL 中的结果 =1110 0111

标志位 OR 指令总是清除进位和溢出标志位,并根据目标操作数的值来修改符号标志位、零标志位和奇偶标志位。比如,可以将一个数与它自身(或 0)进行 OR 运算,来获取该数值的某些信息:

or al,al

下表给出了零标志位和符号标志位对 AL 内容的说明: 零标志位 符号标志位 AL 中的值 清0 清0 大于0 置1 清0 等于0 清0 置1 小于0

关注公众号「站长严长生」,在手机上阅读所有教程,随时随地都能学习。内含一款搜索神器,免费下载全网书籍和视频。

微信扫码关注公众号

推荐阅读 一套完整的嵌入式开发学习路线(高薪就业版) 一套课程卖1万,TMD太贵了! 跑了3000公里,见了一位大佬 Windows下C语言程序的内存布局(内存模型) 深入底层了解Python字典和集合,一眼看穿他们的本质! SQL的基本书写规则 settings.py配置文件详解 SQL LEFT JOIN:左连接 Pandas sorting排序 Word文字对齐(对齐文字时不敲空格)


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3