电脑是怎样从最简单的计算器发展起来的?

电脑是怎样从最简单的计算器发展起来的,比如最先有打孔的片,比如原先cpu是怎样的,原理是什么,比如加法机的原理

推荐  (1) | 60人关注关注
20个答案
83 0

LePtC物理学博士生

2014-06-02 00:35

(我不是计算机专业滴,以下仅为抛砖引玉)

#首先你要有个三极管#

(当然后来我们有了场效应管,不过本质上都是要实现通过一极能控制另外两极的通断)

然后我们就可以造出非门

与非门

以及其它各种逻辑门电路

有了与非门我们就可以造出半加器

由半加器可以组合出全加器

然后往上就可以设计各种多位加法器了,串行进位,超前进位,详情可见任何一本数字电路教材...

ALU和大规模集成电路就请计算机专业的来讲吧~


感谢 @taptree 同学的补充~

简单地说,你需要与门、或门、非门(至于这几种基本的门电路是怎么来的就无所谓啦,有一些奇奇怪怪的电子元件可以实现这样的效果),然后把他们组装起来就能得到半加器。当然,电路并不理解它是在做加法,它完全不知道自己在干吗,只是在人类看来这种电路的输入输出对应于我们常用的加法运算。半加器再加上进位(carry-in)就是全加器了,再把若干全加器串起来就可以构造多位加法器。

能做加法就能做减法(减一个数等于加上它的相反数),也就能做乘法(乘法就是多次相加),还能做除法(跟手算竖式除法差不多,不断地相减、移位)。这样所有的算数操作就都能做了,于是我们就有了一个ALU(arithmetic logical unit, 算术逻辑单元)

#欢迎参观德意志博物馆系列#


在1950s之前,人们是用真空管来实现二极管三极管的功能,体积大,功耗高,不幸福


德意志博物馆中展示的早期通用真空管计算机EDVAC,EDVAC 是一台 1950 年建成的二进制串行计算机,使用了 5600 个真空管、18000 个二极管和 300 个继电器,数字使用 excess-3 码表示,具有加减乘和软件除的功能,一条加法指令约 864 微秒,乘法指令 2900 微秒。


后来普林斯顿高研院的一帮人改进了 EDVAC 的设计,用静电存储管(electrostatic storage tube)可以缩短访问数据的时间

慕尼黑可编程电子计算机(PERM),下面的说明看不清了 ...


有一面好多按钮的墙,怎么没有说明呀?


题主要的打孔带来了~



这台机器的型号叫做“西门子2002”?(虽然它是1957年冬季建成的 ...)

到了 1960s 晶体管取代了真空管, 晶体管的我没看,去下一个展区了 ...

5 0

你需要先学习数字电路基础,然后是微机原理。另外可以学习半导体物理。这样,现代计算机是如何工作的,就清楚一些了。这样也能了解为什么同样插在主板上的两个存储设备,一个属于内存(指内存条),一个却是外存(指硬盘)了。

3 0

因为人类慢慢的发现一切的问题都可以归结为“比较”这种最基本的运算。

2 0

一部书可破 《编码的奥秘》

我就是教这个书的,看了以后会知道为什么人列也能做出计算机来。

1 0

你这是自寻箱子拖延症迫害妄想者

2014-11-03 20:30
支持者: lala2468


我觉得几个关键点是:

数值计算方法(把一切运算归结为数值的运算;与解析计算相对)
布尔代数(把一切数值数据和资料用二进制数字表示;把一切数值运算以二进制运算形式表示)
逻辑门和数字电路(用电路实现二进制运算;通过电路的设计实现二进制运算的组合)
二进制机器语言指令集(用二进制数字代表计算指令)
数字电路组成的处理器(可以执行指令集的大规模电路)
编程(以指令集中的指令为资源,编制成指令的程序,完成复杂的运算)

以上还仍然属于运算部分的发展;让计算机脱离单纯的运算的是:

