国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

這篇具有很好參考價(jià)值的文章主要介紹了勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

前言

現(xiàn)在AI崛起,計(jì)算機(jī)已經(jīng)成為我們不可或缺的一部分,幾乎在所有行業(yè)和領(lǐng)域都有廣泛應(yīng)用 。
五一已經(jīng)快要過(guò)去了,程序員們應(yīng)該都放假了,那我們是不是應(yīng)該去了解了解我們的伙伴——計(jì)算機(jī),了去解計(jì)算機(jī)是怎樣工作的?
? ? ? ? ? ? ?
下面我會(huì)盡量使用通俗的語(yǔ)言去解釋計(jì)算機(jī)是如何工作的, 希望讓大家了解計(jì)算機(jī)的核心工作機(jī)制后,打破 計(jì)算機(jī)的神秘感,并且有利于理解我們平時(shí)編程時(shí)的一些行為、動(dòng)作的歷史淵源。
我們先來(lái)了解了解計(jì)算機(jī)的發(fā)展史!

?計(jì)算機(jī)發(fā)展史

計(jì)算的需求在人類(lèi)的歷史中是廣泛存在的,發(fā)展大體經(jīng)歷了從 一般計(jì)算工具 機(jī)械計(jì)算機(jī) 到目前的 電子計(jì)算機(jī) 的發(fā)展歷程。
其實(shí)計(jì)算機(jī)在很早以前就處處是它的影子:

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

?計(jì)算機(jī)發(fā)展的主要?dú)v程

  1. 機(jī)械計(jì)算時(shí)代:在19世紀(jì)和20世紀(jì)初期,人們使用機(jī)械裝置進(jìn)行計(jì)算。最早的計(jì)算機(jī)由查爾斯·巴貝奇設(shè)計(jì),稱(chēng)為“分析機(jī)”。但是,這種機(jī)械計(jì)算機(jī)很大,準(zhǔn)確度也不高。
  2. 電子管計(jì)算時(shí)代:在20世紀(jì)30年代,電子管的發(fā)明引領(lǐng)了計(jì)算機(jī)的發(fā)展。美國(guó)的阿塔納索夫-貝瑞計(jì)算機(jī)(Atanasoff-Berry Computer)被認(rèn)為是第一臺(tái)真正的電子計(jì)算機(jī)。而艾倫·圖靈設(shè)計(jì)的英國(guó)Bombe解密設(shè)備也是采用電子管技術(shù)。
  3. 晶體管計(jì)算時(shí)代:20世紀(jì)50年代,晶體管取代了電子管,成為新一代計(jì)算機(jī)的核心部件。這使得計(jì)算機(jī)變得更小、更快、更可靠和更經(jīng)濟(jì)。IBM公司的System/360系列計(jì)算機(jī),是晶體管計(jì)算機(jī)的杰出代表。
  4. 集成電路計(jì)算時(shí)代:20世紀(jì)60年代,集成電路的發(fā)明帶來(lái)了計(jì)算機(jī)革命。集成電路是將多個(gè)晶體管、電阻器、電容器等元件集成在一起形成的微型電路板,可以大幅度壓縮計(jì)算機(jī)的體積和成本。DEC公司的PDP-8和IBM公司的System/370系列計(jì)算機(jī)是典型的使用集成電路技術(shù)的計(jì)算機(jī)。
  5. 微處理器計(jì)算時(shí)代:20世紀(jì)70年代,Intel公司推出了第一款微處理器芯片(Intel 4004),這標(biāo)志著個(gè)人計(jì)算機(jī)的誕生。微處理器是一種由CPU、控制單元和存儲(chǔ)器組成的芯片,它使得整個(gè)計(jì)算機(jī)系統(tǒng)可以集成在一個(gè)小型設(shè)備中。Apple II和IBM PC是微處理器計(jì)算機(jī)的代表。
  6. 個(gè)人計(jì)算機(jī)時(shí)代:20世紀(jì)80年代,個(gè)人計(jì)算機(jī)開(kāi)始走向成熟。IBM PC及其兼容機(jī)成為最主流的個(gè)人計(jì)算機(jī),Macintosh則成為了另一種受歡迎的操作系統(tǒng)。計(jì)算機(jī)逐漸普及到家庭和辦公場(chǎng)所,從此改變了人們的工作和生活方式。
  7. 互聯(lián)網(wǎng)時(shí)代:20世紀(jì)90年代,互聯(lián)網(wǎng)的普及和發(fā)展徹底改變了計(jì)算機(jī)的應(yīng)用方式。人們可以通過(guò)互聯(lián)網(wǎng)進(jìn)行電子郵件、在線(xiàn)購(gòu)物、社交媒體等活動(dòng),計(jì)算機(jī)已經(jīng)成為人們生活和工作中不可或缺的一部分。
  8. 移動(dòng)計(jì)算時(shí)代:21世紀(jì)以來(lái),移動(dòng)計(jì)算開(kāi)始崛起。智能手機(jī)和平板電腦的出現(xiàn),使得人們隨時(shí)隨地可以進(jìn)行各種計(jì)算和通訊活動(dòng)。此外,云計(jì)算技術(shù)也逐漸發(fā)展壯大,為人們提供更方便、高效、安全的計(jì)算資源。
人類(lèi)對(duì)計(jì)算的需求,驅(qū)動(dòng)我們不斷的發(fā)明、改善計(jì)算機(jī)。目前這個(gè)時(shí)代是 電子計(jì)算機(jī) 的時(shí)代,發(fā)展的 潮流是:更快速、更穩(wěn)定、更微型。

?圖靈與馮諾依曼

說(shuō)起計(jì)算機(jī)我們首先要了解的就是這兩位祖師爺,一位是從理論上奠定了計(jì)算機(jī)基礎(chǔ),另一位是在發(fā)明電子計(jì)算機(jī)中所起到關(guān)鍵性作用,被西方人譽(yù)為“計(jì)算機(jī)之父”。

圖靈

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

?誰(shuí)年輕時(shí)不是一個(gè)帥哥呢???

?人物經(jīng)歷

艾倫·麥席森·圖靈(Alan Mathison Turing)是一位英國(guó)數(shù)學(xué)家、邏輯學(xué)家和密碼學(xué)家,被譽(yù)為計(jì)算機(jī)科學(xué)之父。他的一生經(jīng)歷充滿(mǎn)了傳奇色彩。

1912年6月23日,圖靈出生在英國(guó)的倫敦,是一個(gè)富有的家庭的兒子。在小時(shí)候,他就表現(xiàn)出了超群的智力和對(duì)數(shù)學(xué)的天賦。他自幼勤奮好學(xué),閱讀了大量的數(shù)學(xué)書(shū)籍和論文,十分喜歡研究數(shù)學(xué)問(wèn)題。

1929年,圖靈考入劍橋大學(xué)國(guó)王學(xué)院學(xué)習(xí)數(shù)學(xué),并在1931年獲得了數(shù)學(xué)榮譽(yù)學(xué)士學(xué)位。隨后,他繼續(xù)在劍橋大學(xué)攻讀博士學(xué)位,并在1936年發(fā)表了《可計(jì)算數(shù)及其在問(wèn)題上的應(yīng)用》一文,提出了“圖靈機(jī)”的概念,這是計(jì)算機(jī)科學(xué)中一個(gè)非常重要的理論基礎(chǔ)。

到了二戰(zhàn)期間,圖靈加入了英國(guó)情報(bào)局,負(fù)責(zé)破解德國(guó)的密碼系統(tǒng)。他主導(dǎo)開(kāi)發(fā)了一種名為“圖靈機(jī)器”的機(jī)械設(shè)備,可以自動(dòng)破解德國(guó)軍方的密電。這項(xiàng)工作對(duì)于英國(guó)在二戰(zhàn)期間的勝利起到了重要的作用。

