第一章 計算機概述

注:這里LZ是文章的作者 zuoxiaolong(左瀟龍)趋惨,本文摘自http://www.cnblogs.com/zuoxiaolong


本來LZ是打算好好研究一下JVM源碼的桅打,不過想來想去胡岔,LZ覺得應該先了解計算機系統(tǒng)的原理淹禾,再去研究JVM源碼的精妙。因此LZ決定潛下心來好好研究下計算機系統(tǒng)原理,這是一個漫長的過程,因為《深入理解計算機系統(tǒng)》這本書很厚裕偿,而且這種書一般看起來速度不會太快。因此LZ打算做好每一個階段的記錄痛单,有興趣的猿友可以跟著LZ一起看下嘿棘,了解計算機系統(tǒng)的運行原理其實是很有必要的。

計算機的組成

計算機是由硬件和軟件組成的旭绒,這兩個部分共同協(xié)作完成程序的運行鸟妙。這兩部分如何協(xié)作完成程序的運行,是本系列的重點挥吵。

信息的表示

信息的表示說到底就是位加上下文重父。舉個小例子,比如11011101這一串二進制忽匈,在表示整數(shù)的時候它表示221房午,但是如果放在JAVA的class文件當中,它可能代表一個JVM的指令脉幢。

程序的編譯

對于一個簡單的C語言程序來說歪沃,一般要經(jīng)過預處理器嗦锐、編譯器嫌松、匯編器和鏈接器的處理,才能被翻譯成一段可執(zhí)行的二進制文件奕污。

比如對于一個簡單的C語言程序萎羔,如下。

#include

int main(){

printf("hello,world\n");

}

我們保存在hello.c當中碳默,那么它的翻譯過程如下贾陷。


程序的運行

程序的運行由解釋器負責,它將逐個解釋最終生成的二進制文件并執(zhí)行嘱根。

計算機的硬件組成

首先髓废,我們來看下計算機中硬件的大致分布,如下圖该抒。


其中有幾個非常重要的部分慌洪,一一看下都是什么作用。

總線:貫穿整個系統(tǒng)的是一組電子管道(其實就是傳輸數(shù)據(jù)的線路),也就是總線冈爹∮抗ィ總線傳送的是字,字的大小與系統(tǒng)相關频伤,比如在32位操作系統(tǒng)當中恳谎,一個字是4個字節(jié)。

I/O設備:I/O設備是系統(tǒng)與外部聯(lián)系的通道憋肖。I/O設備(鍵盤因痛、鼠標、顯示器等)由控制器(USB控制器)或者適配器(圖形適配器岸更,也就是顯卡)與I/O總線相連婚肆,兩者的區(qū)別在于一個是主板上的芯片組,一個是主板插槽上的卡坐慰。

主存:它是計算機中的一個臨時存儲設備较性,在處理器執(zhí)行程序的時候,主存就是臨時存放數(shù)據(jù)的地方结胀。物理上來說赞咙,它是由動態(tài)隨即存取存儲器芯片組成,邏輯上來說糟港,它是一組連續(xù)的字節(jié)數(shù)組攀操,每一個字節(jié)都有唯一的地址。

處理器:全稱中央處理單元秸抚,是解釋存儲在主存中指令的引擎速和。處理器的核心是一個程序計數(shù)器,它在整個計算機運行的期間都會指向一個主存中的一個內存地址剥汤,而地址當中則是一個計算機指令颠放。處理器所做的,就是不停的執(zhí)行程序計數(shù)器所指向的每一條指令吭敢。處理器所做的操作是圍繞主存碰凶、寄存器文件以及算術/邏輯單元進行的,這里面處理器做的最多的動作就是加載(從主存將數(shù)據(jù)復制到寄存器)鹿驼、存儲(從寄存器將數(shù)據(jù)復制到主存)欲低、操作(將兩個寄存器的內容復制到算術/邏輯單元進行操作,結果會再次復制到寄存器)以及跳轉(改變程序計數(shù)器當中的內容)畜晰。

