什么是低半字节以及为什么结果因一个数字而不同

时间:2011-07-20 20:43:41

标签: ruby

我使用ruby 1.9.2测试了以下代码。

"hello".unpack('H*')
 => ["68656c6c6f"] 
> "hello".unpack('h*')
 => ["8656c6c6f6"] 

为什么h*的结果是1.然后我认为半字节是4位。但是68656c6c6f都占用一个字节。

1 个答案:

答案 0 :(得分:3)

h *和H *之间的差异是它们写入字节的两半(半字节)的顺序。 h先写下半字节,H先写下半字节。

是的,半字节是字节的一半 - 即4位。

您可以在this post

中查看包装/解压缩的详细用法