戰(zhàn)爭(zhēng)結(jié)束后,圖靈繼續(xù)在劍橋大學(xué)從事計(jì)算機(jī)和人工智能的研究。他是第一個(gè)提出“人工智能”一詞的人,也是計(jì)算機(jī)科學(xué)中最有影響力、最具創(chuàng)造性的人物之一。不幸的是,他的生命經(jīng)歷被彩虹情色事件打破。1952年,他因?yàn)樯嫦油詰俣欢ㄗ铮黄冉邮芎蔂柮芍委?,并失去了?guó)家安全機(jī)構(gòu)的任職資格。在此背景下,1954年6月7日,圖靈在自己家中去世,死因是氰化鉀中毒,享年42歲。

直到20世紀(jì)70年代,才有越來(lái)越多的人們開(kāi)始重視圖靈的成就和貢獻(xiàn)。1983年,英國(guó)政府正式宣布向圖靈道歉,稱(chēng)他是一位“偉大的數(shù)學(xué)家”,并對(duì)他所受到的不公當(dāng)場(chǎng)表示遺憾。1999年,在《時(shí)代周刊》評(píng)選的“20世紀(jì)最杰出100人”名單上,圖靈名列第46位。

總的來(lái)說(shuō),圖靈是一位偉大的數(shù)學(xué)家、邏輯學(xué)家和密碼學(xué)家,他的成就和貢獻(xiàn)影響了整個(gè)計(jì)算機(jī)科學(xué)領(lǐng)域,并為人工智能的發(fā)展奠定了基礎(chǔ)。他的一生經(jīng)歷雖然注定有些不幸和戲劇性,但是他所留下來(lái)的精神和思想,將永存于計(jì)算機(jī)科學(xué)史上。

?圖靈機(jī)

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

圖靈機(jī),又稱(chēng)圖靈計(jì)算機(jī)指一個(gè)抽象的機(jī)器,于1936年提出的一種抽象的計(jì)算模型,即將人們使用紙筆進(jìn)行數(shù)學(xué)運(yùn)算的過(guò)程進(jìn)行抽象,由一個(gè)虛擬的機(jī)器替代人類(lèi)進(jìn)行數(shù)學(xué)運(yùn)算。它有一條無(wú)限長(zhǎng)的紙帶,紙帶分成了一個(gè)一個(gè)的小方格,每個(gè)方格有不同的顏色。有一個(gè)機(jī)器頭在紙帶上移來(lái)移去。機(jī)器頭有一組內(nèi)部狀態(tài),還有一些固定的程序。在每個(gè)時(shí)刻,機(jī)器頭都要從當(dāng)前紙帶上讀入一個(gè)方格信息,然后結(jié)合自己的內(nèi)部狀態(tài)查找程序表,根據(jù)程序輸出信息到紙帶方格上,并轉(zhuǎn)換自己的內(nèi)部狀態(tài),然后進(jìn)行移動(dòng)?。

?想詳細(xì)了解可看:?什么是圖靈機(jī) - 知乎 (zhihu.com)

?馮諾依曼

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

?網(wǎng)上流傳甚廣的一張圖:年輕人,你渴望力量嗎???(可見(jiàn)大家對(duì)祖師爺?shù)某绨荩?/p>

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

人物經(jīng)歷

約翰·馮·諾依曼(John von Neumann)是一位匈牙利出生的美國(guó)數(shù)學(xué)家、物理學(xué)家和計(jì)算機(jī)科學(xué)家,也是現(xiàn)代計(jì)算機(jī)體系結(jié)構(gòu)和程序設(shè)計(jì)的重要先驅(qū)之一。

1903年12月28日,馮諾依曼出生在匈牙利的布達(dá)佩斯市,是一個(gè)富裕的猶太人家庭的孩子。他自幼表現(xiàn)出了卓越的智力和對(duì)數(shù)學(xué)的天賦。在成長(zhǎng)過(guò)程中,他接觸了許多不同領(lǐng)域的知識(shí),并表現(xiàn)出了對(duì)物理學(xué)、化學(xué)和哲學(xué)等方面的濃厚興趣。

1921年,馮諾依曼進(jìn)入柏林大學(xué)學(xué)習(xí)化學(xué),并于1925年獲得了博士學(xué)位。隨后,他轉(zhuǎn)向了數(shù)學(xué)領(lǐng)域,并成為了德國(guó)著名數(shù)學(xué)家希爾伯特的學(xué)生之一。在此期間,他發(fā)表了一系列關(guān)于量子力學(xué)、矩陣論和函數(shù)分析等方面的論文,展現(xiàn)了卓越的數(shù)學(xué)才華。

1930年,馮諾依曼來(lái)到美國(guó),并開(kāi)始在普林斯頓大學(xué)擔(dān)任數(shù)學(xué)系教授。在普林斯頓工作的期間,他與愛(ài)因斯坦等人合作,成為了美國(guó)原子彈計(jì)劃的顧問(wèn)之一,并對(duì)核武器的研制做出了重要貢獻(xiàn)。

二戰(zhàn)結(jié)束后,馮諾依曼繼續(xù)從事計(jì)算機(jī)和物理學(xué)的研究,并提出了現(xiàn)代計(jì)算機(jī)體系結(jié)構(gòu)的重要概念(馮諾依曼體系)。他是第一個(gè)將計(jì)算機(jī)內(nèi)部存儲(chǔ)程序的思想化為實(shí)際方案的人,并提出了“存儲(chǔ)程序計(jì)算機(jī)”和“指令集架構(gòu)”的概念。這些概念對(duì)現(xiàn)代計(jì)算機(jī)的設(shè)計(jì)和開(kāi)發(fā)產(chǎn)生了深遠(yuǎn)的影響,也為馮諾依曼贏得了“計(jì)算機(jī)科學(xué)之父”的美譽(yù)。

1955年,馮諾依曼被診斷出罕見(jiàn)的骨髓增生性疾病,并于當(dāng)年2月8日去世,享年51歲。他留下來(lái)的貢獻(xiàn)和成就不僅影響了計(jì)算機(jī)科學(xué)領(lǐng)域,也影響了物理學(xué)、數(shù)學(xué)和其他許多領(lǐng)域的發(fā)展。

總的來(lái)說(shuō),馮諾依曼的一生經(jīng)歷充滿(mǎn)了傳奇色彩。他是一位極具才華的數(shù)學(xué)家、物理學(xué)家和計(jì)算機(jī)科學(xué)家,為現(xiàn)代計(jì)算機(jī)體系結(jié)構(gòu)和程序設(shè)計(jì)的發(fā)展做出了重要貢獻(xiàn)。他對(duì)于人類(lèi)思維方式的影響和貢獻(xiàn)將永存于歷史長(zhǎng)河中。

上面說(shuō)到馮諾依曼體系,直到現(xiàn)在大部分計(jì)算機(jī)仍然遵守 馮諾依曼體系結(jié)構(gòu)。下面我就來(lái)講講馮諾依曼體系

?馮諾依曼體系

馮諾依曼體系是一種計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)和工作原理,也稱(chēng)為馮諾依曼計(jì)算機(jī)體系結(jié)構(gòu)。該體系結(jié)構(gòu)由匈牙利數(shù)學(xué)家約翰·馮諾伊曼于1945年提出,被譽(yù)為現(xiàn)代計(jì)算機(jī)體系結(jié)構(gòu)的奠基之作。

馮諾依曼體系結(jié)構(gòu)主要分為四個(gè)部分:存儲(chǔ)器、算術(shù)邏輯單元(ALU)、控制器和輸入/輸出(I/O)設(shè)備。其中,存儲(chǔ)器用于存儲(chǔ)指令和數(shù)據(jù),ALU負(fù)責(zé)進(jìn)行算術(shù)、邏輯運(yùn)算等操作,控制器則負(fù)責(zé)控制指令的執(zhí)行過(guò)程,而I/O設(shè)備則用于與外部世界交互。