存储设备(存储程序和数据以供自动化实现更多更复杂的运算)
输入输出设备(不断丰富升级,让计算机接受更多形式的输入,进行更丰富多彩的输出,比如运算结果从单纯的文字显示到图形显示这步跨越是历史性的;还有从静态图像到实时图像)
冯诺依曼架构(更容易的组合处理器、存储设备和输入输出设备)

再加上硬件工程师和软件工程师的聪明才智,用这些实现越来越丰富多彩、形式上越来越超脱于基本的运算的各种功能。

1 0
支持者: 706867234

总觉得应该先弄明白什么是图灵机吧....

0 0

其实现代电脑的雏形可以追溯到查尔斯 巴贝奇的年代(1791-1871),他的拍档Ada也可以算是第一位程序员。他当时想用蒸汽机和机械制作出电脑。他的设计理念是可行的,然而局限于当时的制作工艺,最后这个机器并没有制作出来。有趣的是,他所设计的机器是与现代电脑一样都是【图灵机】。也就是说,在逻辑上,理论上,现代电脑能解决的问题它都能解决,(只有效率上的差异)。现代电脑最底层仍然是做一些很简单的东西而已。

0 0

计算机比锄头神秘是因为抽象和封装的过程。谁会理解淘宝上一件衣服的图片其实是几千个液晶小格在不同电压的控制下阻挡通过滤光片的光形成的呢?而这些驱动它们的电压又是一个驱动芯片按照显卡芯片的电信号来动作的。。。。。

千万种技术和知识堆积在里面,任何一个单人现在都无法全部了解了,想想真是挺了不起的。

0 0

冰火梦幻信息与计算科学学士,算法控,AI爱好者

2014-11-04 09:45

有人在MineCraft里用红石电路造出了一台计算机……从搭建门电路开始
网上有视频,带有显示器和键盘
也有人搭出了一个容量1K字节的硬盘
这里是高级红石电路的介绍页面

0 0

如果不算过去的机械计算器计算尺,应该是计算器从计算机发展而来

0 0

推荐一本书《编码(隐匿在计算机软硬件背后的语言)》by Charles Petzold
简单易懂!!!!

0 0

真正开始作为计算器具的是从“运算放大器”开始的。你用与非门,3极管,二极管是没有办法计算的。

0 0

FROM CALCULATOR TO COMPUTER: PART I

我在回答中加了一個限定:從計算器到計算機,或者收緊一點兒說是:FROM MECHANICAL CALCULATOR TO ELETRICAL COMPUTER(從機械計算器到電子計算機)。

可能我的切入點跟林同學最開始發問的初衷有些距離,我是想從「簡單的計算器」這個字眼入手,來扒一扒⋯⋯

人類會算加減法,簡直是一項奇蹟,一項注定我們能跟宇宙交換信息的奇蹟。能夠抽象理解數字的含意,目前只有人類可以做到。在簡單地掰著手指跟腳趾數數之後,我們就對加和減有了直觀的認識,所以在理解加減法這件事上,人類幾乎是與生俱來的。如果一個人生來沒有智力的永久性缺陷,那麼他一定可以學會加減法。

那麼比20大的數呢?我們沒有再多的肢體末梢來記數了,頂多是男人額外加個五體,女人額外加個四體。在原始社會除了叫你家的兄弟姐妹排排坐數手腳以外,還可以結繩記數,但這依舊是數數,而非真正意義上的計算。當然,如果你記性好的話,可以來回掰著十根手指,數足夠大的數(有一點要特別清楚:計算這件事還跟記憶或者存儲有關,這是後話)。

真正意義上的計算,是算數(ARITHMETIC)法則出現以後的事。讓我們暫時離開關於算數的討論,先來看看這樣幾件史實:

這張圖上藍色的記號,是瑪雅人的記數系統,他們相當老實,因為每個人都隨身帶著20根手指腳趾,所以就採取了二十進制的記數系統。如果我只告訴你這麼多,用不了多久你就能自己發現,6對應著一道橫線上加一個點。

