如何记忆二进制数

比如 110001011101000111

记忆二进制数字,是世界记忆锦标赛的记忆项目之一,是常见的记忆竞技项目。二进制数字由1和0两种数字反复排列组合而成,如“11000101110100011111010010”。对二进制数字进行记忆,记忆原理与记忆阿拉伯数字的原理几乎一样(请参考“如何在3分钟内记住100位数字”),仅仅是多了一个步骤,就是把二进制数字转换为阿拉伯数字之后再进行记忆。转换方法之一:因为二进制数字只有1和0两种数字,而我们在记忆阿拉伯数字的时候都是以两个数字作为一个编码,所以,我们可以这样来转化:把连续的数字1的个数作为十位数,而把连续的数字0的个数作为个位数,这样,就能够立即把一连串的二进制数字非常快地转换为两位两位的阿拉伯数字。转换举例:10——11;100——12;11000——23;1110000——34;1111110——61;11000000——26;连续转换举例:1000110101100000——13 21 11 25;11000101110100011111010010——23 11 31 13 51 12 11;注一:如果数字串是以0开头的,则把开头的那一串连续的0转换为单个数字:00111010011000——2 31 12 23;0000011010——5 21 11;注二:万一连续的0超过十个,则以9个为界线分割,如:1101001110000000000000——21 12 39 4;0000000000001011000——9 3 11 23;注三:如果最后的数字为1,则把最后连续1的个数作为十位,后面加0,如:11100110111——32 21 30;10110100011111——11 21 13 50;注四:如果连续的1超过十个,则以9个为界线分割,如:1111111111100110000——90 22 24;1011000111111111111——11 23 90 30;转换方法之二:按照二进制数字转换成十进制数字的原来规律,每3个二进制数字转化为1个十进制数字,共有这样8种转换结果:000——0; 001——1; 010——2; 011——3;100——4; 101——5; 110——6; 111——7;记忆比赛的二进制项目中,每行都是30个二进制数字,刚好可以转换为10个十进制数字,如:010001100000111101010011111100——21 40 75 23 74这个转换方法相比第一个方法而言,其优点是可以避免出现累积性的错误(即前面出现一个错误,后面就会跟着错下去);其缺点则是首先要对转换规律很熟悉(这一点经过练习之后应该不成问题);其次是在每三个三个地数数字的时候,要特别认真,需要反复核对,以免数错(如 111111111100,前面有10个1,要当你把前面6个1转化成77之后,还得再数一遍看接下来到底应该从哪里开始转换。如果用笔每三个三个地作分段记号的话,似乎也不是记忆大师的风格);还有就是假如在平时一些记忆情况而不是比赛的时候,可未必刚好是30个一行,那记忆起来就比较麻烦了。所以,以上这两种方法都是很好的方法,各人可根据自己的情况选择适合自己的一种。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-06-07
把它换成十六进制就好记多了,并且很好转换,比如把上面那串数字从右到左第4个一起分开11,0001,0111,0100,0111 ,11转换为3,0001转为1,0111为7,0100为4,0111为7,结果为十六进制的31747.就很容易记了.
第2个回答  推荐于2018-11-07
方法如下:
+ L& |/ {3 N( |# q
因为二进制数字只有1和0两种数字,在记忆阿拉伯数字的时候都是以两个数字作为一个编码,所以,可以这样来转化:
把连续的数字1的个数作为十位数,而把连续的数字0的个数作为个位数,这样,就能够立即把一连串的二进制数字非常快地转换为两位两位的阿拉伯数字。
$ k7 v: {, P& }/ z9 S, P" S3 h
转换举例:: d6 g( y6 F5 L. ^7 b$ ?( b/ U
10——11;
100——12;; c3 s8 j e c* K
11000——23;
1110000——34;
1111110——61;
11000000——26;$ k/ m2 r; L2 s/ p% @: C. N
% @: l" G! D& d: B# q( r
连续转换举例:# F+ |! G( [; Y3 M, p
1000110101100000——13 21 11 25;: m. p: y3 O" \5 q. b6 ~3 z9 U
11000101110100011111010010——23 11 31 13 51 12 11;. o) `( y G8 |
# t9 \: x3 k! ^& T( C
1、如果数字串是以0开头的,则把开头的那一串连续的0转换为单个数字:( G2 b( g9 i, f& S& R
00111010011000——2 31 12 23;3 ]3 q# g( s z9 V( t. r1 i
0000011010——5 21 11;

2、万一连续的0超过十个,则以9个为界线分割,如:
1101001110000000000000——21 12 39 4;
0000000000001011000——9 3 11 23;

3、如果最后的数字为1,则把最后连续1的个数作为十位,后面加0,如: a: p$ C/ j% w+ [) b, z, K2 {3 J
11100110111——32 21 30;$ J2 [# {. s) l' G2 q6 u+ E7 j
10110100011111——11 21 13 50;8 c1 H- R. s3 W" ] X) X
. [# a# M, j+ Y4 B: m, c
4、如果连续的1超过十个,则以9个为界线分割,
如:) X7 ^* }( W9 d+ A
1111111111100110000——90 22 24;6 d) B% f4 Y" E) y+ ^- E- g
1011000111111111111——11 23 90 30;6 P( {" z7 g/ n `# X( j9 ]
: Q4 c6 D* F1 m! k本回答被网友采纳
相似回答