[완료] perl (펄)진수 변환

doodoo의 이미지

doodoo@doodoo:~/perl$ cat t.pl
#!/usr/bin/perl
 
use warnings;
use strict;
 
print hex("0x030"), "\n";

doodoo@doodoo:~/perl$ perl t.pl
48

요즘 제 질문에는 이상하게 답변이 잘 안달리는데..ㅠㅠ 이번에도 그러면..ㅠㅠ

비기닝 펄을 보고 있습니다.
여기서 진수 변환은 간단히 hex() 라는 함수로 십진수로 변환 하는데....

십진수나 16진수를 2진수로 바꾸는 방법은 없을까요?

aero의 이미지

$ perl -e 'my $s = sprintf "%b",255; print $s,"\n"'
11111111
$ perl -e 'my $s = sprintf "%b",256; print $s,"\n"'
100000000
$ perl -e 'my $s = sprintf "%b",hex("0xff"); print $s,"\n"'
11111111
$ perl -e 'my $s = sprintf "%b",hex("0x100"); print $s,"\n"'
100000000

http://perldoc.perl.org/perlfaq4.html#How-do-I-convert-between-numeric-representations/bases/radixes? 도 참고~

---------
Stop reinventing wheels, start building space rockets.
- From http://www.cpan.org/

ai의 이미지

2진수 변환은 간단하게 다음과 같이 할 수도 있습니다.

$ perl -e 'print unpack "B32", pack "N", 12345';
00000000000000000011000000111001

War doesnt determine whos right, just whos left.

doodoo의 이미지

오...감사합니다...

근데...ai 님의 pack, unpack 은 더 찿아봐야 하겠군요...
aero 님 링크따라가보니 거기도 pack 이 나오는 군요.. -,.-

아..
비기닝 펄 계속 보다보면 나올려나? ^^;