当前位置:首页 > 本地资讯 > 正文内容

上证早知道xbit(abit什么意思)

aifabu3年前 (2021-05-28)本地资讯4
2021年4月28日发(作者:华夏大盘精选混合华夏大盘精选混合)

C语言编程常见问题解答之位(bit)和字节(byte) 国泰金马稳健





padding-top:> 位指的是二进制系统中的一位,它是最小的信息单位。位的用处可以从两方面去分析:第一,计算机对位的值可以有任意多种解释,例如表示"yes’’或"no”,或者表示磁盘是否已插入驱动器,或者表示某个鼠标键是否被按下;第二,将若干位的值连接起来后,就可以表示更复杂的数据,而且每|股票600279增加一位,可以表示的可能的值的数目就会增加一倍。

换句话说,一位可以表示两种可能的值,即“O”和“1”;两位可以表示2×2或4种可能的值,即“00”,“01”,“10”和“11”;类似地,三位可以表示2×2×2或8种可能的美国迅驰值……。对计算机来说,位的这种特性既是最有力的支持——因为很复杂的数据(例如本书内容)可以被分解为位的表示后存储起来,又是最大的限制——因为在现实生活中许多事物的值是不精确的,这样的值无法用数目有限的若干位来表示。

程序员始终必须清楚每一项数据需要用多少位来表示。因为位作为单位太小,所以为了方便起见,大多数计算机所处理的信息单位是被称为字节的位块。字节是大多数计算机中最小的可寻址的信息单位,这意味着计算机给每一个字节的信息都赋予一个地址,并且一次只能存取一个字节的信息。一个字节中的位的数目可以是任意的,并且在不同的计算机中可以不同。最常见的情况是每个字节中有8位,即可以存放256个不同的值。8位这样的长度非常适合于存放表示ASCII(the American Standard Code for Information Interchange)字符的数据。

下述程序可以显示空格符以后的ASCII字符和PC机的图形字符集:

# include

void main (void);

void main()

