位运算是如何将变量、常量等数据转换成二进制数,进行位运算的?如:x=58,y=28,z=(x|y),z=?

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/30 13:07:06
位运算是如何将变量、常量等数据转换成二进制数,进行位运算的?如:x=58,y=28,z=(x|y),z=?
xœ[oAǿB41i¥jriM* >,v7@DX$PЄ9˓_3,Bs39L;ԍk0 <([̀엌АݐEM$1)JlvPϬy{M>6}{|t~WH8 3>TY?ל) Gx=cT0g5~u&ۢ2~=T1ۀjBF} bB<%h/gu]lZXލE߆I9*sÝyb Ee-Le1reeuDt2L=܏%4e/A,GS|&< v 9<ڙ 6&-3P;tLZ}pC+$@|~!q$=|87]ԍk2@{H .N H6Bbg^4B0;15F4H$ -Qr!rLœ -C.™ȿJ <~I

位运算是如何将变量、常量等数据转换成二进制数,进行位运算的?如:x=58,y=28,z=(x|y),z=?
位运算是如何将变量、常量等数据转换成二进制数,进行位运算的?如:x=58,y=28,z=(x|y),z=?

位运算是如何将变量、常量等数据转换成二进制数,进行位运算的?如:x=58,y=28,z=(x|y),z=?
器会帮你处理,就算你用汇编,也不需要把数字转化成二进制,然后进行位运算的啊!CPU在运算的时候,内部把所有数据都看成二进制而已.
Convert 看类名就知道,是提供一个转换函数的.
位运算只能在 byte,char,short,ushort,int,uint,long,ulong 等类型上进行运算.
当然 Enum 类型,也是基于这些类型的,也可以用位运算.
一些例子:
int a = 123;
int b = a << 2; //a 左移2位
int c = b >> 1; //b 右移1位
int d = a ^ b; //a 和 b 按位异或
int e = c & d; //c 和 d 按位与
int f = d | e; //d 和 e 按位或
int g = f; //f 按位取反