【持續(xù)更新】C語(yǔ)言 第一天學(xué)習(xí)筆記(第八章)

十一【理解】計(jì)算機(jī)語(yǔ)言
1.語(yǔ)言是什么?

在日常生活中,語(yǔ)言是我們?nèi)伺c人之間溝通交流的一種方式。
既然語(yǔ)言有溝通交流的功能,那么:我們?cè)趺锤?jì)算機(jī)進(jìn)行交流呢?
我們的計(jì)算機(jī)只認(rèn)識(shí)電,因?yàn)樾枰咫姡?jì)算機(jī)才能啟動(dòng)。所以,如果我們想跟計(jì)算機(jī)交流,就是通過(guò)電流來(lái)交流的!

在計(jì)算機(jī)中,電流有強(qiáng)有弱,所以我們稱之為高低電平,所以如果我們跟計(jì)算機(jī)交流可以通過(guò)控制電流的強(qiáng)弱進(jìn)行。但是,我們覺(jué)得每次說(shuō)高電平,低電平說(shuō)起來(lái)很麻煩,所以干脆就用0和1來(lái)分別代表低電平和高電平(這也是我們傳說(shuō)中的二進(jìn)制)。

再然后,我們通過(guò)0和1的各種不同組合,約定出計(jì)算機(jī)設(shè)備該完成什么功能。就像你跟你女朋友約定用數(shù)字1314代表一生一世,用520代表我愛(ài)你一樣,所以此時(shí),我們把這種跟計(jì)算機(jī)以0,1的對(duì)話方式稱之為機(jī)器語(yǔ)言。

如,用機(jī)器語(yǔ)言描述1+1的方式為00000001
00000110001100000001 (不準(zhǔn)確)

再再然后,人們覺(jué)得用01的不同組合如:0010011100011011010010000這樣的方式看起來(lái)太復(fù)雜太不容易理解,于是聰明又智慧的人們兒又發(fā)明了一種更接近人類語(yǔ)言的跟計(jì)算機(jī)交流的語(yǔ)言:匯編語(yǔ)言

mov ax,1 
 add
ax,1

匯編語(yǔ)言使用了一些日常生活中的英文單詞如:add
jump等用來(lái)代表不同的01組合,因此大大簡(jiǎn)化了跟計(jì)算機(jī)交流開(kāi)發(fā)新功能的方式。

但是呢,因?yàn)閰R編語(yǔ)言對(duì)硬件依賴大,不同的CPU架構(gòu)需要編寫(xiě)不同的匯編指令,再加上其語(yǔ)言也不是特別接近人類語(yǔ)言所以人們又開(kāi)始思考:能不能使計(jì)算機(jī)語(yǔ)言再更加接近人類語(yǔ)言呢?

再再再然后,于是高級(jí)語(yǔ)言誕生了!!

此時(shí)高級(jí)語(yǔ)言描述1+1就為:1 + 1

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

無(wú)論是匯編語(yǔ)言還是高級(jí)語(yǔ)言,其本質(zhì)最終都是轉(zhuǎn)換為機(jī)器語(yǔ)言來(lái)運(yùn)行的。

但是流程有所不同:

匯編語(yǔ)言:
 匯編  --> 匯編器 --> 機(jī)器語(yǔ)言
高級(jí)語(yǔ)言(以C為例):
C語(yǔ)言--> 編譯器--> 匯編--> 匯編器--> 機(jī)器語(yǔ)言

十二【了解】C語(yǔ)言的前世今生

1、C語(yǔ)言的誕生

C語(yǔ)言發(fā)展路線圖

1969年,那是一個(gè)春天……在貝爾實(shí)驗(yàn)室里有一個(gè)叫做Ken Thompson的人,他長(zhǎng)得雖然沒(méi)有果凍妹紙可愛(ài),但是人極度聰明。

當(dāng)時(shí)貝爾實(shí)驗(yàn)室正在跟美國(guó)麻省理工大學(xué)以及美國(guó)通用電氣公司合伙開(kāi)發(fā)一款操作系統(tǒng)叫Multics,然后Ken Thompson便利用空閑時(shí)間基于Multics上開(kāi)發(fā)了一款游戲叫<Star Travel>,可是怎么著?

