01110110010101100101011010110111001100101100001000000110000100100000
01101100011010010111010001110100011011000110010100100000011010100110
11110110101101100101001000000111010001101111001000000111010001101000
01100101001000000110110101111001001000000100001001101100011011110110
01110010111000100000010010000110000101110110011001010010000001100001
00100000011011100110100101100011011001010010000001100100011000010111
10010010000001100001011011100110010000100000011010000110000101110110
01100101001000000110011001110101011011100010000001110111011010010111
01000110100000100000011101000110100001101001011100110010000001101100
01101001011101000111010001101100011001010010000001110100011011110111
10010111001100100001
There are 10 types of people in the world. those who understand binary and those who don't.
세상에는 10종류의 사람들이 있습니다. 이진수를 이해하는 사람과 이해하지 못하는 사람.
이해하는 사람이라면 한번 번역해보세요.

코멘트
제가 제대로 이해했는지 모르겠는데요. ...10 types.. 는 1 type + 0 type의 10 types로도 볼 수 있는 중의법이 쓰인거 맞죠?
오... 이런 제가 실수로 엔터를... 10 types 할때 10이 이진수로 2를 뜻한다고 적으려고 했었습니다 ^^;
넵 정확합니다. 이진수를 이해하는 사람이라면 10 types 가 10가지가 아님을 잘 알고있겠지요. 오래된 유머입니다 :)
정말 재미있는건. 10 types 를 중의적으로 해석하는게 결국 10 type'd 에 익숙한 사람이라는거죠. 죽어도 10 types 한(?) 컴퓨터는 이해 못한다는게 새삼 새롭군요. 하하
멋진 부연설명입니다 :)
엄청나게 유명한/오래 된 유머네요. ;) 저는 이런 프로그램을 즉석에서 짜서 돌렸습니다.
>>> p = '''(저 내용을 복사->붙여넣기)'''.replace('''
... ''','') #내용을 복사한 후 엔터 친 걸 다 지움
>>> len(p)
768
>>> import sys
>>> for x in xrange(0,768,8): sys.stdout.write(chr(int(p[x:x+8],2)))
...
For the geeks, a little joke to the my Blog. Have a nice day and have fun with this little toys!
역시 간단하게 프로그래밍할 때는 파이썬이 최고라니깐요. ;)
아니 이사람들이 ..
하하.. 파이썬은 잘몰라서... C로 함 해봤어요. 생각보다 길어지네요.
가급적 위의 코드와 비슷하게...ㅋㅋ
첨으로 코멘트 남겨요.. 반갑습니다.
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char buf[10];
int i,len;
char *p = "(내용을 복사한 후 엔터 친 걸 다 지움)";
for(i=0; i<strlen(p); i+=8)
fprintf(stdout, "%c", (int)strtol((sprintf(buf, "%.8s", p + i), buf), NULL, 2));
exit(EXIT_SUCCESS);
}
으음.
하하 잘못올렸나;; for문이 이상해져 버리네요.
for(i=0; i<strlen(p); i+=8)
fprintf(stdout, "%c", (int)strtol((sprintf(buf, "%.8s", p + i), buf), NULL, 2));
Perl :
$bit_string =~ s!\n!!g;
while( $bit_string =~ s!([01]{8})!pack("B8", $1)!ge ){1;}
print $bit_string;
허허, 참 ..
저도 심심해서 한번, 좀 깁니다. -_ -;
C++:
#include <algorithm>
#include <numeric>
#include <iostream>
struct char_to_number { char operator () ( char org ) const { return org - '0'; } };
char sum_of_8( std::vector<char>::iterator itr ) {
static const char multiplier[] = { 128, 64, 32, 16, 8, 4, 2, 1 };
return std::inner_product( multiplier, multiplier+8, itr, 0 );
}
std::string binarystring_to_string( std::string s_in )
{
std::string s_out;
std::vector<char> in;
std::transform( s_in.begin(), s_in.end(), std::back_inserter(in), char_to_number() );
for ( int i = 0; i < (in.size()/8); ++i ) s_out.push_back( sum_of_8( in.begin() + (i*8) ) );
return s_out;
}
void main(void) { std::cout << binarystring_to_string("01000110-BinaryData") << endl; }
부라보.
음... 갑자기 KLDP BBS 명예의 전당을 보는 느낌이 드는 군요. -_-;;;;;;;
명예의 전당(..) 된 김에 파이썬 두번째 버전입니다. 조금 꼬아 봤는데 뭐 잘 나오는 것 같으니 다행이군요 -_-;;;
print''.join((lambda o=''.join("""(여기에 복사-붙여넣기)""".split()):[eval(r"'\x%02x'"%(reduce(lambda x,y:(x<<1)|(ord(y)&-49),o[z<<3:][:1<<3],0)))for z in xrange(len(o)>>3)])())
박수 짝짝짝.
소스코드는 이해하지 못해도 보기만 해도 즐거워요. 저도 geek인가봐요 ^^
예전부터 훌륭한 geek 이셨잖아요 :)
import Char
import Bits
str="01000110011011110111001000100000011101000110100001100101001000000110"
++" 한줄씩 갖다 붙여주세요 ^^"
++"10010111001100100001"
split8 (x128:x64:x32:x16:x8:x4:x2:x1:xs) = [x128:x64:x32:x16:x8:x4:x2:x1:[]] ++ split8 xs
split8 (x:xs) = [x:[]++xs]
split8 "" = []
myBin (c,n) = shift (ord c - ord '0') n::Int
myChar binstr = chr (sum (map myBin (zip (reverse binstr) [0..7])))
decrypt s = map myChar (split8 s)
main = do
print (decrypt str)
-- http://wookay.com/code/haskell/
Haskell!
이번엔 하스켈이네요. ;) 그나저나 LikeJAzz 님의 답글을 순서대로 읽어 보면 뭔가 이상한 느낌이... ;;;;
ilovja: http://bbs.kldp.org/viewtopic.php?t=26098 이런 글 읽어 보시면 재밌어 하실 것 같습니다. :D
이상할것까지야 :) 날잡아서 하나하나 실행해볼꺼에요~
하하 ^^ 토끼군님 걸어주신 링크 재밌게 보았습니다. 어떻게 제 취향을 간파하시고
ilovja 님도 죠리퐁세기에 관심있으신가요 ? ;)
EOS equ 0ah
segment .data
binstr db "이번엔 어셈 삽질입니다한줄씩 갖다 붙여주세요 ^^10010111001100100001",EOS
segment .bss
character resd 1
segment .text
global _start
_start:
push ebx
push esi
mov esi, binstr
decrypt:
xor al, al
mov ecx, 8
myChar:
mov byte dl, [esi]
cmp dl, EOS
je quit
sub dl, '0'
shl dl, cl
shr dl, 1
add al, dl
inc esi
loop myChar
mov ecx, character
mov [ecx], al
mov eax, 4 ; sys_write
mov ebx, 0 ; stdout
mov edx, 1
int 80h
jmp decrypt
quit:
pop esi
pop ebx
mov eax, 1 ; sys_exit
mov ebx, 0
int 80h
; http://wookay.com/code/asm/
엇 이런 .. 점점 더 인간이 알아보기 힘든형태로 도출되는군요.
가장 알아 먹기 힘든 형태로 해 보겠습니다. 근데 여기에 올리면 깨지기 때문에 -,.- 링크로...
http://pandora.sapzil.info/text/20041110.befunge.bin2char.txt
정말 알아먹기가 힘들잖아요 버럭!
웹서비스로 제공해주시면, 그냥 주워 먹겠습니다. ^^
건당 50원의 유료서비스입니다 :)
첨보는 언어군여 ㅋㅋ
http://kotisivu.mtv3.fi/quux/jsbef/index.html
자바스크립트 befunge 인터프리터로 돌려봤습니다
Edit해서 갖다 붙이고 Run하고 Speed 4
음. 저럴수가. ^^
오오 정말 멋지게 실행되는군요, 놀라워요! 만든사람(토끼군님)이나 인터프리터나 그 인터프리터를 찾아낸 wookay 님이나 .. :)
저는 funge 프로그래밍 할 때 visbef라는 프로그램을 씁니다. ;)
http://www.asmlove.co.kr/bbs/zboard.php?id=tipntech&page=1&sn1=&divpage=1&sn=off&ss=on&sc=on&select_arrange=headnum&desc=asc&no=65
^^;
글자수가 많아서 소스가 다 올라가지 않는군요.
Win32 MMX Assembly버전입니다.
http://www.asmlove.co.kr/bbs/zboard.php?id=fast_mmx&page=1&page_num=20&select_arrange=headnum&desc=&sn=off&ss=on&sc=on&keyword=&no=28&category=1
-_-