$_='gcc 92 !$* % "awk in I$: ar& $:a"'; foreach (/(\S)/g) { $;.= substr(unpack("B*",pack(n,unpack("c",$_))),-4); $;.= "\n" if !(++$i%5); } $_=$;; y;0;\40;; y;1;#;; print; #### $_='gcc 92 !$* % "awk in I$: ar& $:a"'; foreach $char (/\S/g) { # Capturing parens not needed $str.= substr(unpack("B*",pack(n,unpack("c",$char))),-4); $str.= "\n" if !(++$i%5); } $_=$str; tr/0/\40/; tr/1/#/; print $_; #### $str.= substr(unpack("B*",pack(n,unpack("c",$char))),-4); unpack("c",$char) # is the same as ord $char # 103 pack(n, ... # packs 103 as a little-endian int unpack("B*", ... # Packs it as a binary string: 0000000001100111 substr(..., -4) # Get the last 4 chars: 0111 #### 01110011001110010010 00010100101001010010 00010111101110011110 10010100101000010010 01100100101000010010 #### tr/01/ #/; #### ### ## ### # # # # # # # # # # #### ### #### # # # # # # # ## # # # # #