在馮諾依曼體系結(jié)構(gòu)中,所有指令和數(shù)據(jù)都以二進(jìn)制形式存儲(chǔ)在內(nèi)存中,CPU通過(guò)總線(xiàn)來(lái)讀取和寫(xiě)入內(nèi)存中的數(shù)據(jù)。CPU可以根據(jù)指令集中的指令來(lái)執(zhí)行不同的操作,如加法、減法、乘法、除法等算術(shù)運(yùn)算,以及邏輯運(yùn)算、比較運(yùn)算、移位等操作。同時(shí),CPU還可以通過(guò)控制器來(lái)控制程序的執(zhí)行流程,實(shí)現(xiàn)分支、循環(huán)、函數(shù)調(diào)用等功能。所有這些操作都是由指令集中的指令來(lái)實(shí)現(xiàn)的。

馮·諾依曼體系的一大優(yōu)勢(shì)是其具有較高的通用性,即可以運(yùn)行各種不同的程序。同時(shí),由于其存儲(chǔ)程序的特性,使得修改程序變得更加方便,這是其他類(lèi)型計(jì)算機(jī)體系結(jié)構(gòu)所不具備的優(yōu)勢(shì)之一。

馮諾依曼體系結(jié)構(gòu)的設(shè)計(jì)使得計(jì)算機(jī)能夠以通用的方式進(jìn)行程序設(shè)計(jì),并且能夠?qū)⒂?jì)算機(jī)內(nèi)部的運(yùn)算和存儲(chǔ)空間分離開(kāi)來(lái)。這對(duì)于現(xiàn)代計(jì)算機(jī)科學(xué)的發(fā)展具有歷史性的意義。同時(shí),馮諾依曼體系結(jié)構(gòu)的出現(xiàn)也標(biāo)志著計(jì)算機(jī)科學(xué)從硬件設(shè)計(jì)上實(shí)現(xiàn)了程序可重用的革命。

我只是簡(jiǎn)單介紹了一下馮諾依曼體系,想詳細(xì)了解的小伙伴可看三分鐘帶你了解馮.諾依曼結(jié)構(gòu) - 知乎 (zhihu.com)

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

  • CPU 中央處理器: 進(jìn)行算術(shù)運(yùn)算和邏輯判斷.
  • 存儲(chǔ)器: 分為外存和內(nèi)存, 用于存儲(chǔ)數(shù)據(jù)(使用二進(jìn)制方式存儲(chǔ))
  • 輸入設(shè)備: 用戶(hù)給計(jì)算機(jī)發(fā)號(hào)施令的設(shè)備.
  • 輸出設(shè)備: 計(jì)算機(jī)用戶(hù)匯報(bào)結(jié)果的設(shè)備.

?計(jì)算機(jī)小常識(shí):

針對(duì)存儲(chǔ)空間
硬盤(pán) > 內(nèi)存 >> CPU
針對(duì)數(shù)據(jù)訪(fǎng)問(wèn)速度 ?
CPU >> 內(nèi)存 > 硬盤(pán)

計(jì)算機(jī)的工作原理

計(jì)算機(jī)的工作原理可以簡(jiǎn)單地概括為:輸入、處理和輸出。

  1. 輸入(Input):計(jì)算機(jī)需要從外界獲取數(shù)據(jù)和指令,例如通過(guò)鍵盤(pán)、鼠標(biāo)、掃描儀等設(shè)備輸入數(shù)據(jù),并通過(guò)網(wǎng)絡(luò)或存儲(chǔ)設(shè)備讀取程序。

  2. 處理(Processing):計(jì)算機(jī)對(duì)輸入的數(shù)據(jù)和指令進(jìn)行處理,并產(chǎn)生結(jié)果。處理過(guò)程包括數(shù)據(jù)運(yùn)算、邏輯判斷、控制流程等操作。這是計(jì)算機(jī)最核心的功能,主要由 CPU(中央處理器)和內(nèi)存組成,并通過(guò)各種輸入/輸出設(shè)備與用戶(hù)交互。

  3. 輸出(Output):計(jì)算機(jī)將處理結(jié)果輸出給用戶(hù),如顯示器、音頻設(shè)備、打印機(jī)等。用戶(hù)可以看到或聽(tīng)到計(jì)算機(jī)處理的結(jié)果。

在計(jì)算機(jī)內(nèi)部,數(shù)據(jù)和指令通常以二進(jìn)制形式表示和處理。二進(jìn)制是一種只包含0和1的數(shù)字系統(tǒng),與十進(jìn)制相比,它可以更直接地映射到計(jì)算機(jī)存儲(chǔ)器中的電子信號(hào)。數(shù)據(jù)和指令都可以被存儲(chǔ)在計(jì)算機(jī)內(nèi)存(RAM)中,由CPU通過(guò)總線(xiàn)訪(fǎng)問(wèn)。

計(jì)算機(jī)的工作原理基于通用圖靈機(jī)模型。這個(gè)模型定義了一個(gè)機(jī)器狀態(tài)、指令集、數(shù)據(jù)格式和輸入輸出方式的規(guī)范,可應(yīng)用于任何計(jì)算機(jī)體系結(jié)構(gòu)。實(shí)際上,現(xiàn)代計(jì)算機(jī)體系結(jié)構(gòu)包括 CPU、內(nèi)存、I/O 控制器等組件,并使用操作系統(tǒng)來(lái)協(xié)調(diào)它們的工作。操作系統(tǒng)提供了許多高級(jí)函數(shù)和服務(wù),隱藏了底層硬件細(xì)節(jié),使得程序員可以更容易地編寫(xiě)程序。

可以看出cpu是計(jì)算機(jī)的靈魂所在,那下面我們來(lái)認(rèn)識(shí)認(rèn)識(shí)cpu,看看cpu是如何工作的。

cpu的基本工作流程

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

CPU(中央處理器)是計(jì)算機(jī)的核心部件,它的工作流程可以分為以下三個(gè)步驟。

????????1、取指令階段(Instruction Fetch)??

CPU從內(nèi)存中讀取下一條要執(zhí)行的指令,并將其存儲(chǔ)在指令寄存器中。這些指令按照地址順序存放在內(nèi)存中,由程序計(jì)數(shù)器(Program Counter,PC)來(lái)記錄下一條指令的地址。取指令階段通常需要多次執(zhí)行,以讀取多個(gè)指令。

????????2、解碼階段(Instruction Decode)??

CPU從指令寄存器中讀取指令,并對(duì)其進(jìn)行解碼。在這個(gè)階段,CPU會(huì)確定該指令需要對(duì)哪些數(shù)據(jù)進(jìn)行操作,以及操作的方式和結(jié)果存放的位置等信息。這些信息被存儲(chǔ)在控制單元的控制信號(hào)中,用于指導(dǎo)CPU后續(xù)的執(zhí)行過(guò)程。

????????3、執(zhí)行階段(Execution)??

CPU根據(jù)指令解碼階段提供的控制信號(hào),執(zhí)行相應(yīng)的操作,并將結(jié)果存儲(chǔ)到寄存器或內(nèi)存中。執(zhí)行階段包括算術(shù)邏輯運(yùn)算、數(shù)據(jù)傳輸和控制轉(zhuǎn)移等操作。其中,算術(shù)邏輯運(yùn)算包括加法、減法、乘法、除法、位運(yùn)算和邏輯運(yùn)算等;數(shù)據(jù)傳輸包括從寄存器或內(nèi)存中讀取數(shù)據(jù),以及將數(shù)據(jù)寫(xiě)入寄存器或內(nèi)存中;控制轉(zhuǎn)移包括跳轉(zhuǎn)、分支和函數(shù)調(diào)用等操作。