我們再來看看地球另一端的美索不達米亞文明,他們採用了六十進制。

這兩種不同文明的不同記數系統,卻有一個相似之處,那就是非常容易辨認出數字的大小來——對於人類來說象形文字非常好識別。

距離美索不達米亞地區尚沒有超出半個地球遠的羅馬地區,算數也一定不會是「算數不好的人」能學會的。這幫光著屁股參加祭神運動會的傢伙們用拉丁字母當作數字,回憶下牆上老式的鐘錶,V表示5,V右邊出現的數字表示在5的基礎上加上,而左邊的數字表示減去(一般也就是IV,而沒有IIV,因為3有III,但是7有VII)。同理,C表示100,D表示500,CD就表示400,而DCCCLXXIII這麼長的字符表示的僅僅是873。跟前面兩個文明一樣,這種記數系統在做算數的時候,依然可以數數。但是請注意,這種類型的記數系統本身就涵蓋了加減法的計算。因為直觀,我們添上一個記號或者拿掉一個記號就能完成加減的過程。

那麼問題就來了。我要是讓你計算VII+IV,你要怎麼做?儘管數數能完成任務,但花去的時間太多——人類在計算問題上一直在追求越快越好,對「算法」的精益求精推動了數學乃至科學的發展。有一種算法,滿十加減,將IV拆成III+I,VII遇到III變成X(注意我的描述),然後再加上I得到XI。這裏邊還包含了進位和退位的思想,一個字符佔一個位,同位加減在同一個位上完成,而這也是天經地義的(儘管對於羅馬人的記數系統來說不存在直觀的位)。

一個行之有效的教授算數的辦法,是編制加減法表,就是像下邊幾張圖:



這個過程如此簡單,我想你現在肯定忘記了自己小時候也學過,至少每一個加減法都抄寫過很多遍,遍數就看你「算數好不好」。不要單獨覺得自己小時候很苦,從南美洲的馬丘比丘到歐羅巴的羅馬,幾千年來大家都背過加減法表。

編制計算表這項工作,很容易被我們忽略了其深刻意義,因為如今我們有了新型的計算工具,省去翻書查表的工夫,我們的父輩應該還保有在工廠從事生產工作時查表的經驗。但是越是嚴謹的數學手冊類圖書,就越是應該收錄這些計算表,因為計算表——是我們最古老的第一代計算器。

可能有人會說,古代中國發明的算盤應當是最早(或者較早)的計算器(這才能叫計算器啊,前面說了那麼多難道跑題了?)如果是這樣,那麼我說古代中國的算籌、或者算珠,都應當是咯。


真正使得工具成為計算器的不是工具本身,而是我們的目的——計算表的出現,是為了加快計算的速度,減少所用的步數,而這實際上就是計算器背負的使命,在這個意義上計算表正是我們最古老的第一代計算器。

想想看,給你一個算盤,上面撥上了兩顆珠子,我現在讓你加上三,你是怎麼做的——在心裏默念著「三下五除二」,然後把原來的兩顆珠子撥下來,再撥下來一個代表5的珠子。為了記憶計算表,中國人編寫了很多口訣,「三下五除二」就是其中一句,而我們也總愛拿我們因為有「九九乘法口訣」所以中國孩子比美國孩子學乘法快這件事炫耀。

回過頭來看看上面的描述,你應當讀之而後驚,這正是我要指出的另外一件容易被我們忽略的事實:在動用算盤計算的時候,你充當了計算器的一部分,你在大腦中回憶起口訣,活動手指撥算盤,最後看著算盤上得到的數字;你既是人肉計算器,又是計算器的使用者。

機械計算器的出現,不過就是將人從計算器內部解放出來而已。

