關(guān)于我在英國(guó)火車(chē)上用中國(guó)魔法讓隔壁外國(guó)情侶震驚一整年這件事


- 這里有ABCD四張卡片,卡片數(shù)字是豎向排列的。
- 左側(cè)是數(shù)字的二進(jìn)制編碼,又稱(chēng)“8421碼”,右側(cè)是對(duì)應(yīng)的十進(jìn)制編碼,就是我們?nèi)粘5臄?shù)字。
- 窮舉出所有的8421碼,從0001到1111,二進(jìn)制是指縫二進(jìn)一。比如二級(jí)制數(shù)0001,加1,變成了0002,可是二進(jìn)制沒(méi)有2,就要進(jìn)一位,變成0010。再加1就變成了,0011,以此類(lèi)推。
- 為方便大家理解,規(guī)定四位二進(jìn)制是從右往左數(shù),最右為第一位。就是右邊為低位,左邊為高位。
卡片A放入所有第一位有1的數(shù)字。
卡片B放入所有第二位有1的數(shù)字。
卡片C放入所有第三位有1的數(shù)字。
卡片D放入所有第四位有1的數(shù)字。
- 再把四位二進(jìn)制轉(zhuǎn)化為十進(jìn)制數(shù)字,轉(zhuǎn)換規(guī)則,∑n*2^(n-1),n為第幾位數(shù)字。
例如,1101,從右往左數(shù),第1位數(shù)字1,第2位數(shù)字0,第3位數(shù)字1,第4位數(shù)字1。
則代入上面式子,求和。
1*2^(1-1)=1;
0*2^(2-1)=0;
1*2^(3-1)=4;
1*2^(4-1)=8;
求和,1+0+4+8=13。所以1101=13。
- 讓讀者在1-15之間任意選擇一個(gè)數(shù)字,設(shè)為X,X一定會(huì)有一個(gè)對(duì)應(yīng)的4位二進(jìn)制編碼,關(guān)鍵步驟,讓讀者選出所有含有他所選擇的卡片。
- 本質(zhì)是讓讀者選出X的對(duì)應(yīng)的二進(jìn)制編碼,而這個(gè)編碼的位數(shù),在上面設(shè)計(jì)的時(shí)候,每一位就對(duì)應(yīng)了每一張卡片。A代表低位,D代表高位。不選擇,則代表0。
- 例如讀者選擇了13,編碼就是1101,那么他必然選擇ACD三張卡片。例如選擇9,編碼就是1001,必然選擇AD兩張卡片。選擇8,編碼1000,必然選擇D卡片。把讀者選擇的卡片第一位相加,就是他所選擇的X。
- 這里稍微難理解一點(diǎn),還是數(shù)字13,即1101舉例,ACD三張卡片第一位分別是1000,0100,0001,列豎式加法,就是小學(xué)那個(gè)加法。
1000
0100
0001
按位對(duì)應(yīng)相加,正好1101
- 在這里十進(jìn)制的自然數(shù)只是一個(gè)幌子,是為了掩蓋這個(gè)二進(jìn)制數(shù)字。up主的是6張卡片,原理是一樣的,000001-111111的編碼。擴(kuò)展到10張卡片,就是大家喜歡的1024個(gè),從0-1023。
標(biāo)簽: