精品《C语言程序设计第12章位运算》PPT课件.ppt
,第十二章,位运算,主要内容,12.1位运算符和位运算12.2位运算举例12.3位段,设置一个低4位全为1,其余全为0的数。(0 4),将上面、进行&运算。(a 4)&(0 4),程序如下:#include void main()unsigned a,b,c,d;scanf(“%o”,运行情况如下:(输入),217(的值),13(的值)输入的值为八进制数331,其二进制形式为11011001 经运算最后得到的d为00001101 即八进制数,十进制数13。,将的右端位先放到中的高位中,实现语句:();将右移位,其左面高位位补,实现语句:;将与进行按位或运算,即|;,步骤:,程序如下:#include void main()unsigned a,b,c;int n;scanf(“a=%o,n=%d”,运行情况如下:,3,运行开始时输入八进制数157653,即二进制数循环右移位后得二进制数即八进制数75765,12.3 位段,信息的存取一般以字节为单位。实际上,有时存储一个信息不必用一个或多个字节,例如,“真”或“假”用或表示,只需位即可。在计算机用于过程控制、参数检测或数据通信领域时,控制信息往往只占一个字节中的一个或几个二进制位,常常在一个字节中放几个信息。,程序如下:struct packed-data unsigned:;unsigned:;unsigned:;unsigned:;int;data;,