Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php-解码函数(字节和整数)_Php_Binary_Byte_Bits - Fatal编程技术网

php-解码函数(字节和整数)

php-解码函数(字节和整数),php,binary,byte,bits,Php,Binary,Byte,Bits,我被要求编写一个解码函数,在输入时接受两个字节,都在[0x00..0x7F]范围内,并重新组合它们以返回[-8192..+8191]之间的相应整数 问题附带的示例表: Hi byte | Lo byte | Value 40 | 00 | 0 00 | 00 | -8192 7F | 7F | 8191 50 | 00 | 2048 0A | 05 | -6907 55 | 00

我被要求编写一个解码函数,在输入时接受两个字节,都在[0x00..0x7F]范围内,并重新组合它们以返回[-8192..+8191]之间的相应整数

问题附带的示例表:

Hi byte | Lo byte | Value
40      | 00      | 0
00      | 00      | -8192
7F      | 7F      | 8191
50      | 00      | 2048
0A      | 05      | -6907
55      | 00      | 2688
这是一个任务,我讨厌它,因为PHP没有优化到与操作系统交互的程度,就像它与web浏览器交互一样。这都是关于位、字节和二进制数据的,这些东西在PHP中很少需要使用;似乎是C/C++或Java的任务。无论如何,我必须用PHP编写它


如果有任何帮助,我们将不胜感激。

首先看一下PHP,除非您知道如何将两个输入字节组合到输出值中,否则语言不会有多大影响。是的,我实际上在看这些按位运算符。我从来没有真正接触过任何与比特和字节有关的东西。我广泛地学习了PHP。我这里有一本书:PHP和MySQL Web开发;卢克·韦林和劳拉·汤姆森的开发者图书馆。它被认为是PHP编程的“黄金标准”,他们用半页的篇幅介绍位运算符。他们说:您可能不会发现PHP中的位运算符有很多用处,但表1.5中给出了一个摘要。。。这本书有968页。