【发布时间】:2014-04-07 04:41:31
【问题描述】:
我在试图找到一个函数来查看某个位时遇到了麻烦。例如,如果我有一个二进制数 1111 1111 1111 1011,我只想查看最高有效位(一直到左侧的位,在本例中为 1)我可以使用什么函数来查看在那一点?
程序是测试一个二进制数是正数还是负数。我从使用十六进制数 0x0005 开始,然后使用二进制补码函数使其为负数。但是现在,我需要一种方法来检查第一位是 1 还是 0,并从中返回一个值。整数 n 将等于 1 或 0,具体取决于它是负数还是正数。我的代码如下:
#include <msp430.h>
signed long x=0x0005;
int y,i,n;
void main(void)
{
y=~x;
i=y+1;
}
【问题讨论】:
标签: binary