從機械計算器到電子計算機,始終都不是什麼驚天動地的大事,充其量是我們在給計算器做升級(Internet的出現才算是驚天動地的大事,圍繞著它,電子計算機徹底改變了世界)。

林同學問「電腦是怎樣從最簡單的計算器發展起來的」,現在我回答完了1/3,但這1/3卻歷經了幾個千年,直到17世紀才誕生了現代形制的機械計算器(加法機),才解放了人類在計算中扮演的角色,用萊布尼茨的話說「將優秀的人才從繁重的計算中解脫出來」。最後讓我們再看看這「最簡單的計算器」——計算表,接下來又是如何改變世界的吧。

在加減法之後就誕生了乘法,乘法的出現更加明顯地應徵了計算表是為了加快計算時間、減少計算步數,不言自明。因為除法是乘法的逆運算,所以享用了同一張口訣表;在數學史上我們不提除法表,而是倒數表,因為倒數和分數的運算其實就是除法。

平方表是九九乘法表的2.0.1升級版,立方表是2.0.2版,四次方表是2.0.3版⋯⋯然而開方表從一出現就彷彿是數學家(其實是古希臘的幾何學家,或者「有理數算數學家」)的惡夢一樣,2的開平方甚至染上了血跡⋯⋯最終開方表的編制,將無理數引入了數學,人類對數的認知又向前跨越了一大步。

計算表,是我們根據發現的算數法則,帶入一系列特徵數而得到的結果列表。寫出一個算數法則通常只佔去一步,但是計算其中的數值卻要花很多步。比如三位數乘三位數,我們是分開三步乘法和一步加法得到的;而電腦也是這麼做的,我們和電腦的區別是,我們查表最快最快掃一眼,也比電腦壓根兒楞算慢得多(我想避免去比較心算和電腦的速度)。

對於常用的數學運算,我們會編制計算表,比如上圖是著名的「普林頓322號」泥板,經過分析我們發現,這竟是一塊兒勾股定理計算表。

從勾股定理計算表發展下去是平面三角函數表和球面三角函數表,人們發現了三角函數的乘法可以轉化為加減法——加減法始終比乘法要簡便。在天文、農曆、航海、建築等領域,積化和差的方法又向前推進了數學的應用性。

相比最早的加減法計算表沒有引起太多人的重視,對數表的誕生卻被認為是數學史上的大事,伽利略說:「給我空間、時間和對數,我就能創造一個宇宙!」恩格斯把對數的發明、解析幾何的誕生和微積分的建立並稱為17世紀數學的三大成就。對數也是一種積化和差方法。我們現在知道,log(ab)=loga+logb,對於能夠分解成兩個數乘積的大數,只要知道兩個小一點的數的對數,就能求得大數,那麼按照從小到大的序列將loga跟logb逐一算出編成表就可以了(我們今天用的對數表,是從另一個數學家布吉斯(Briggs)的對數表演化過來的,但「對數」(logarithm)這個詞的確是納皮爾發明的)——為了得到這張對數表,約翰•納皮爾花了20年時間進行了數百萬次乘法運算——而你在高中學會查對數表以後所花去的計算時間就前所未有地縮短了。

這同樣可以作為計算表是一種計算器的證明,但它跟我們司空見慣的理解又大相徑庭,原因就是,我們在做計算的時候,從來沒有把自己當作人肉計算器,除非你是那種心算哪年哪月哪天是星期幾都不帶眨眼就能得到結果的天才。我們習慣將自己完不成或者費勁完成的事情交給外部,我們習慣感嘆超越自己的技術能力,面對人類造出來可以代替我們計算的工具,我們從來不乏溢美之辭,我們越來越依賴工具,似乎沒有電腦就沒有今天。然而誰又能清醒地意識到,隨著科技的進步,我們受到的教育也在升高,站在巨人肩膀上的我們徒藉雙手,已經毋需畏懼科技社會是否會崩潰,因為再造的力量早已根植於我們身上。如果明天退回到沒有電腦的時代,你一定看不到我這篇電子文章,如果連機械計算器都「沒收」的話,只要還有計算表,飛機照樣可以在天空飛。

