1、与运算等位操作,代码如下:
procedure TForm1.Button1Click(Sender: TObject); Var x,y,z:Byte; begin x:=10;//二进制:1010 y:=12;//二进制:1100 ShowMessage(InttoStr(x and y));//显示与运算结果,结果为:1000 ShowMessage(InttoStr(x or y));//显示或运算结果,结果为1110 ShowMessage(InttoStr(x Xor y));//显示异或运算,结果为:0110,异或操作两位相同为0,不相同为1,所以结果为6 ShowMessage(InttoStr(9 shr(3)));//向右移位操作,结果为1 ShowMessage(InttoStr(9 shl(1)));//向左移位操作,结果为18 end;
2、获取整数二进制的位数,代码如下:
Function GetBitCount(x:Integer):Integer; Var D,M:Integer; Begin Result:=0; Repeat D:=x Div 2; M:=x Mod 2; x:=x Div 2; Result:=Result+1; Until((D=0) and (M=1)); End; procedure TForm1.Button2Click(Sender: TObject); begin ShowMessage(InttoStr(GetBitCount(12))); end;
3、获取整数的二进制并返回字符串形式
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。