最終幾大公司覺(jué)得Multics項(xiàng)目進(jìn)度太慢,而且不看好前景,于是突然撤資不打算搞了。Ken Thompson好不容易寫(xiě)的游戲都要沒(méi)地方運(yùn)行了,他可不愿意就此放棄,于是找來(lái)貝爾實(shí)驗(yàn)室里幾乎要報(bào)廢的一臺(tái)電腦“PDP-7”,想把游戲移植到這臺(tái)電腦上,但是沒(méi)有系統(tǒng)怎么辦?

這難不倒他,他打算干脆自己寫(xiě)一個(gè)適用于這臺(tái)電腦的操作系統(tǒng),于是他把Multics項(xiàng)目中的一些思想和一些自己想的一些功能加入到開(kāi)發(fā)里面,憑著這股子蠻勁,終于研發(fā)成功,系統(tǒng)名字叫UNIX。

但是一開(kāi)始,這套系統(tǒng)是用匯編語(yǔ)言寫(xiě)的,然而用匯編語(yǔ)言寫(xiě)的操作系統(tǒng)十分難以調(diào)試和改進(jìn),于是Thompson意識(shí)到需要一種更高級(jí)的編程語(yǔ)言來(lái)負(fù)責(zé)完成UNIX系統(tǒng)未來(lái)的開(kāi)發(fā),于是乎,他設(shè)計(jì)出了一種語(yǔ)言叫B語(yǔ)言(在BCPL語(yǔ)言基礎(chǔ)上發(fā)展來(lái)的)

再然后,貝爾實(shí)驗(yàn)室意識(shí)到UNIX可能會(huì)成為一款十分優(yōu)秀的系統(tǒng),于是派了一個(gè)叫Dennis Ritchie的人(注意,這才是主角)也加入到了UNIX的開(kāi)發(fā)中!

并且在1970年為UNIX項(xiàng)目爭(zhēng)取到一臺(tái)PDP-11計(jì)算機(jī),但是這時(shí)候Dennis Ritchie發(fā)現(xiàn)B語(yǔ)言十分不適合用來(lái)編寫(xiě)適合PDP-11計(jì)算機(jī)的UNIX系統(tǒng),

因此Dennis Ritchie決定開(kāi)發(fā)B語(yǔ)言的升級(jí)版,一開(kāi)始他覺(jué)得這門語(yǔ)言肯定會(huì)火,所以起來(lái)了個(gè)十分牛逼的名字:NB(New B),

再到后來(lái),隨著對(duì)NB語(yǔ)言的不斷改進(jìn),發(fā)現(xiàn)這門新語(yǔ)言已經(jīng)越來(lái)越脫離B語(yǔ)言,于是他決定改名叫C語(yǔ)言(取BCPL中的第二個(gè)字符)。

一直到1973年,C語(yǔ)言足夠穩(wěn)定,Dennis Ritchie就用C語(yǔ)言來(lái)重新編寫(xiě)UNIX系統(tǒng)了。重新編寫(xiě)過(guò)的UNIX系統(tǒng)有一個(gè)非常重要的好處:可移植性!

要知道,在那之前不管是什么系統(tǒng),都是得為電腦專門匹配設(shè)計(jì)的!!而現(xiàn)在,因?yàn)槿碌腢NIX用C語(yǔ)言編寫(xiě),當(dāng)其他計(jì)算機(jī)想要使用UNIX操作系統(tǒng)時(shí),只需要為其他類型計(jì)算機(jī)編寫(xiě)C語(yǔ)言編譯器就行了!

祖師爺:Dennis Ritchie

C語(yǔ)言的誕生是偶然的,它僅僅只是UNIX系統(tǒng)的附加產(chǎn)物。但是也絲毫掩蓋不了它王者的地位,看看2014年的語(yǔ)言排行榜:歷經(jīng)40多年的洗禮,多少語(yǔ)言隨大浪東去,輝煌一陣又迅速湮滅,唯有C語(yǔ)言,傲視群雄!