以上三個(gè)階段構(gòu)成了CPU的主要工作流程。在實(shí)際應(yīng)用中,為了提高CPU的性能和效率,通常會(huì)采用流水線(xiàn)(Pipeline)技術(shù),使多條指令可以同時(shí)執(zhí)行不同的階段。這樣可以大大縮短執(zhí)行時(shí)間,提高計(jì)算機(jī)的運(yùn)行速度。

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

當(dāng)然,電子計(jì)算機(jī)中的 CPU 可不像我們剛才那樣,靠自己來(lái)驅(qū)動(dòng)這個(gè)周期的運(yùn)轉(zhuǎn),而是靠背后一個(gè)時(shí)鐘來(lái)進(jìn)行周期驅(qū)動(dòng)的。
時(shí)鐘頻率(又譯:時(shí)鐘頻率速度,英語(yǔ): clock rate),是指同步電路中時(shí)鐘的基礎(chǔ)頻率,它以“若干次周期每秒”來(lái)度量,量度單位采用 SI單位 赫茲(Hz)。它是評(píng)定 CPU 性能的重要指標(biāo)。一般來(lái)說(shuō)主頻數(shù)字值越大越好。
時(shí)鐘頻率_百度百科 (baidu.com)
時(shí)鐘頻率是個(gè)什么概念?? - 知乎

?勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

cpu要完成上面工作,需要邏輯門(mén)算術(shù)邏輯單元 ALU、寄存器(Register) 和內(nèi)存(RAM)、控制單元 CU、指令多種組件相互配合,可能有人不認(rèn)識(shí)這些組件,下面我就來(lái)介紹介紹它們。

?邏輯門(mén)

電子開(kāi)關(guān) —— 機(jī)械繼電器(Mechanical Relay)

機(jī)械繼電器,也稱(chēng)為電磁繼電器,是一種基于電磁原理工作的電氣開(kāi)關(guān)。它由線(xiàn)圈、鐵芯、觸點(diǎn)和彈簧等組成。當(dāng)線(xiàn)圈通電時(shí),會(huì)產(chǎn)生一個(gè)磁場(chǎng),使得鐵芯被吸引,同時(shí)觸點(diǎn)也會(huì)跟隨移動(dòng)。當(dāng)線(xiàn)圈斷電時(shí),鐵芯會(huì)失去磁性,觸點(diǎn)則會(huì)回到原位。通過(guò)這樣的方式,機(jī)械繼電器可以實(shí)現(xiàn)電路的開(kāi)關(guān)控制。機(jī)械繼電器可以用于各種電氣設(shè)備中,如燈泡、家用電器、電機(jī)和汽車(chē)電氣系統(tǒng)等。

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

門(mén)電路(Gate Circuit)

門(mén)電路指的是一種基本邏輯電路,用于實(shí)現(xiàn)不同的邏輯函數(shù)。門(mén)電路通常由晶體管、二極管和其他電子元件組成。它們分為以下幾種類(lèi)型:

  1. 與門(mén)(AND Gate):當(dāng)所有輸入均為高電平時(shí),輸出為高電平。

  2. 或門(mén)(OR Gate):當(dāng)任一輸入為高電平時(shí),輸出為高電平。

  3. 非門(mén)(NOT Gate):輸入為高電平時(shí),輸出為低電平;輸入為低電平時(shí),輸出為高電平。

  4. 異或門(mén)(XOR Gate):當(dāng)輸入相同時(shí),輸出為低電平;當(dāng)輸入不同時(shí),輸出為高電平。

  5. 與非門(mén)(NAND Gate):當(dāng)所有輸入均為高電平時(shí),輸出為低電平。

  6. 或非門(mén)(NOR Gate):當(dāng)任一輸入為高電平時(shí),輸出為低電平。

除了以上提到的基本門(mén)電路之外,還有許多其他的門(mén)電路,如三態(tài)門(mén)(Tri-state Gate)、模擬開(kāi)關(guān)(Analog Switch)、觸發(fā)器(Flip-flop)等。在數(shù)字電子學(xué)中,門(mén)電路是構(gòu)建其他數(shù)字電路的基礎(chǔ)。

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

算術(shù)邏輯單元 ALU(Arithmetic & Logic Unit)

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

算術(shù)邏輯單元(ALU)是計(jì)算機(jī)中的一個(gè)核心組件,用于執(zhí)行算術(shù)和邏輯運(yùn)算。ALU 可以對(duì)兩個(gè)二進(jìn)制數(shù)進(jìn)行加、減、乘、除等算術(shù)運(yùn)算,并且還可以進(jìn)行與、或、非、異或等邏輯運(yùn)算。

一個(gè)標(biāo)準(zhǔn)的 ALU 通常由以下幾個(gè)部分組成:

  1. 數(shù)據(jù)輸入:用于接收要進(jìn)行計(jì)算的數(shù)據(jù),通常包括兩個(gè)二進(jìn)制數(shù)和一個(gè)控制位。

  2. 運(yùn)算器:根據(jù)控制位決定所需的運(yùn)算類(lèi)型,如加法、減法、乘法、除法、比較、位移等。

  3. 狀態(tài)寄存器:用于記錄運(yùn)算結(jié)果的狀態(tài)信息,如是否進(jìn)位、是否溢出等。

  4. 數(shù)據(jù)輸出:將運(yùn)算結(jié)果輸出到其他部件或總線(xiàn)上。

ALU 在 CPU 中發(fā)揮著重要的作用,它能夠快速有效地執(zhí)行各種算術(shù)和邏輯操作,從而實(shí)現(xiàn)計(jì)算機(jī)的各種功能。實(shí)際上,大多數(shù) CPU 都使用了多個(gè) ALU,以提高計(jì)算效率并支持并行計(jì)算。此外,ALU 也被廣泛應(yīng)用于數(shù)字信號(hào)處理(DSP)、嵌入式系統(tǒng)、通信設(shè)備等領(lǐng)域。

由于算術(shù)邏輯單元(ALU)性能的高低對(duì)計(jì)算機(jī)整體性能有著很大的影響,因此現(xiàn)代 CPU 通常采用多級(jí)流水線(xiàn)結(jié)構(gòu)和超標(biāo)量技術(shù)來(lái)提高邏輯單元的效率和性能。

?算術(shù)單元(Arithmetic Unit)

算數(shù)單元,通常也稱(chēng)為算術(shù)部件或運(yùn)算器,是算術(shù)邏輯單元一個(gè)核心組成部分。

算術(shù)單元通常由一組加法器、乘法器、除法器和移位器等門(mén)電路組成,以實(shí)現(xiàn)各種不同的算術(shù)操作,如加法、減法、乘法、除法位移、取反等其他運(yùn)算。

在計(jì)算機(jī)中,CPU 通常包含一個(gè)或多個(gè)算術(shù)單元,用于處理各種算術(shù)運(yùn)算。當(dāng) CPU 需要進(jìn)行算術(shù)運(yùn)算時(shí),它會(huì)將數(shù)據(jù)送入算術(shù)單元,并根據(jù)指令選擇需要進(jìn)行的運(yùn)算類(lèi)型。算術(shù)單元計(jì)算出結(jié)果后,將其返回給 CPU 進(jìn)行下一步操作。

總的來(lái)說(shuō),算術(shù)單元是計(jì)算機(jī)中非常重要的組件之一,它通過(guò)實(shí)現(xiàn)各種算術(shù)運(yùn)算來(lái)支持計(jì)算機(jī)的各種應(yīng)用,如數(shù)據(jù)處理、圖像處理、音頻處理等。

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

?邏輯單元(Logic Unit)

邏輯單元(Logic Unit,簡(jiǎn)稱(chēng)LU)是計(jì)算機(jī)中的一個(gè)核心組件,用于執(zhí)行邏輯運(yùn)算。它通常由一組邏輯門(mén)電路(如與門(mén)、或門(mén)、非門(mén)、異或門(mén)等)組成,以實(shí)現(xiàn)各種不同的邏輯操作。

