| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1011 人关注过本帖
标题:麻烦了,这道题怎么解?
只看楼主 加入收藏
维ddrsun
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2010-10-5
结帖率:81.25%
收藏
已结贴  问题点数:2 回复次数:14 
麻烦了,这道题怎么解?
#include "stdio.h"
void main()
{
   int a=-5;  
   a=a|0337;//a=1101,0337=01111111,按位异或后a=01111111=八:377??
       printf("%df,%o\n",a,a);

}
   我这样做对吗?
但运行后,a的八制怎么有很多7?知二进制转八进制
a为什么整形时就等于-1了?
请指点
搜索更多相关主题的帖子: 二进制 八进制 
2011-01-08 14:52
aaronhexin
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:67
专家分:199
注 册:2010-12-6
收藏
得分:1 
首先int a = -5在机器中的存储形式是补码
1111 1111 1111 1111 1111 1111 1111 1011
八进制0377的存储形式为
0000 0000 0000 0000 0000 0000 1101 1111
"|"操作符是进行按位或运算,上面两个数或运算后,正好变为:
1111 1111 1111 1111 1111 1111 1111 1111
是-1的存储形式,八进制为37777777777
"^"这个才为异或运算
2011-01-08 16:53
li_danwang
Rank: 4
来 自:鄂州
等 级:业余侠客
帖 子:112
专家分:203
注 册:2010-11-12
收藏
得分:0 
楼上讲的很透彻

没事来C一下...   
2011-01-08 17:38
点线面
Rank: 8Rank: 8
来 自:NO.-1
等 级:蝙蝠侠
帖 子:525
专家分:980
注 册:2011-1-3
收藏
得分:1 
LZ要恶补负数怎样表示
负数与正数都是以补码表示
正数的补码就是它本身,负数的补码就是反码+1
例如 -1如何表示
0...0000 0001
反码 1...1111 1110 取反
补码=反码+1 1..1111 1110+1= 1..1111 1111这个为补码

小代码,大智慧
2011-01-08 17:57
维ddrsun
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2010-10-5
收藏
得分:0 
回复 2楼 aaronhexin
为什么是用32位的二进制来一起计算?
找不到这个原因,能再说一下吗,

never give up!!
2011-01-08 22:56
维ddrsun
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2010-10-5
收藏
得分:0 
回复 4楼 点线面
为什么是用32位的二进制来一起计算?
找不到这个原因,能再说一下吗,

never give up!!
2011-01-08 22:56
维ddrsun
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2010-10-5
收藏
得分:0 
回复 4楼 点线面
跟系统有关??

never give up!!
2011-01-08 22:56
点线面
Rank: 8Rank: 8
来 自:NO.-1
等 级:蝙蝠侠
帖 子:525
专家分:980
注 册:2011-1-3
收藏
得分:0 
建意LZ先学习计算机基础,专门有地方介绍负数与正数如何表示,这些同数学有关,用加法表示减法,所以一般来说最高位如果是1都表示负数。

小代码,大智慧
2011-01-08 23:23
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
机器是32位的,所以它就用32位算。
2011-01-09 02:30
aaronhexin
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:67
专家分:199
注 册:2010-12-6
收藏
得分:0 
int类型在机器中的存储为16位或32位,编译器根据硬件特性选择合适的长度。
2011-01-09 05:10
快速回复:麻烦了,这道题怎么解?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016164 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved