
一道C++的问题,急!
我是个菜鸟,自学C++,我现在学到“位异或”这里。有道题,是这样的:intx=6;cout<<"1位异或于x(对不起,呵呵,我不知道怎么打位异或的符号)。这道题最后结果竟...
我是个菜鸟,自学C++,我现在学到“位异或”这里。有道题,是这样的:int x=6;
cout<<"1位异或于x(对不起,呵呵,我不知道怎么打位异或的符号)。
这道题最后结果竟然是输出等于7,我想问一下,这是怎么算出来的。
顺便问一下,谁知道C++中运算符怎样从键盘里打出来,像位异或,键盘上也没有那个竖条条啊 ,怎么打出来呢,写的好的给50分!
我说错了 对不起!!!,不是^,是X按位或于1,结果等于7,我就是想不明白,怎么得出的这个结果,怎么会等于7 的?(感谢一楼兄弟给我的答案,都怪我,没说明白SORRY) 展开
cout<<"1位异或于x(对不起,呵呵,我不知道怎么打位异或的符号)。
这道题最后结果竟然是输出等于7,我想问一下,这是怎么算出来的。
顺便问一下,谁知道C++中运算符怎样从键盘里打出来,像位异或,键盘上也没有那个竖条条啊 ,怎么打出来呢,写的好的给50分!
我说错了 对不起!!!,不是^,是X按位或于1,结果等于7,我就是想不明白,怎么得出的这个结果,怎么会等于7 的?(感谢一楼兄弟给我的答案,都怪我,没说明白SORRY) 展开
3个回答
展开全部
^ 位异或(shift+主键盘区的数字键6,注意要在英文输入状态下输入)
1的二进制形式是1;6的二进制形式是110,所以有:
1 ^ 110=111
111就是十进制数字10
关于位异或的运算法则:
a和b有一个为1,另一个为0时,运算结果为1,否则,结果为0,即:
1^1=0
1^0=1
0^0=0
0^1=1
***********************
按位或操作符 | (shift+主键盘区数字键行中的斜杠,也就是退格键的前一个)
***********************
按位或的运算法则:
1|1=1
1|0=1
0|1=1
0|0=0
因此
1|110=001|110=111
所以1和6按位或的运算结果也是7
1的二进制形式是1;6的二进制形式是110,所以有:
1 ^ 110=111
111就是十进制数字10
关于位异或的运算法则:
a和b有一个为1,另一个为0时,运算结果为1,否则,结果为0,即:
1^1=0
1^0=1
0^0=0
0^1=1
***********************
按位或操作符 | (shift+主键盘区数字键行中的斜杠,也就是退格键的前一个)
***********************
按位或的运算法则:
1|1=1
1|0=1
0|1=1
0|0=0
因此
1|110=001|110=111
所以1和6按位或的运算结果也是7
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
shift + \ 打出来 | 代表 或
6的二进制是110,1的二进制是001,
110和001按位或,结果为111,即10进制的7。
6的二进制是110,1的二进制是001,
110和001按位或,结果为111,即10进制的7。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
反正你记住这些“按位”都表示的“二进制”,而“逻辑”就表示“十进制”,呵呵。祝你成功哦!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询