由於計算越來越複雜,計算表被迫越來越長,檢驗起來越來越麻煩,所以亟待有新型的計算工具出現。介於機械計算器和計算表之間的過渡型態——計算尺規久誕生了。

上圖是伽利略發明的比例規,外形像圓規,任意開闔,根據比例原理進行乘除比例運算。

15世紀左右在中亞細亞和歐洲通行一種「格子算法」,其實跟乘法竪式沒有區別,只不過用格子來替代數位。數學家納皮爾據此發明了「納皮爾籌」(Napier’s Bones/ Rods),即將格子刻到籌上,使用時可以任意拼合,北京故宮博物院還藏有清代象牙制橫排納皮爾籌(這套工具是如此重要,我將在PART II詳細描述它的用法)。

對數發明後,相繼誕生了對數尺,對於上世紀八十年代出生的國人來說,用過對數尺的都已經算早年的學霸了。

再往後一些,我們甚至有積分表這種高級貨,每一個大學受過高等數學摧殘的人想必還記憶猶新吧⋯⋯我上高中的時候自學了高等數學,在我剪裁的《常用數學公式與計算表》裏,積分表那頁寫到:「REMEMBER:不要總是說『查積分表去!』」但實際上大部分的運算我還是沒有背下來⋯⋯

這些計算工具,都只是在一定程度上將紙質的計算表變成硬質的計算表,最後對數字的加工、得到結果依然是靠人來完成,我們離自動計算還差最後一步,讓機械代替人類做人類做的事。

1 2
支持者: 魔力抹茶豆糕酱

题主问题太大,三两句话说不清,请阅读《Computer System Architecture》作者:M. Morris Mano

0 6

最早的计算机可以算是中国的发明:算盘
不过在上世纪的时候,大概在一战期间,数学家和科学家们开始研究使用真空管研制计算炮弹弹道数据的计算器,随着科技的发展,从真空管到电子管,再到晶体管再到集成电路、大规模集成电路,科学家们经历了很多艰辛,当初一两间房间大小的计算器发展到后来,出现了两大发展趋势:即是:大型机和小型机,大型机包括中型机、大型机、巨型机、超大型机;小型机包括现在使用的小型机和微型机,而我们百姓们所熟知的就是常见的小型机(服务器)和微型机(台式机、笔记本、智能手机、平板电脑、计算器、电子表等等)。大概就是这样,具体的可以参考下前面几位同学给出的解答答案。

9 25

先看度娘和谷歌娘,还有兴趣的话,到Verycd上去下些书吧。
问答应该给出关键词和学习方法。
伸手党是永远学不会的。
而本提问所需给出的关键词回答,全部包含在了提问本身中。豆糕把这种提问,视为伸手党和作业党的具体表征。。
楼上的LePtC君实在是太善良了~~~
授人以鱼不如授人以渔~
问:【用Protel是否可以制作模型中的蚀刻片?做好后我该怎么生产?我想联系电路板厂量产,网上具体和系统性的回答不多,就大神解答~】
答:电路板厂按面积收费,一边xxx元一平方米……,但是电路厂的PCB版的厚度……barabarabar
类似这样的问题才是有意义的。(顺便求解答~,不过豆糕和小伙伴最后得出是不实惠。。不如找淘宝的人去做。。。)

查看更多

添加回答

登录 后回答问题,你也可以用以下帐号直接登录

相关问答

关于我们 加入果壳 媒体报道 帮助中心 果壳活动 家长监控 免责声明 联系我们 移动版 移动应用

©果壳网    京ICP证100430号    京网文[2018] 6282-492号    新出发京零字东150005号     京公网安备11010502007133号

违法和不良信息举报邮箱:jubao@guokr.com    举报电话:18612934101    网上有害信息举报专区    儿童色情信息举报专区