- C说话位运算根本常识 保举度:
- 相干保举
C说话位运算的根本常识
法式中的一切数在计较机内存中都因此二进制的情势贮存的,位运算便是间接对整数在内存中的二进制位停止操纵。上面清算了一些C说话位运算的根本常识,一路来看看!
一、 位运算符
在计较机中,数据都因此二进制数情势寄存的,位运算便是指对存储单位中二进制位的运算。C说话供给6种位运算符。
二、位运算
位运算符 & |~<< >> ∧ 按优先级从高到低摆列的挨次是:
位运算符中求反运算“~“优先级最高,而左移和右移不异,居于第二,接上去的挨次是按位与 “&“、按位异或 “∧“和按位或 “|“。挨次为~ << >> & ∧ | 。
例1:左移运算符“<<”是双目运算符。其功效把“<< ”左侧的运算数的各二进位全数左移多少位,由“<<”右侧的数指定挪动的位数,高位抛弃,低位补0。
比方:
a<<4
指把a的各二进位向左挪动4位。如a=00000011(十进制3),左移4位后为00110000(十进制48)。
例2:右移运算符“>>”是双目运算符。其功效是把“>> ”左侧的运算数的各二进位全数右移多少位,“>>”右侧的数指定挪动的位数。
比方:
设 a=15,
a>>2
表现把000001111右移为00000011(十进制3)。
应当申明的是,对有标记数,在右移时,标记位将伴同挪动。当为正数时,最高位补0,而为正数时,标记位为1,最高位是补0或是补1 取决于编译体系的划定。
例3:设二进制数a是00101101 ,若经由过程异或运算a∧b 使a的高4位取反,低4位稳定,则二进制数b是。
剖析:异或运算经常利用来使特定位翻转,只需使需翻转的位与1停止异或操纵就能够了,由于原数中值为1的位与1停止异或运算得0 ,原数中值为0的位与1停止异或运算成果得1。而与0停止异或的位将坚持原值。异或运算还可用来交换两个值,不必姑且变量。
如 int a=3 , b=4;,想将a与b的值交换,可用以下语句完成:
a=a∧b;
b=b∧a;
a=a∧b;
以是本题的谜底为: 11110000 。
【C说话位运算的根本常识】相干文章:
C说话位运算根本常识02-20
C说话的位运算05-31
C说话位运算10-28
c说话位运算符的用法08-27
c说话位运算符的用法指点06-02
C说话运算06-09
C说话位操纵是08-17
C说话中的运算法则10-14
C说话根本常识10-13
C说话位操纵教程08-07