首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >非二元基异或函数的真值表

非二元基异或函数的真值表
EN

Stack Overflow用户
提问于 2017-03-04 23:27:29
回答 2查看 3.6K关注 0票数 5

我知道两个位A和B的基2中的异或操作符是(A+B)%2,换句话说,它是加法模2。

如果我想计算三元系统(基3)中异或运算的真值表,它与加法模3相同吗?在基3系统中,2 XOR 2=1(自(2+2)%3 = 1)吗?

我读过这个链接,它指出在一个基本的3系统中,2XOR 2是2,而我不能理解它背后的公式?

一般来说,对于任何一个基' x ',这个基加法模x的异或运算是吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-05 00:18:09

XOR代表eX包含,这是一个逻辑操作。此操作仅在二进制逻辑中定义。在链接中,作者定义了完全不同的操作符,其工作方式与二进制基的XOR相同。您可以称它为大于2的XOR操作的“扩展”。但是正如您在问题中提到的,有多种方法可以实现这个扩展。每一种方法都会保留“原始”异或的一些属性,并使其他一些属性变得松散。例如,你可以坚持观察

Ab= (a + b)⊕mod2

在这种情况下,基3的“扩展异或”将为输入2、2产生1的输出。但是这个XOR3将不再满足其他适用于标准异或的方程,例如:

A⊕b⊕b=a

A⊕b⊕a=b

如果您选择“保存”这些,您将从您的链接得到操作。您还可以保留异或的一些不同属性,例如

A⊕a=0

再做一次和前两次不同的手术。

所以简单的回答是:短语“非二进制基的异或函数”没有任何意义。XOR运算符仅在二进制逻辑中定义。如果您想将其扩展到非二进制基、非整数数或复数或其他任何东西,您可以使用任何行为和任何“真值表”定义扩展函数。但是这个扩展不再是XOR函数了。

票数 2
EN

Stack Overflow用户

发布于 2019-09-11 13:18:54

虽然我不知道技术上是否在较高的基数中定义了XOR,但可以将XOR的属性保持在较高的基中,以便:

A⊕b⊕b=a

A⊕b⊕a=b

正如博客文章所示,使用(base - (a + b) % base) % base是可行的。您缺少的部分是base的第一个实例。在3基的2⊕2的例子中,我们得到了给出2的⊕公式,这个公式只适用于单数数。如果您想要扩展到多个数字,您将对每一对数字使用相同的公式,就像二进制中的标准XOR按位表示一样。

例如,每一对数字(即百位、十位、一位)运行时,基数为10的185个⊕42给出了如下结果:

(10 - (1 + 0) % 10) % 10 => 9

(10 - (8 + 4) % 10) % 10 => 8

(10 - (5 + 2) % 10) % 10 => 3

或983当放在一起。如果你运行983⊕145,你会发现它达到了85。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42602572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档