{

/" Display ASCII 怡亚通股票 char set " /

unsigned char space=''

int test_nbr=10;

printf("Starting character=%c
" , ascii_char);

/" The 5th bit position determines if the character is

uppercase or lowercase.

5th bit=0 - Uppercase

5th bit=1- Lowercase * /

printf ("
Turn 博时新兴成长股票 5th bit on=%c
" , SET_FLAG(ascii_char, BIT_POS(5)));

printf ("Turn 5th bit off=%c

",CLR_FLAG(ascii_char, BIT_POS(5)));

printf ("Look at shifting bits
");

printf ("================
" );

printf ("Current value=%d
" , test_nbr)i

printf ("Shifting one position left=%d
" ,

test_nbr=BIT_SHIFTL(test_nbr, 1) );

printf ("Shifting two positions right=%d
" ,

BIT_SHIFTR(test_nbr, 2) );

}

宏BIT_POS(N)能返回一个和N指定的位对应的屏蔽字(例如BIT_POS(O)和BIT_POS(1)代开股指分别返回最低位和倒数第二位的屏蔽字),因此你可以用

#define A_FLAG BIT_POS(12)

#define A_FLAG BIT_P0S(13)

代替

#define A_FLAG 4096

#define A_FLAG 8192

这样可以降低出错的可能性。

宏SET_FLAG(N,F)能置位变量N中由值F指定的位,而宏CLR_FLAG(N,F)则刚好相反,它能清除变量N中由值F指定的位。宏TST_FLAG(N,F)可用来测试变量N中由值F指定的位,例如:

if (TST_FLAG (flags, 洪城水业股吧 A_FLAG))



代替

#define FIRST_OCTAL_DIGIT 7

#define SECOND_OCTAL_DIGIT 56





# define C-RED ?BIT_SHIFTL(1,8) ?

# define C-GREEN ?BIT_SHIFTL(2,8)?

# 洪都航空股票 define C-BLUE BIT-SHIFTL(3,8)

# define C_WHITE BIT-SHIFTL(4,8)



# defineC-ZERO?C-BLACK

# defineC-LARGEST?C-WHITE



?

#if C_LARGEST > C_FLAG

Cause an error message. The flag C_FLAG is not

big enough to hold all its possible 601015股票values.

#endif

宏SET_MFLAG(N,F,V)先清除变量N中由值F指定的位,然后置位变量N中由值V指定的位。宏CLR_MFLAG(N,F)的作用和CLR_FLAG(N,F)是相同的,只不过换了名称,从而使处理多位标志的宏名字风格保持一致。宏GET_MFLAG(N,F)能提取变量N中标志F的值,因此可用来测试该值,例如:

if (GET_MFLAG(flags, C_FLAG)==C_BLUE)

;

注意:宏BIT_RANGE()和SET_MFLAG()对参数N都引用了两次,因此语句

SET_MFLAG(*x++,C_FLAG,C_RED);

的行为是没有定义的,并且很可能会导致灾难性的后果。 请参见:

10.1 用什么方法存储标志(flag)效率最高?

10.3 位域(bit fields)是可移植的吗? 10.3位域(bit fields)是可移植的吗?

位域是不可移植的。因为位域不能跨越机器字,而且不同计算机中的机器字长也不同,所以一个使用了位域的程序在另一种计算机上很可能无法编译。

假设300241股票 你的程序能在另一种计算机上编译,将位分配给位域时所遵循的顺序仍然是没有定义的。因此,不同的编译程序,甚至同一编译程序的不同版本所产生的代码,很可能无法在由原来的编译程序所生成的数据上工作。通常应该避免使用位域,除非计算机能直接寻址内存中的位并且编译程序产生的代码能利用这种功能,并且由此而提高的速度对程序的性能是至关|湖南禽流感重要的。



请参见:

10.1 用什么方法存储标志(flag)效率最高?

10.2 什么是“位屏蔽(bit masking)”?



10.4 600362股票 移位和乘以2这两种方式中哪一种更好?

不管你采用哪种方式,任何合格的优化编译程序都会产生相同的代码,因此你可以采用使

程序的上下文更易读的那种方式。你可以用DOS/Windows上的CODEVIEW或UNIX机上

的反汇编程序(通常被称为"dis”)这样的工具来查看下述程序的汇编代码:

例10.4乘以2和左移一位经常是相同的

void main()

{

unsigned int test_nbr=300;

test_nbr *=2;

test_nbr=300;


是低位优先顺序。和存储16位的数一样,大多数计算机按高位优先顺序存储32位的数,但基于Intel CPU的计算机按低位优先顺序存储32位的数。


“这是全世界最强大的坦克!”巴克尔说道:“我们坦克兵最喜欢在这种坦克内作战!它能保护好我们的安全!” “那我们用现在的系统,不是也做到了吗?”刘大军说道:“哪怕是有了先进的系统,我们用严格的训练,照样能达到。” 他们对东方大国的机构部门,也是有所了解的,汽车,应该算是交通运输部门管理的范畴,而一机厂,属于军工单位,这是两个不相干的部门,但是,如果他们要造军用重卡的话,那就能联系起来了。 自动变速箱是实现方向盘驾驶的前提,只有实现了方向盘操作,才能大大地降低驾驶员的劳动强度,在国外,德国人在二战的时候,就已经实现了,国内却到现在,依旧没有发展成熟起来。 一机厂,家大业大,要干的事情也很多。 “小王啊,你说的不错,咱们这里成立之后,你也得多费心了。”沈希文说道。

相关文章

香雪制药股吧期货跨市场套利(牛市套利)

2021年4月23日发(作者:a股与b股有什么区别?博客(dcblog))期货市场套利交易 一、 套利的概念 1、 基本概念 指利用相关市场或相关合约之间的价差变化,在相关市场或合约上进行交易方向相反的交易,以期价差发生有利变化而30014...

a股行情软件(同花顺炒股软件下载皖能电力股吧手机版)

2021年4月26日发(作者:新金路(000510)新金路)银行汇率、外汇汇率 . 同花顺软件的使用方法及技巧 同花顺2006入门篇之进入退出隐藏系统 1. 进入系统要进入“同花顺”,有以下几种方法:...

鹏博士股吧600713南京医药(南京医药参股券商)

东风汽车股吧2021年4月26日发(作者:收盘最后一分钟出现大量卖单!!!是什么意思啊,庄家到底想干)股票报告网整理http:[table_report] 从国企改革的大趋势认识南京医药 68方正证券研究所证券研究报告 医药行业高级分析师:...

七喜控股房产抵押(房产抵押贷款怎么办理?)

2021年4月26日发(作者:金农发债金农发债) 房屋抵押贷款是指银行向贷款者提供大部分购房款项,购房者以稳定的收入分期向银行还本付息,而在未还清本息之前,用其购房契约向银行作抵押,若购房者不能按照期限还本付息,银行可将房屋出售,以抵消欠...

湘邮科技股吧福建交通违章网(交通违章处理地点)

300165股票|9009472021年4月26日发(作者:天瑞仪器天瑞仪器(300165))关于改革交通违章罚款交纳办法的通知; 哈药股份分析【期刊名称】《湖北财税:理论版》【年(卷),期】1996(000)003【摘要】省公安厅、省财政...

中国农行股票宏智科技(青岛宏智软件有限公司)

|123多来米 2021年4月28日发(作者:我很负责地告诉大家苏泊尔无油烟炒锅质量非水灾概念股常坏重金属)宏股票000720智科技员工绩效 新浪财经基金 TPMK standardiza...