温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

PHP位运算以及如何引用外部文件

发布时间:2020-08-06 14:53:42 来源:网络 阅读:396 作者:韦小宝叔叔 栏目:web开发

位运算算法& ,|,  ^,  ~, >>,   <<

1.常量定义:

  写法一:define ("AYX",0.08);

  写法二:const AYX=0.08;

2.函数引用:

  写法一:require 'function.php';

  写法二:require_once 'function.php';

  写法三:include 'function.php';

  写法四:include_once 'function.php';

  函数名不区分大小写

3.二进制:

   最高位为符号位,正数为0,负数为1

 

   原码:用二进制来表示一个数

   例:0000000 00000000 00000000 000000011  32 4字节)

 

   正数的原码,反码,补码都一样

   负数的反码:原码符号位不变,其他位取反

   负数的补码:反码+1

   0的反码,补码都是0

 

   php中都是有符号数

   计算机运算时,都是以补码形式运算

4.位运算:

 

  按位与:$a & $b

 

  按位或:$a | $b

 

  按位异或:$a ^ $b 不同的位,置1

 

  非:~$a  取反

 

  左移:$a<<$b 

  右移:$a>>$b

  规则:

  算术右移:低位溢出,符号位不变,并用符号位补溢出的高位

  算术左移:符号位不变,低位补

   3*8===3<<3

 

  例子:

  1>>2=?

  1补码:00000000 00000000 00000000 00000001

  1>>2      00000000 00000000 00000000 00000000[补码]->0

 

  例子:

  -1>>2=?

  -1补码:11111111 11111111 11111111 11111111

  -1>>2      11111111 11111111 11111111 11111111[补码]

                  11111111 11111111 11111111 11111110[反码]

                  10000000 00000000 00000000 00000001[原码]->-1

 

  1<<2=?

  1补码:00000000 00000000 00000000 00000001

  1<<2   00000000 00000000 00000000 00000100[补码]->4=1*2*2 每次移动一位,相当于乘以2

 

  例子:

  -1<<2=?

  -1补码:11111111 11111111 11111111 11111111

  -1<<2      11111111 11111111 11111111 11111111[补码]

                  11111111 11111111 11111111 11111110[反码]

                  10000000 00000000 00000000 00000001[原码]->-1

 

 

  以上的运算,先转为补码进行运算,得到的结果为补码,再转为原码

 

  例子:13&7=?与

  13的补码:00000000 00000000 00000000 00001101

  7的补码:  00000000 00000000 00000000 00000111

  13&7       00000000 00000000 00000000 00000101[补码]->5

 

  例子:5|4=?或

  5的补码: 00000000 00000000 00000000 00000101

  4的补码: 00000000 00000000 00000000 00000100

  5|4=       00000000 00000000 00000000 00000101[补码]->5

 

  例子:-3^3=?异或

  -3的原码: 10000000 00000000 00000000 00000011

  -3的反码: 11111111 11111111 11111111 11111100

 

  -3的补码: 11111111 11111111 11111111 11111101

   3的补码: 00000000 00000000 00000000 00000011

 

   -3^3=       11111111 11111111 11111111 11111001[补码]

 

                    11111111 11111111 11111111 11111000[反码] 补码-1

                   10000000 00000000 00000000 00000111[原码]->-2




向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI