社区
新手乐园
帖子详情
0XFFFF用十制表示是多少啊?
Ferrerox
2008-01-17 03:28:04
0XFFFF是什么意思?
...全文
13507
18
打赏
收藏
0XFFFF用十制表示是多少啊?
0XFFFF是什么意思?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
haozi8088
2012-05-03
打赏
举报
回复
一楼正确
member
2010-06-15
打赏
举报
回复
补充一点,有符号整数,会存储补码,也是说按补码运算。
所以0xffff在有符号整数中表示-1。
比如:0x8001二进制展开会是 1000000000000001(-1)。在计算中,由于知道这是一个数的补码,于是求补码运算得出源码 0xffff.
0x80001 + 1 = -32766(d).
总之0xffff在运算(输出也作为运算)中会是-1.至于对这个数求补码的是谁,或许是编译器生成二进制码时,或许是在CPU中,这个没考证过(也或许忘记了)。有空查资料。
member
2010-06-15
打赏
举报
回复
1
有符号整数
这是-32767 1111111111111111(原) > 1000000000000000(反)> 1000000000000001(补=反+1)
也是-1的补码 1000000000000001(原) > 1111111111111110(反) > 1111111111111111(补=反+1)
负整数的求补码运算:除符号位外其余各位皆取反(这是反码),反码 + 1即为补码。
负整数的补码和源码可以通过求补码运算互相求出(对于这一点表达不太好,你可以看到上面的关系)。
对于 -0(这也是引入补码的原因,在正整数的减法运算中会转换为正整数和负整数的加法运算,于是有了问题,于是用反码运算,于是又有+0和-0的问题,于是用补码,对结果求补码运算既得真的结果)。
再来说 -0, -0的补码会溢出16位,在大于16的位的有符号整数中,这个数是-32768,而-32768的补码又是 -0(从刚才的补码和源码之间的关系可以看出这一点)。于是-32768也在16位有符号整数的表示范围内,
这里“于是”省略了一些东西,要想着在计算中怎么怎么样,对结果怎样存储等等,或者说这一种规定。(8位的-128, 16位的-27368,这里面有规律的,无论几位有符号整数-0的补码总会溢出)。
对于补码和源码的关系的描述,“互相求出”不好,可以说一个数的补码的补码即为这个数的源码。
正整数的反码、补码和源码相同。
----
对于无符号整数
表示:65535
------
鄙视一下楼上那些五花八门的回答,回答问题要严谨。
楼主是问这个数表示什么,你们又是补码又是反码的。
mydreamkeeper
2009-08-11
打赏
举报
回复
更清楚了!谢谢!
horsemz
2008-11-12
打赏
举报
回复
学习了 哈哈哈 会拉
abai977
2008-07-01
打赏
举报
回复
去华为面试问过这样的题,同意一楼的意见!
hlyang
2008-01-17
打赏
举报
回复
顶3楼
7楼,32位系统中 应该是这样的吧
-1 应该是这样的吧:
0000 0000 0000 0000 0000 0000 0000 0001 -> 1111 1111 1111 1111 1111 1111 1111 1110 -> 1111 1111 1111 1111 1111 1111 1111 1111 -> 0xFFFFFFFF
huangzhtao
2008-01-17
打赏
举报
回复
学《计算机科学导论》时学过,同意LS。
Ferrerox
2008-01-17
打赏
举报
回复
int a=0xFFFF;
0xFFFF是补码,换算成:1111 1111 1111 1111
由于a的数据类型是signed int,所以第一位是符号位
由于第一位是1,可以知a是负数
补码换算成原码:1111 1111 1111 1111 取反加一得到0000 0000 0000 0001
原码加-号,所以a=-1
btc2005
2008-01-17
打赏
举报
回复
同意一楼
visame
2008-01-17
打赏
举报
回复
看来我的计算机基础知识很不扎实
特别是对补码什么的
degmd
2008-01-17
打赏
举报
回复
1楼朋友正解
32位系统中
-1在计算机中表示是 1的二进制,各位求反,末位加1即:
0000 0000 0000 0001 -> 1111 1111 1111 1110 -> 1111 1111 1111 1111 -> 0xFFFF
wawlian
2008-01-17
打赏
举报
回复
0x表示十六进制,0表示八进制,十进制另外就不用符号了。十六进制中0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F分别表示从0——15,接下来你自己算吧。
void_Vinscent
2008-01-17
打赏
举报
回复
0-9 a-f 共16个.
void_Vinscent
2008-01-17
打赏
举报
回复
0x 后面加数字表示这个数字是16进制的.
你自己算吧...小学2年级估计都要会算了吧现在.
一般用计算器算.附件里.
changestyle
2008-01-17
打赏
举报
回复
看是几位系统了
16位系统 int型就是 -1
32为系统 int型就是 65535
jiayodo
2008-01-17
打赏
举报
回复
65535
Treazy
2008-01-17
打赏
举报
回复
0xFFFF
如果是int,则表示-1
如果是unsigned int,则表示65535
STM32F103--CRL,CRH寄存器
制作智能管家 在使用DHT11时遇到的问题 //IO方向设置 #define DHT11_IO_IN() {GPIOG->CRH&=
0XFFFF
0FFF;GPIOG->CRH|=8<<12;} #define DHT11_IO_OUT() {GPIOG->CRH&=
0XFFFF
0FFF;GPIOG->CRH|=3<<12;} 不了解 {GPIOG->CRH&=
0XFFFF
0FFF;GPIOG->CRH|=8<<
详解 & 0xFF 的作用
每次遇到与或位移等运算总会懵圈一次,百度明白了之后就忘了,理解不够深刻,不够明确,工作中也很少写,所以记下 为什么要加上“& 0xFF”? 拆分理解下 0xFF是16进制的表达方式,F是15;十进制为:255,二进制为:1111 1111 &运算符:如果2个bit都是1,则得1,否则得0 然后开始百度…… 最后一路百度到计算机的原理之:原码、补码和反码,先简单讲下这三个词的意思吧! 我们已经知道计算机中,所有数据最终都是使用二进制数表达。 我们也已经学会如何将一个10进..
c语言中合法整型常量负号,C语言中整型常量的
表示
方法
C语言中整型常量的
表示
方法整形常量就是整常数,在c语言中,使用的整常数有八进制,十进制和十六进制三种1)十进制常数:十进制常数没有前缀,其数码为0~9。以下各数是合法的十进制整常数:237、-568、65535、1627;以下各数不是合法的十进制整023 (不能有前导0)、23D (含有非十进在程序中是根据前缀来区分各种进制数的。因此在书写常数时不要把前缀弄错造成 结果不正确。2)八进制整常数:八...
彻底搞懂:java中的char能
表示
中文吗?
Basic Multilingual Plane 基本多语言平面。它的码点范围是即0x0000-
0xFFFF
,包含了世界上最常用的字符。
C语言整型常量的
表示
方法
常数的后缀:在16位字长的机器上,基本整型的长度也为16位,因此
表示
的 数的范围也是有限定的。0X15L (十进制为21),0xA5L(十进制为165),0x10000L(十进制为65536)。2)八进制整常数:八进制整常数必须以0开头,既以0作为八进制的数的前缀,数码取 值为0~7。以下各数是合法的八进制数: 015(十进制为13)、0101(十进制为65) 0177777(十进制为65535);0X2A(十进制为42)、0XA0 (十进制为160)
0xFFFF
(十进制为65535);
新手乐园
33,311
社区成员
41,784
社区内容
发帖
与我相关
我的任务
新手乐园
C/C++ 新手乐园
复制链接
扫一扫
分享
社区描述
C/C++ 新手乐园
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章