您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 新手上路 -> bf533 数据类型范围
本帖共有514个阅读者
发表帖子 发表投票 回复主题
bf533 数据类型范围
love(论坛新手)
love
头衔:社区公民
帮派:无帮无派
帖数:19
金钱:282
积分:30
注册时间:2012/12/17
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
bf533 数据类型范围
我调试图像数据中出现一个小问题,从数据手册上来看 bf533中 signed int 应该是4个字节,其中一位是作为符号位,亦即 取值范围为 正2的31次方 到 负2的31次方,2的31次方为 2147483648,但是定义一个signed int值,给其赋值超过 2147483648 也是OK的,只要不超过2的32次方亦即 4294967296,都是正常显示,这里面符号位难道不起作用吗?

这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2013/5/12 16:37:15
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
当超过2的31次方,你的值系统认为是负值,当然可以正常显示。你可以用下面语句判断:

signed int  count = 0x faaaaaaa;

if(count >1 )
{
.....
}
else
{
......
}
你看一下进哪个条件语句中。


这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2013/5/12 23:09:52
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.159252 Call, 1 Queries, Processed in 0.015625 second(s),