汇编语言 XOR 指令

本文详细介绍了XOR指令在计算机编程中的工作原理,包括位逻辑操作和奇偶校验的应用。通过实例演示了如何使用XOR进行数据运算,并探讨了它对标志位的影响。同时,展示了如何利用XOR检查和修改二进制数的奇偶性。
摘要由CSDN通过智能技术生成

XOR指令在两个操作数的对应位之间进行(按位)逻辑异或(XOR)操作,并将结果存在目标操作数中

XOR destination,source

XOR指令操作数组合和大小于AND指令以及OR指令相同。两个操作数的每一对对应位都应用如下操作原则:如果两个位值相同(同为0或同为1),则结果位等于0;否则结果位等于1。下标描述的是布尔运算xy:

y

x

x⊕y

000
011
101
110

        与0异或值不变,与1异或则被触发(求补)。对相同操作数进行两次XOR运算,则结果逆转为其本身。如下表所示,位X与位Y进行了两次异或,结果逆转位X的初始值:

x

y

x⊕y

(x⊕y)⊕y

0000
0110
1011
1101

标志位

        XOR运算符总是清除溢出和进位标志位,并根据目标操作数的值来修改符号标志位、零标志位和奇偶标志位。

检查奇偶标志

        奇偶检查是在一个二进制数上实现的功能,计算该数中1的个数;如果计算结果为偶数,则说该数是偶校验;如果结果为奇数,则该数为奇校验。x86处理器中,当按位操作或算术操作的目标操作数最低字节为偶校验时,奇偶标志位清0.一个既能检察数的奇偶性,又不会修改其数值的有效方法是,将该数与0进行异或运算:

mov al,10110101b ;5个1,奇校验
xor al,0 ;奇偶标志位清0(奇)
mov al,11001100b;4个1,偶校验
xor al,0; 奇偶标志位置1 (偶)

Visual Studio 用PE=1表示偶校验,PE=0表示偶校验。 

  • 7
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值