《c语言程序设计(王勇)第15章 位运算》由会员分享,可在线阅读,更多相关《c语言程序设计(王勇)第15章 位运算(5页珍藏版)》请在金锄头文库上搜索。
1、第 15 章 位运算,第 一 节 位运算符,第 二 节 位运算符的作用,按位与运算即将两个运算量按照对应位分别进行“与”运算,二者都为1时结果为1,否则为0,例:如何判断一个数的第三位是0还是1,1,0,0,1,0,0,0,1,如果让这个数同 0 0 0 0 1 0 0 0 进行“与”运算,若其值为8,则第3位为1,0,0,0,1,0,0,0,0,main() unsigned char a,b; a=8; scanf(“%d”, /*如果b的第三位为1,则输出8,否则输出0*/,一、按位与运算符,二、按位或运算符,按位与运算即将两个运算量按照对应位分别进行“或”运算,二者之一为1时结果为1,
2、否则为0,三、按位异或运算符,0,0,1,0,1,1,0,0,作用是判断两个相应位的值是否“相异”,若为异,则结果为1,否则为0,1,0,0,0,0,0,1,1,00=0 01=1 10=1 11=0,四、按位取反运算符,按位取反运算符的作用是将一个运算量的各位取反,即0改为1,1变为0,五、左移运算符,1,1,0,1,0,0,1,1,是将一个数中各位全部左移若干位,如 a2表示将a中各位左移2位,左移后空出来的位置补零,右边超出范围的丢失,1,0,0,1,0,0,1,1,0,0,丢失,补 零,六、右移运算符,是将一个数中各位全部右移若干位,如 a2表示将a中各位右移2位,右移后空出来的位置补零,右边超出范围的丢失,1,0,0,1,0,0,1,1,0,0,丢 失,七、位数不同的运算数之间的运算规则,不同类型数据的位运算按如下规则进行,先将两运算数右端对齐 将位数短的运算数向高位扩充。正数补0,负数补1 将位数相等的两个运算数按位进行运算,补 零,