pascal语言中xor是 什么意思、

我已经明白要先转化成二进制、比如、23or2xor5、23=10111、2=10、5=101、然后要判断对应数字相同或者不同、相同为假(0)、不同为真(1)、但是是从左到... 我已经明白要先转化成二进制、比如、23 or 2 xor 5、23=10111、2=10、5=101、然后要判断对应数字相同或者不同、相同为假(0)、不同为真(1)、但是是从左到右还是从右到左啊、而且是什么顺序呢、or有什么作用呢、请说明并以这题为例题、写出解答过程、谢谢! 展开
 我来答
liqi3075123
2011-08-13 · TA获得超过507个赞
知道小有建树答主
回答量:206
采纳率:0%
帮助的人:218万
展开全部
xor异或运算的本质实际上就是2进制的不进位加法,运算顺序遵循数学法则,如果没括号,显然是从左往右算,比如23 or 2 xor 5,先算23 or 2 ,再算ans xor 5,再说一下如何计算:
23 or 2:转化成2进制,就是10111 or 10,竖式计算,右对齐,空缺处补0,即:
or 运算:有一个为真,即为真,其他为假。1 or 1=1,0 or 1=1,1 or 0=0,0 or 0=0。
10111
or 00010
--------------
10111 所以结果为10111,即23;
xor运算:两者相同即为假,不同即为真,不理解的话,就当是做2进制不进位加法;
10111
xor 00101
---------------
10010 所以结果为10010,即18。
更多追问追答
追问
10111
or 00010
--------------
10111
有一个为真,即为真,其他为假。1 or 1=1,0 or 1=1,1 or 0=0,0 or 0=0。我觉得这个有点不对劲、从来没有看到过、这个依据是什么呢、‘有一个为真,即为真,其他为假’貌似不符啊、
追答
1 or 0=1,不小心打错了,类似的运算有四个:and ,or,not,xor;
and运算,一个为假,即为假,其他为真:1 and 1=1, 1 and 0=0, 0 and 1=0, 0 and 0=0。
or运算,有一个为真,即为真,其他为假。1 or 1=1, 1 or 0=1,0 or 1=1,0 or 0=0。
not运算,即取反,not 1=0,not 0=1。
xor运算,两者相同即为假,不同即为真。1 xor 1=0,1 xor 0=1,0 xor 1=1,0 xor 0=0。
就是这些了,竖式计算,上下对应,1为真,0为假,不懂继续问。
意法半导体(中国)投资有限公司
2023-06-12 广告
单片机,即单片微控制器,也称为单片微型计算机,是将中央处理器(CPU)、存储器(ROM,RAM)、输入/输出接口和其他功能部件集成在一块 在一个小块的集成电路上,从而实现对整个电路或系统的数字式控制。单片机不是完成某一个逻辑功能的芯片,而是... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
3996888
2011-08-13
知道答主
回答量:1
采纳率:0%
帮助的人:1724
展开全部
or,and,xor是位运算的操作符
xor乃是异或操作
=== 1. and运算 ===
and运算通常用于二进制取位操作,例如一个数 and 1的结果就是取二进制的最末位。这可以用来判断一个整数的奇偶,二进制的最末位为0表示该数为偶数,最末位为1表示该数为奇数.

=== 2. or运算 ===
or运算通常用于二进制特定位上的无条件赋值,例如一个数or 1的结果就是把二进制最末位强行变成1。如果需要把二进制最末位变成0,对这个数or 1之后再减一就可以了,其实际意义就是把这个数强行变成最接近的偶数。

=== 3. xor运算 ===
xor运算通常用于对二进制的特定一位进行取反操作,因为异或可以这样定义:0和1异或0都不变,异或1则取反。

程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算说穿了,就是直接对整数在内存中的二进制位进行操作。比如,and运算本来是一个逻辑运算符,但整数与整数之间也可以进行and运算。举个例子,6的二进制是110,11的二进制是1011,那么6 and 11的结果就是2,它是二进制对应位进行逻辑运算的结果(0表示False,1表示True,空位都当0处理):
110
AND 1011
----------
0010 --> 2

对于21 xor 2,先换成2进制
21:10101
2:10
21 xor 2既
10101
xor 10
10111=23

23 or 2 xor5
10111
or 10
10111
10111
xor101
10010=18
追问
不要给我看这个、我自己在网上也能找到、我要的是讲解、自己的讲解!
23 or 2 xor5
10111
or 10
10111
10111
xor101
10010=18
这个东西我看过又不知道是什么意思、你能自己给我讲讲吗、
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
仉跃寸优乐
2019-10-29 · TA获得超过1110个赞
知道小有建树答主
回答量:1807
采纳率:100%
帮助的人:13.1万
展开全部
PASCAL中,XOR
就是异或意思。这是一种位运算。
运算的数要把它们先转换成二进制,如果2个数的同一位相同结果就为0,不同则为1。
比如:21
二进制码:
0001
0101
3
二进制码:
0000
0011
(21
xor
3)的值就是
0001
0110
=
22。
PASCAL中,XOR
就是异或意思。这是一种位运算。
运算的数要把它们先转换成二进制,如果2个数的同一位相同结果就为0,不同则为1。
比如:21
二进制码:
0001
0101
3
二进制码:
0000
0011
(21
xor
3)的值就是
0001
0110
=
22。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
枝煦御依美
2019-02-18 · TA获得超过1186个赞
知道小有建树答主
回答量:1826
采纳率:100%
帮助的人:10.2万
展开全部
PASCAL里面的XOR是位计算,按位
异或

不是条件判断语句。
PASCAL的条件判断语句很简单,and
or
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式