邏輯單元主要負(fù)責(zé)執(zhí)行以下幾種基本邏輯運(yùn)算:

  1. 與運(yùn)算:將兩個(gè)二進(jìn)制數(shù)的對(duì)應(yīng)位進(jìn)行“與”操作,并輸出結(jié)果。

  2. 或運(yùn)算:將兩個(gè)二進(jìn)制數(shù)的對(duì)應(yīng)位進(jìn)行“或”操作,并輸出結(jié)果。

  3. 非運(yùn)算:對(duì)一個(gè)二進(jìn)制數(shù)的每一位進(jìn)行取反操作,并輸出結(jié)果。

  4. 異或運(yùn)算:將兩個(gè)二進(jìn)制數(shù)的對(duì)應(yīng)位進(jìn)行“異或”操作,并輸出結(jié)果。

在計(jì)算機(jī)中,邏輯單元通常與算術(shù)單元(ALU)結(jié)合使用,形成更加完整的算數(shù)邏輯單元(ALU)。當(dāng) CPU 需要執(zhí)行邏輯運(yùn)算時(shí),它會(huì)將數(shù)據(jù)送入邏輯單元,并根據(jù)指令選擇需要進(jìn)行的運(yùn)算類(lèi)型。邏輯單元會(huì)計(jì)算出結(jié)果,并將其返回給 CPU 進(jìn)行下一步操作。

總的來(lái)說(shuō),在現(xiàn)代計(jì)算機(jī)中,邏輯單元也是非常重要的組件之一,它通過(guò)實(shí)現(xiàn)各種邏輯運(yùn)算來(lái)支持計(jì)算機(jī)的各種應(yīng)用,如控制決策、布爾邏輯運(yùn)算、比較判斷等。

ALU 符號(hào)

現(xiàn)代的計(jì)算機(jī)中的 ALU 部件非常強(qiáng)大,復(fù)雜度遠(yuǎn)遠(yuǎn)超過(guò)了我們的想象,32 位甚至 64 位基本已經(jīng)普及全球了。

現(xiàn)代CPU中的ALU通常支持浮點(diǎn)數(shù)運(yùn)算、SIMD指令(單指令多數(shù)據(jù)),以及更加復(fù)雜的指令集和多級(jí)流水線(xiàn)結(jié)構(gòu)。這些先進(jìn)的技術(shù)讓我們能夠進(jìn)行更加高效、精確、復(fù)雜的計(jì)算任務(wù),從而推動(dòng)了科學(xué)技術(shù)的發(fā)展和人類(lèi)社會(huì)的進(jìn)步。

ALU 是第一次將人類(lèi)歷史上的數(shù)學(xué)和邏輯學(xué)學(xué)科有機(jī)地結(jié)合起來(lái),可以視為人類(lèi)智慧發(fā)展的現(xiàn)代巔峰。

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

寄存器(Register) 和內(nèi)存(RAM)

?寄存器(Register)和內(nèi)存(RAM)都是計(jì)算機(jī)中存儲(chǔ)數(shù)據(jù)的組件,但它們?cè)诖鎯?chǔ)、使用、速度等方面有很大區(qū)別。

寄存器是位于CPU內(nèi)部的高速存儲(chǔ)器,用于暫時(shí)存儲(chǔ)指令和數(shù)據(jù),是CPU執(zhí)行指令過(guò)程中必不可少的組件。寄存器的容量比內(nèi)存小得多,通常只有幾十個(gè)字節(jié)到幾百個(gè)字節(jié),但由于其位于CPU內(nèi)部,訪(fǎng)問(wèn)速度非???,可以在一個(gè)時(shí)鐘周期內(nèi)完成讀寫(xiě)操作。寄存器一般被用來(lái)存儲(chǔ)當(dāng)前正在執(zhí)行的程序或數(shù)據(jù),以及存儲(chǔ)各種狀態(tài)信息,例如程序計(jì)數(shù)器、指令寄存器、標(biāo)志寄存器、通用寄存器等。

關(guān)于寄存器還想了解更多的:一口氣看完45個(gè)寄存器,CPU核心技術(shù)大揭秘 - 知乎 (zhihu.com)

相比之下,內(nèi)存(RAM)是一種外部存儲(chǔ)設(shè)備,用于存儲(chǔ)程序和數(shù)據(jù),它的容量比寄存器大得多,可以存儲(chǔ)更多的數(shù)據(jù)。內(nèi)存的數(shù)據(jù)可以隨時(shí)讀取和修改,但訪(fǎng)問(wèn)速度比寄存器慢得多,需要幾十甚至幾百個(gè)時(shí)鐘周期才能完成讀寫(xiě)操作。內(nèi)存一般分為靜態(tài)內(nèi)存和動(dòng)態(tài)內(nèi)存兩種類(lèi)型,其中靜態(tài)內(nèi)存速度較快,而且不需要刷新操作,但成本較高;動(dòng)態(tài)內(nèi)存成本較低,但需要定時(shí)進(jìn)行刷新操作以保持?jǐn)?shù)據(jù)的正確性。

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

總的來(lái)說(shuō),寄存器和內(nèi)存在計(jì)算機(jī)中都具有非常重要的作用。寄存器通過(guò)提供快速且方便的存儲(chǔ)空間來(lái)支持CPU的指令執(zhí)行和數(shù)據(jù)處理;而內(nèi)存則提供了更大容量的存儲(chǔ)空間,支持計(jì)算機(jī)系統(tǒng)的日常運(yùn)行和各種應(yīng)用程序的執(zhí)行。通常情況下,計(jì)算機(jī)會(huì)將一部分?jǐn)?shù)據(jù)存儲(chǔ)在寄存器中,以便快速訪(fǎng)問(wèn),在需要存儲(chǔ)更多數(shù)據(jù)時(shí)則將其存儲(chǔ)在內(nèi)存中。

?控制單元 CU(Control Unit)

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

控制單元(Control Unit,CU)它負(fù)責(zé)指揮和控制計(jì)算機(jī)系統(tǒng)中的各個(gè)部件進(jìn)行工作。CU通常位于CPU內(nèi)部,主要功能包括從主存中讀取指令、解析指令并生成相應(yīng)的控制信號(hào)、以及協(xié)調(diào)各個(gè)部件的工作等。

具體地說(shuō),當(dāng)CPU要執(zhí)行某個(gè)程序時(shí),CU首先從主存中讀取指令,并將其送入指令寄存器中。然后,CU會(huì)對(duì)指令進(jìn)行解碼,并根據(jù)解碼結(jié)果生成一系列控制信號(hào),例如內(nèi)存讀寫(xiě)控制信號(hào)、ALU操作控制信號(hào)、總線(xiàn)控制信號(hào)等。這些控制信號(hào)會(huì)被發(fā)送到各個(gè)部件,使得它們按照指令要求進(jìn)行相應(yīng)的操作,最終完成指令的執(zhí)行。

除了指揮各個(gè)部件進(jìn)行工作之外,CU還負(fù)責(zé)處理異常情況和錯(cuò)誤。例如,在執(zhí)行某個(gè)指令時(shí),如果發(fā)生了除以零或者非法指令等錯(cuò)誤,CU會(huì)立即停止當(dāng)前程序的執(zhí)行,并向操作系統(tǒng)或用戶(hù)報(bào)告錯(cuò)誤信息。

總的來(lái)說(shuō),CU可以看做是計(jì)算機(jī)系統(tǒng)中的“大腦”,它負(fù)責(zé)協(xié)調(diào)和控制整個(gè)系統(tǒng)的工作,確保計(jì)算機(jī)的正確運(yùn)行。同時(shí),CU也是計(jì)算機(jī)系統(tǒng)整體性能的關(guān)鍵因素之一,它的設(shè)計(jì)和實(shí)現(xiàn)質(zhì)量直接影響到計(jì)算機(jī)的運(yùn)行效率和穩(wěn)定性。