2014年語(yǔ)言排行榜

2、C語(yǔ)言的標(biāo)準(zhǔn)化

由于C語(yǔ)言原本就是用來(lái)編寫(xiě)傳統(tǒng)的由匯編語(yǔ)言編寫(xiě)的應(yīng)用程序,所以用C語(yǔ)言編寫(xiě)的程序十分的高效,另外又由于C語(yǔ)言的編譯器規(guī)模小并且還容易編寫(xiě),所以當(dāng)C語(yǔ)言橫空出世后已經(jīng)超越了UNIX的界限,運(yùn)行在不同的操作系統(tǒng)下的多種類型的計(jì)算機(jī)都開(kāi)始使用C語(yǔ)言編譯器。

但是,由于缺乏編譯器翻譯標(biāo)準(zhǔn),因此不同的計(jì)算機(jī)常常會(huì)根據(jù)某些特性做不同的處理結(jié)果,如果這個(gè)時(shí)候,放任這種情況的出現(xiàn)最終會(huì)導(dǎo)致C語(yǔ)言有各種分支,也即不同的“方言”。

在這個(gè)時(shí)候,美國(guó)國(guó)家標(biāo)準(zhǔn)協(xié)會(huì)(ANSI)看不下去了,決定出手為C語(yǔ)言制定標(biāo)準(zhǔn)。

正是因?yàn)闃?biāo)準(zhǔn)的出現(xiàn),才防止了C語(yǔ)言沒(méi)有被分裂成不兼容的多種分支!

附:以下是C語(yǔ)言幾個(gè)重要標(biāo)準(zhǔn)的時(shí)間表

1983年,美國(guó)國(guó)家標(biāo)準(zhǔn)協(xié)會(huì)(ANSI)成立了一個(gè)委員會(huì),根據(jù)C語(yǔ)言問(wèn)世以來(lái)各種版本對(duì)C語(yǔ)言
的發(fā)展和擴(kuò)充,制定了第一個(gè)C語(yǔ)言標(biāo)準(zhǔn)草案(83 ANSI C)。

1989年,ANSI公布了一個(gè)完整的C語(yǔ)言標(biāo)準(zhǔn)—ANSI
X3.159-1989(常稱ANSI C,或C89)。

1990年,國(guó)際標(biāo)準(zhǔn)化組織ISO(International
Standard Organization) 接受C89作為國(guó)際標(biāo)準(zhǔn)ISO/IEC 9899:1990,它和ANSI的C89基本上是相同的。

1995年,ISO對(duì)C90作了一些修訂,

1999年,ISO又對(duì)C語(yǔ)言標(biāo)準(zhǔn)進(jìn)行修訂,在基本保留原來(lái)的C語(yǔ)言特征的基礎(chǔ)上,針對(duì)應(yīng)用的需要,增加了一些功能,尤其是C++中的一些功能,命名為
ISO/IEC 9899:1999。

2001、2004年先后進(jìn)行了兩次技術(shù)修正(TC1和TC2)。

ISO/IEC
9899:1999(及其技術(shù)修正)被稱為 C99。

C99是C89(及1995基準(zhǔn)增補(bǔ)1)的擴(kuò)充。

C11 :在2011年12月,ANSI
采納了 ISO/IEC 9899:2011 標(biāo)準(zhǔn)。這個(gè)標(biāo)準(zhǔn)通常即C11,它是C程序語(yǔ)言的最新標(biāo)準(zhǔn)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,825評(píng)論 6 546
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,814評(píng)論 3 429
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事。” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 178,980評(píng)論 0 384
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 64,064評(píng)論 1 319
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,779評(píng)論 6 414
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 56,109評(píng)論 1 330
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,099評(píng)論 3 450
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 43,287評(píng)論 0 291
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,799評(píng)論 1 338
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,515評(píng)論 3 361
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,750評(píng)論 1 375
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,221評(píng)論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,933評(píng)論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 35,327評(píng)論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 36,667評(píng)論 1 296
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 52,492評(píng)論 3 400
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,703評(píng)論 2 380

推薦閱讀更多精彩內(nèi)容