處理器當中提到的是指令集結構砾莱,不過實際當中指令集的實現(xiàn)是非常復雜的,這么做的目的是為了加速CPU的運算速度凄鼻。我們可以這樣去區(qū)分指令集機構以及微體系結構腊瑟,指令集結構是指令集的抽象描述面哼,而微體系結構則是這個抽象描述的某一個具體實現(xiàn),類似于JAVA虛擬機與JAVA虛擬機實現(xiàn)的關系扫步。

本章小結

計算機是由軟件與硬件組成的魔策,而硬件又包括了總線、I/O設備河胎、主存以及處理器闯袒,其中信息是由位以及上下文表示的,而信息則是從I/O設備以位的形式通過總線進入主存游岳,然后由處理器從主存將信息取出處理政敢。

一個程序的執(zhí)行,是經(jīng)歷了預處理器胚迫、編譯器喷户、匯編器以及鏈接器的處理之后,才最終成為可執(zhí)行的文件访锻。當程序成為可執(zhí)行文件時就已經(jīng)保存在了磁盤上褪尝,具體的執(zhí)行過程在下一章再總結。

作者:zuoxiaolong(左瀟龍)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末期犬,一起剝皮案震驚了整個濱河市河哑,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌龟虎,老刑警劉巖璃谨,帶你破解...
    沈念sama閱讀 216,744評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異鲤妥,居然都是意外死亡佳吞,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,505評論 3 392
  • 文/潘曉璐 我一進店門棉安,熙熙樓的掌柜王于貴愁眉苦臉地迎上來底扳,“玉大人,你說我怎么就攤上這事垂券』ㄑ危” “怎么了?”我有些...
    開封第一講書人閱讀 163,105評論 0 353
  • 文/不壞的土叔 我叫張陵菇爪,是天一觀的道長。 經(jīng)常有香客問我柒昏,道長凳宙,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,242評論 1 292
  • 正文 為了忘掉前任职祷,我火速辦了婚禮氏涩,結果婚禮上届囚,老公的妹妹穿的比我還像新娘。我一直安慰自己是尖,他們只是感情好意系,可當我...
    茶點故事閱讀 67,269評論 6 389
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著饺汹,像睡著了一般蛔添。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上兜辞,一...
    開封第一講書人閱讀 51,215評論 1 299
  • 那天迎瞧,我揣著相機與錄音,去河邊找鬼逸吵。 笑死凶硅,一個胖子當著我的面吹牛,可吹牛的內容都是我干的扫皱。 我是一名探鬼主播足绅,決...
    沈念sama閱讀 40,096評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼韩脑!你這毒婦竟也來了编检?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 38,939評論 0 274
  • 序言:老撾萬榮一對情侶失蹤扰才,失蹤者是張志新(化名)和其女友劉穎允懂,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體衩匣,經(jīng)...
    沈念sama閱讀 45,354評論 1 311
  • 正文 獨居荒郊野嶺守林人離奇死亡蕾总,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,573評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了琅捏。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片生百。...
    茶點故事閱讀 39,745評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖柄延,靈堂內的尸體忽然破棺而出蚀浆,到底是詐尸還是另有隱情,我是刑警寧澤搜吧,帶...
    沈念sama閱讀 35,448評論 5 344
  • 正文 年R本政府宣布市俊,位于F島的核電站,受9級特大地震影響滤奈,放射性物質發(fā)生泄漏摆昧。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,048評論 3 327
  • 文/蒙蒙 一蜒程、第九天 我趴在偏房一處隱蔽的房頂上張望绅你。 院中可真熱鬧伺帘,春花似錦、人聲如沸忌锯。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,683評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽偶垮。三九已至张咳,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間针史,已是汗流浹背晶伦。 一陣腳步聲響...
    開封第一講書人閱讀 32,838評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留啄枕,地道東北人婚陪。 一個月前我還...
    沈念sama閱讀 47,776評論 2 369
  • 正文 我出身青樓,卻偏偏與公主長得像频祝,于是被迫代替她去往敵國和親泌参。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,652評論 2 354

推薦閱讀更多精彩內容