指令(Instruction)

首先,我們先介紹下我們需要到的指令(instruction)。

所謂指令,即指導(dǎo) CPU 進(jìn)行工作的命令,主要有操作碼 + 被操作數(shù)組成。

其中操作碼用來(lái)表示要做什么動(dòng)作,被操作數(shù)是本條指令要操作的數(shù)據(jù),可能是內(nèi)存地址,也可能是寄存器編號(hào)等。 指令本身也是一個(gè)數(shù)字,用二進(jìn)制形式保存在內(nèi)存的某個(gè)區(qū)域中。

指令表(Instruction Table)

指令(instruction)
功能說(shuō)明 4位opcode 操作的地址或者寄存器
LOAD_A
從RAM的指定地址,將
數(shù)據(jù)加載到A 寄存器
0010
4 位RAM 地址
LOAD_B
從RAM的指定地址,將
數(shù)據(jù)加載到B 寄存器
0001
4 位RAM 地址
STORE_A
將數(shù)據(jù)從A 寄存器寫(xiě)入
RAM 的指定地址
0100
4 位RAM 地址
ADD
計(jì)算兩個(gè)指定寄存器的
數(shù)據(jù)的和,并將結(jié)果放 ?
入第二個(gè)寄存器?
1000
2 位的寄存器ID
2 位的寄存器ID

??對(duì)cpu感興趣的小伙伴可以看看下面這個(gè)視頻(大佬爆肝純手工自制cpu)

[爆肝]純手工自制CPU

編程語(yǔ)言(Program Language)

程序(Program)

所謂程序,就是一組指令以及這組指令要處理的數(shù)據(jù), 程序的基本單元就是指令 。狹義上來(lái)說(shuō),程序?qū)ξ覀儊?lái)說(shuō),通常表現(xiàn)為一組文件。 程序 = 指令 + 指令要處理的數(shù)據(jù)。

計(jì)算機(jī)中的程序是由一系列指令組成的,用來(lái)完成特定任務(wù)的代碼序列。程序可以通過(guò)編程語(yǔ)言編寫(xiě),然后由計(jì)算機(jī)進(jìn)行解析和執(zhí)行。

程序可以分為兩類(lèi):系統(tǒng)程序和應(yīng)用程序。系統(tǒng)程序是控制計(jì)算機(jī)硬件和操作系統(tǒng)的程序,例如操作系統(tǒng)、設(shè)備驅(qū)動(dòng)程序、安全軟件等。應(yīng)用程序是用戶(hù)使用計(jì)算機(jī)時(shí)運(yùn)行的程序,例如文字處理器、游戲、瀏覽器、音視頻播放器等。

程序可以由源代碼編寫(xiě)而成,也可以通過(guò)編譯器將源代碼轉(zhuǎn)換為目標(biāo)代碼來(lái)創(chuàng)建。在某些情況下,程序還可以直接使用匯編語(yǔ)言編寫(xiě),以便更好地控制硬件資源和優(yōu)化性能。

在程序執(zhí)行過(guò)程中,計(jì)算機(jī)會(huì)將指令從內(nèi)存中讀入到CPU中,并根據(jù)指令類(lèi)型執(zhí)行相應(yīng)的操作。CPU還需要維護(hù)一些寄存器和狀態(tài)信息,例如程序計(jì)數(shù)器、堆棧指針、標(biāo)志寄存器等,以幫助它正確地執(zhí)行指令序列。

程序是計(jì)算機(jī)中最基本的元素之一,它們使得計(jì)算機(jī)能夠完成各種任務(wù)并為用戶(hù)提供服務(wù)。

早期編程

????????很久以前,那還是我用Win98 的時(shí)候有次我系統(tǒng)崩潰了,因?yàn)槲沂请娔X白癡,我朋友給我介紹了一個(gè)高 手來(lái)幫我修電腦。
????????他看了一下電腦,問(wèn)我有沒(méi)有98 的盤(pán),我說(shuō)沒(méi)有。
????????他想了一下,叫我把固定電話(huà)拿給他,我想修電腦要電話(huà)干什么,但人家是高手,我也不好說(shuō)什么,就把電話(huà)拔下來(lái)給他了。
????????他把電話(huà)線(xiàn)空著的一頭接在電腦的一個(gè)插孔內(nèi),然落后入了dos ,然后就開(kāi)始在電話(huà)上不停的按著鍵,他按鍵的速度異???,但是只按0 , 1 兩個(gè)鍵,我搞不懂這有什么用,但也不敢問(wèn),看了半個(gè)多小時(shí),他還是不停的按這兩個(gè)鍵, 兩性,我徐徐的有些困,我問(wèn)他這東西要搞多久,他說(shuō)要幾個(gè)小時(shí),我給他倒了杯茶,就一個(gè)人去隔壁睡覺(jué)了。
????????醒來(lái)的時(shí)候,一看已經(jīng)過(guò)了4 個(gè)多小時(shí),我起身到隔壁,看見(jiàn)他正在 98 里面調(diào)試,過(guò)了一會(huì)兒,他說(shuō),你 試試,我坐上椅子用了一下,真的好了,我當(dāng)時(shí)也不懂電腦,謝過(guò)人家就走了。
????????后來(lái)我慢慢對(duì)電腦有了了解,終于了解,原來(lái)當(dāng)時(shí)那位高手是用機(jī)器語(yǔ)言編了一個(gè)98 系統(tǒng),我后來(lái)問(wèn)我 朋友那位高手的下落,我朋友說(shuō)前幾年去了美國(guó)之后,杳無(wú)音訊....
這是一個(gè)早先流傳的趣味小故事,當(dāng)然這件事不是真實(shí)的。但最早的電腦,要進(jìn)行編程,是真的需要用 0、 1進(jìn)行編程的??
下面圖給大家展示了 Altair 8800 計(jì)算機(jī),是最早的一批微型電腦。用戶(hù)需要控制開(kāi)關(guān),一個(gè)一個(gè) bit 的將程序錄入該電腦中。
勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)
如果要求計(jì)算機(jī)的用戶(hù)都必須使用二進(jìn)制編程,那大家都要瘋掉了,這可是一件門(mén)檻太高的事情了。所以編程語(yǔ)言應(yīng)運(yùn)而生了。

編程語(yǔ)言發(fā)展

為了提升編程效率,最早創(chuàng)造了匯編語(yǔ)言的概念。其實(shí)匯編語(yǔ)言和機(jī)器語(yǔ)言(也就是指令)直接是完全 一一對(duì)應(yīng)的,只是相對(duì)于 0 、 1 這些數(shù)字,發(fā)明了一些幫助人類(lèi)記憶和理解的符號(hào)將其對(duì)應(yīng)起來(lái),也就 是我們上面看到的類(lèi)似 LOAD_A 、 LOAD_B 等。程序員完成編程之后,需要使用匯編器( assembler ) 將匯編語(yǔ)言翻譯成機(jī)器語(yǔ)言。

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
雖然匯編降低了程序員的記憶成本,但要求程序還是必須掌握計(jì)算機(jī)硬件的所有知識(shí),而且隨著計(jì)算機(jī) 廠(chǎng)商越來(lái)越多,一次編寫(xiě)的程序往往只適用于一類(lèi)計(jì)算機(jī)。這個(gè)是遠(yuǎn)遠(yuǎn)不夠的,所以更為高級(jí)的語(yǔ)言誕 生了,高級(jí)語(yǔ)言屏蔽了硬件細(xì)節(jié),讓程序員可以站在更高的層面上思考自己的業(yè)務(wù)。這里以 C 語(yǔ)言為 例,程序員完成程序的編寫(xiě)之后,需要使用編譯器(compiler )和連接( linker )將程序翻譯成匯編 語(yǔ)言,再借助匯編器變成最終的機(jī)器語(yǔ)言。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
借助封裝的思想,我們學(xué)習(xí)編程變得越來(lái)越容易。不過(guò)有利則有弊,高度的抽象,導(dǎo)致很多的程序員把 計(jì)算機(jī)視為一個(gè)黑箱,完全無(wú)法理解自己的程序是如何工作起來(lái)的,希望我們大家不要做這種程序員。

