精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>科学大观>>● 自然科学>>科学读物>>名家科普阅读>>艾萨克·阿西莫夫《你知道吗》>>(阿西莫夫文摘)普通数和二进制数有什么

主题:(阿西莫夫文摘)普通数和二进制数有什么
发信人: jasper_chen()
整理人: (2000-04-23 00:06:15), 站内信件
  我们通常所用的数都是十进制数。这就是说,它们是按10的幂来进位的。
我们写7291时,实际上就是7*10^3(<font class=p3 color=steelbl
ue>碧声注:10^3=10的3次方)加上2*10^2加上9*10
^1加上1*10^0。应当记住,10^3=10*10*10=1000;
10^2=10*10=100;10^1=10;10^0=1。因此,72
91就是7*1000加上2*100加上9*10再加上1。读出声的时候,
就是七千二百九十一。
  由于我们对应用10的各次幂已经非常习惯,所以我们只须写出他们所乘的
数(如7291),其余的都可以略去。
  其实,10的幂次并不是什么神秘的东西。任何一个比一大的数的幂次都可
以起到这样的效果。例如,假定我们现在想用8的幂来写出7291这个数,这
时应当记住8^0=1;8^1=8;8^2=8*8=64;8^3=8*8
*8=512;8^4=8*8*8*8=4096。这样,我们就可以把72
91写为1*8^4加上6*8^3加上1*8^2加上7*8^1再加上3*
8^0。(请你们自己把这个数算出来,关看看所得出的答数。)如果写只出各
次幂所要乘的数字,它就应当是16173。因此,我们可以说16173(八
进制)=7291(十进制)。
  八进制的优点在于除了0以外,你只需记住七个数字。如果你想用数字8,
那你可以写出8*8^3,而这就等于1*8^4。因此,不管任何时候,你都
可以用1来代替8。所以十进制的8等于八进制的10;十进制的89等于八进
制的131,依次类推。但是,用八进制时,一个数所用的总字数要比用十进制
时多。由此可见,基数越小,所用的不同数字越少,但总字数则越多。
  当你用二十进制时,7291这个数将成为18*20^2加上4*20^
1再加上11*20^0。在这种情形下,如果你把18写为#,并把11写为
%,你就可以说#4%(二十进制)=7291(十进制)。用二十进制时你将
不得不用19个不同的数字,但是每一个数所用的总字数就会少些。
  十进制是一种很方便的进位制。用这种进位制时,既不必记住过多的数字,
而且在写一个数时,又可不必用过多的字数。
  什么是二进制数呢?在二进制的情况下,7291这个数等于1*2^12
加上1*2^11加上1*2^10加上0*2^9加上0*2^8加上0*2
^7加上1*2^6加上1*2^5加上1*2^4加上1*2^3加上0*2
^2加上1*2^1再加上1*2^0。(请你们自己把这个数算出来,看看得
出什么结果。但要记住2^9是9个2的乘积,亦即2*2*2*2*2*2*
2*2*2=512。)如果只写出数字,那就是1110001111011
(二进制)=7291(十进制)。
  由于二进制数只需要用两个数字,即1和0,所以做加法和乘法演算特别简
单。但是即使一个很小的数,例如7291,也要用很多位数表示,因而很容易
在我们头脑中造成混乱。
  但是,电子计算机则可以使用一个双向开关。把开关拨向某一方向,即把电
流接通时,它就代表1。把开关拨向另一方向,即把电流断开时,它就代表0。
这样,通过操纵电路,使它根据二进制的加法和乘法规则接通和断开,计算机就
能以非常快的速度进行算术演算。同按十进制原理设计、用标有0到9的齿轮来
进行演算的普通台式计算器相比,它的演算速度要快得多。

阿西莫夫:《你知道吗?——现代科学中的100个问题》
科学普及出版社 1980年

--
www.myscience.com.cn
MyScience科学新闻,最新最快的大众科技新闻,每日更新

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 212.212.254.39]

[关闭][返回]