怎么理解位逻辑与运算哦?晕了,看半天不懂
书上有一段话是这样的:逐位求与操作经常驻用来屏蔽掉某些二进制位。例如,数字字符“6”的ASCLL代码值为0x36,高半字节的0x3╳是表示ASCLL码集合中数字字符的特征码,而低半字节0x6才代表该数字的值6,若将一个数字字符串如“62868”转换成其数值时,需从该数字字符串的每个数字字符中,即从它的ASCLL代码值中屏蔽掉高4个二进制位,取出该位数字的值,然后按十进制位依次拼装。那么屏蔽掉某数字字符高4个二进制位的方法是取屏蔽码0x0f,把该数字字符的ASCLL代码值和屏蔽码0x0f进行逐位与操作,即:0x36 & 0x0f = 0x06
我在书上查的ASCLL表和这段话说的好像不太一样,6的ASCLL代码值八进制是006,十六进制是06,没有0x36的啊,也不知道从哪冒出的屏蔽码0x0f,这是啥意思?
哪位大侠能举个例子说明一下位逻辑与或非运算符的用法哈,小弟在此谢过了。。。。这一章有点难,看不懂。。。
比如这个
char x,y;
y=x | 0x04;
y的值是怎么求出来的