如何在Perl
64位值的32位值转换为32位的perl在Perl转换64位值的32位值
perl -e "use integer;print 88864420<<8"
输出:
1274455040
for 64 bit perl
perl -e "use integer;print 88864420<<8"
22749291520
但我想结果作为32位值甚至在64位perl。
所以请帮助我将值转换为32位。
如何在Perl
64位值的32位值转换为32位的perl在Perl转换64位值的32位值
perl -e "use integer;print 88864420<<8"
输出:
1274455040
for 64 bit perl
perl -e "use integer;print 88864420<<8"
22749291520
但我想结果作为32位值甚至在64位perl。
所以请帮助我将值转换为32位。
简单地屏蔽掉过多位:
my $result = (88864420 << 8) & 0xFFFF_FFFF;
print $result;
到目前为止没有过我的脑海强调十六进制数。 :) –
@amon非常感谢你。它的工作:-) 你能解释它是如何工作的? – Saravanan
http://stackoverflow.com/a/6931686/223226 –