編程語(yǔ)言是用來(lái)描述計(jì)算機(jī)程序的形式化語(yǔ)言。自從計(jì)算機(jī)誕生以來(lái),編程語(yǔ)言不斷地發(fā)展和演變,經(jīng)歷了許多里程碑事件:

  1. 第一代編程語(yǔ)言(1940s-1950s):第一代編程語(yǔ)言是早期計(jì)算機(jī)使用的機(jī)器語(yǔ)言,它通過(guò)二進(jìn)制代碼直接控制計(jì)算機(jī)硬件。由于它很難理解和使用,因此只有專(zhuān)家才能編寫(xiě)程序。

  2. 第二代編程語(yǔ)言(1950s-1960s):第二代編程語(yǔ)言是匯編語(yǔ)言,它使用助記符號(hào)代替了二進(jìn)制代碼,使得人們更容易地編寫(xiě)程序。但它仍需要對(duì)硬件有深入的了解。

  3. 第三代編程語(yǔ)言(1960s-1970s):第三代編程語(yǔ)言是高級(jí)語(yǔ)言,例如FORTRAN、COBOL、BASIC等,它們的語(yǔ)法更加接近自然語(yǔ)言,使編程變得更加簡(jiǎn)單。同時(shí),出現(xiàn)了編譯器和解釋器等工具,為程序員提供了更好的開(kāi)發(fā)環(huán)境。

  4. 第四代編程語(yǔ)言(1970s-1990s):第四代編程語(yǔ)言是面向數(shù)據(jù)庫(kù)的語(yǔ)言,例如SQL,它們不需要程序員編寫(xiě)大量的代碼來(lái)操作數(shù)據(jù),而是提供了高度抽象的接口。

  5. 現(xiàn)代編程語(yǔ)言(1990s-至今):現(xiàn)代編程語(yǔ)言包括Java、Python、C++等,它們具有更多的特性和功能,例如面向?qū)ο缶幊獭⒑瘮?shù)式編程、動(dòng)態(tài)類(lèi)型等。同時(shí),出現(xiàn)了許多框架和庫(kù),幫助程序員更快地構(gòu)建應(yīng)用程序。

編程語(yǔ)言的發(fā)展經(jīng)歷了從低級(jí)到高級(jí)、從硬件到軟件、從過(guò)程化到面向?qū)ο蟮葞讉€(gè)階段,每個(gè)階段都為計(jì)算機(jī)的發(fā)展做出了重要貢獻(xiàn)。未來(lái),人工智能、量子計(jì)算和其他新技術(shù)的發(fā)展也將進(jìn)一步推動(dòng)編程語(yǔ)言的演變和創(chuàng)新。

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

注意:高級(jí)語(yǔ)言的一條語(yǔ)句 (Statement) 往往對(duì)應(yīng)很多條指令 (Instruction) 才能完成。

? ??

勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)

操作系統(tǒng)

操作系統(tǒng)是一組做計(jì)算機(jī)資源管理的軟件的統(tǒng)稱(chēng)。目前常見(jiàn)的操作系統(tǒng)有: Windows 系列、 Unix 系列、Linux系列、 OSX 系列、 Android 系列、 iOS 系列、鴻蒙等。
?

操作系統(tǒng)(Operating System,OS)是計(jì)算機(jī)系統(tǒng)中的一種軟件,它負(fù)責(zé)管理和控制計(jì)算機(jī)硬件和軟件資源,為用戶(hù)和應(yīng)用程序提供服務(wù)。操作系統(tǒng)通常包括以下幾個(gè)核心組件:

  1. 內(nèi)存管理:內(nèi)存管理模塊負(fù)責(zé)管理計(jì)算機(jī)的內(nèi)存資源,包括內(nèi)存分配、內(nèi)存保護(hù)、虛擬內(nèi)存等。通過(guò)有效地管理內(nèi)存,操作系統(tǒng)可以最大化利用系統(tǒng)資源,并確保應(yīng)用程序之間不會(huì)相互干擾。

  2. 進(jìn)程管理:進(jìn)程管理模塊負(fù)責(zé)管理計(jì)算機(jī)的進(jìn)程和線(xiàn)程,包括進(jìn)程的創(chuàng)建、調(diào)度、終止、同步等。通過(guò)對(duì)進(jìn)程和線(xiàn)程進(jìn)行管理,操作系統(tǒng)可以使多個(gè)程序同時(shí)運(yùn)行,并確保它們之間不會(huì)相互干擾或競(jìng)爭(zhēng)系統(tǒng)資源。

  3. 文件管理:文件管理模塊負(fù)責(zé)管理計(jì)算機(jī)的文件系統(tǒng),包括文件的創(chuàng)建、讀取、寫(xiě)入、刪除等。通過(guò)對(duì)文件進(jìn)行統(tǒng)一管理,操作系統(tǒng)可以保護(hù)文件的安全性、完整性和可用性。

  4. 設(shè)備管理:設(shè)備管理模塊負(fù)責(zé)管理計(jì)算機(jī)的外部設(shè)備,包括I/O設(shè)備、網(wǎng)絡(luò)設(shè)備等。通過(guò)對(duì)設(shè)備進(jìn)行管理,操作系統(tǒng)可以協(xié)調(diào)多個(gè)設(shè)備之間的操作,以達(dá)到最優(yōu)的系統(tǒng)性能。

  5. 用戶(hù)接口:用戶(hù)接口模塊提供了用戶(hù)和操作系統(tǒng)之間的交互方式,例如命令行界面、圖形用戶(hù)界面等。通過(guò)友好的用戶(hù)接口,操作系統(tǒng)可以使得用戶(hù)更加輕松地使用計(jì)算機(jī)系統(tǒng)。

除了這些核心組件之外,操作系統(tǒng)還包括其他一些功能,例如安全管理、網(wǎng)絡(luò)支持、多處理器支持等。總的來(lái)說(shuō),操作系統(tǒng)是計(jì)算機(jī)系統(tǒng)中最重要的組成部分之一,為用戶(hù)和應(yīng)用程序提供了強(qiáng)大的支持和保障。

篇幅過(guò)長(zhǎng) ,就不詳細(xì)說(shuō)了,想詳細(xì)了解可看

計(jì)算機(jī)操作系統(tǒng)知識(shí)點(diǎn)總結(jié)(有這一篇就夠了?。。。?/p>

結(jié)語(yǔ)

作為一名程序員,計(jì)算機(jī)將會(huì)一直陪伴我們今后的日子,我深知計(jì)算機(jī)技術(shù)對(duì)于現(xiàn)代社會(huì)的重要性。在這個(gè)五一勞動(dòng)節(jié)之際,我想向所有辛勤工作的人們致以敬意,并分享一些我認(rèn)為程序員應(yīng)該掌握的基礎(chǔ)知識(shí)。

我們今天介紹了計(jì)算機(jī)的歷史以及了解了計(jì)算機(jī)時(shí)如何工作的,但是計(jì)算機(jī)技術(shù)是一個(gè)不斷演變和發(fā)展的領(lǐng)域,身為程序員的我們需要不斷學(xué)習(xí)和創(chuàng)新,才能保持競(jìng)爭(zhēng)力和應(yīng)對(duì)未來(lái)的挑戰(zhàn)。

在這個(gè)特別的節(jié)日里,讓我們一起感恩勞動(dòng)、尊重知識(shí)、珍惜時(shí)間,為自己和社會(huì)創(chuàng)造更多價(jià)值!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-444165.html

到了這里,關(guān)于勞動(dòng)節(jié)程序員應(yīng)該知道的知識(shí)——計(jì)算機(jī)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀(guān)點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 應(yīng)該選擇網(wǎng)絡(luò)安全還是程序員?

    很長(zhǎng)的時(shí)間我都在思考這個(gè)問(wèn)題.,根據(jù)自己的經(jīng)驗(yàn)和朋友們的討論后得出了一些結(jié)論,網(wǎng)絡(luò)安全 這個(gè)概念太廣,我就以安服/滲透崗作為比較的對(duì)象,題主可以參考一下: 程序員: 優(yōu)點(diǎn): 1.薪資非常高,今年校招大廠(chǎng)普遍是24K*15 2.崗位多,無(wú)論大城市還是小城市遍地是崗位

    2023年04月19日
    瀏覽(83)
  • 不想被卷的程序員們,應(yīng)該學(xué)什么?

    不想被卷的程序員們,應(yīng)該學(xué)什么?

    我真的好像感慨一下,這個(gè)世界真的給計(jì)算機(jī)應(yīng)屆生留活路了嗎? 看著周?chē)耐瑢W(xué),打算搞前端、JAVA、C、C++的,一個(gè)兩個(gè)去跑去應(yīng)聘。你以為是00后整治職場(chǎng)? 真相是主打一個(gè)卑微:現(xiàn)階段以學(xué)習(xí)為主( 工資能活命就行 );學(xué)習(xí)能力強(qiáng)( 讓我干什么都行 );能抗壓( 加

    2024年02月12日
    瀏覽(84)
  • 當(dāng)前就業(yè)環(huán)境下,程序員應(yīng)該自降薪資應(yīng)聘嗎?

    最近就業(yè)環(huán)境不好,有些人為了找到工作,主動(dòng)降低薪資要求,甚至有些人主動(dòng)提出比企業(yè)招聘工資更低的工資以求入職,這樣做合適嗎? 其實(shí)這個(gè)問(wèn)題早些年也經(jīng)常被人提及,主要針對(duì)的是新進(jìn)入就業(yè)市場(chǎng)的培訓(xùn)班學(xué)員,對(duì)他們而言,能用一個(gè)較低的薪資進(jìn)入行業(yè),以后再

    2024年02月04日
    瀏覽(84)
  • 這7種UML圖的畫(huà)法每個(gè)程序員都應(yīng)該掌握~

    這7種UML圖的畫(huà)法每個(gè)程序員都應(yīng)該掌握~

    眾所周知,軟件開(kāi)發(fā)是一個(gè)分階段進(jìn)行的過(guò)程。不同的開(kāi)發(fā)階段需要使用不同的模型圖來(lái)描述業(yè)務(wù)場(chǎng)景和設(shè)計(jì)思路。在不同的階段輸出不同的設(shè)計(jì)文檔也是必不可少的,例如,在需求分析階段需要輸出領(lǐng)域模型和業(yè)務(wù)模型,在架構(gòu)階段需要輸出物理架構(gòu)設(shè)計(jì),在詳細(xì)設(shè)計(jì)階段

    2024年02月11日
    瀏覽(697)
  • 當(dāng)程序員糾結(jié)中午應(yīng)該吃什么,那就用pygame來(lái)解決吧

    當(dāng)程序員糾結(jié)中午應(yīng)該吃什么,那就用pygame來(lái)解決吧

    寫(xiě)多了kotlin和android,最近想搞點(diǎn)小東西,于是拿出了長(zhǎng)期沒(méi)有寵愛(ài)的python,打算搞個(gè)小項(xiàng)目 想想應(yīng)該寫(xiě)什么,對(duì)了,該吃飯了,誒,剛好,寫(xiě)一個(gè)能隨機(jī)選擇吃什么的小程序吧,只需要點(diǎn)擊按鈕,就會(huì)隨機(jī)出現(xiàn)菜譜,然后再點(diǎn)一下,就會(huì)得出今天吃什么的結(jié)論 思路是這樣的

    2024年01月16日
    瀏覽(97)
  • 程序員不得不知道的 API 接口常識(shí)

    程序員不得不知道的 API 接口常識(shí)

    1、初識(shí) API 接口 記得在我初學(xué) web 開(kāi)發(fā)的時(shí)候,后端框架相關(guān)的教程基本都會(huì)教學(xué)生寫(xiě)渲染模版(不分語(yǔ)言),也就是說(shuō)后端返回的是整個(gè)網(wǎng)頁(yè)的數(shù)據(jù),瀏覽器只負(fù)責(zé)渲染。 一般這類(lèi)模版在后端都會(huì)對(duì)應(yīng)一個(gè)路由,比如前端想登入一個(gè)看用戶(hù)信息的頁(yè)面,在 url 中輸入的訪(fǎng)問(wèn)

    2024年02月01日
    瀏覽(24)
  • 程序員必須要知道的編程范式,你掌握了嗎?

    程序員必須要知道的編程范式,你掌握了嗎?

    一、 什么是編程范式? \\\"編程范式\\\"是一種 編程思想 的總稱(chēng),它是指在編寫(xiě)程序時(shí)所采用的基本方法和規(guī)范。常見(jiàn)的編程范式有面向?qū)ο?、函?shù)式、邏輯式等。 選擇合適的編程范式可以提高代碼的可讀性、可維護(hù)性和可擴(kuò)展性,是程序員必備的基本技能之一。 ? 二、常見(jiàn)的

    2024年02月09日
    瀏覽(94)
  • 程序員想兼職賺錢(qián)?這幾個(gè)渠道你一定要知道?

    程序員想兼職賺錢(qián)?這幾個(gè)渠道你一定要知道?

    某一天當(dāng)一個(gè)程序員,一拍腦門(mén)想要兼職,賺點(diǎn)小錢(qián),于是他打開(kāi)了知乎,打開(kāi)了百度搜索兼職。結(jié)果彈出了一大部分有兼職要視頻剪輯的,寫(xiě)文稿的等等等等。逛了一圈,發(fā)現(xiàn)根本沒(méi)有自己合適的兼職。 我想說(shuō): 喂!喂!喂! 你不是程序員嗎?我們程序員當(dāng)然要用自己的

    2024年02月14日
    瀏覽(22)
  • 新技術(shù)越來(lái)越多,作為程序員,我們應(yīng)該怎么規(guī)劃職業(yè)生涯? | 社區(qū)征文

    新技術(shù)越來(lái)越多,作為程序員,我們應(yīng)該怎么規(guī)劃職業(yè)生涯? | 社區(qū)征文

    隨著科技的不斷進(jìn)步,新技術(shù)不斷涌現(xiàn),對(duì)程序員的要求也在不斷提高。作為一名程序員,要想在這個(gè)競(jìng)爭(zhēng)激烈的行業(yè)中立足,就需要制定一份明確的職業(yè)規(guī)劃,不斷學(xué)習(xí)和掌握新技術(shù),提升自己的職業(yè)能力和競(jìng)爭(zhēng)力。 首先,程序員需要明確自己的職業(yè)方向和目標(biāo)。程序員的

    2024年02月06日
    瀏覽(22)
  • 和月薪5W的阿里程序員聊過(guò)后,才知道自己一直在打雜...

    和月薪5W的阿里程序員聊過(guò)后,才知道自己一直在打雜...

    前幾天和一個(gè)朋友聊面試,他說(shuō)上個(gè)月同時(shí)拿到了騰訊和阿里的offer,最后選擇了阿里。 阿里內(nèi)部將員工一共分為了14個(gè)等級(jí),P6是資深工程師,P7是技術(shù)專(zhuān)家。 其中P6和P7就是一個(gè)分水嶺了,P6是最接近P7的不持股員工,P7開(kāi)始就是持股員工,由于有股票分紅,所以工資不能按

    2023年04月24日
    瀏覽(23)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包