计算机语言---机器语言、汇编语言、高级语言
一.什么是計(jì)算機(jī)語言?
計(jì)算機(jī)語言指用于任何計(jì)算機(jī)之間通訊的語言。計(jì)算機(jī)語言是人與計(jì)算機(jī)之間傳遞信息的媒介。
?
二.計(jì)算機(jī)語言有哪幾種?
計(jì)算機(jī)語言分為三種:機(jī)器語言、匯編語言和高級語言
?
1.機(jī)器語言
???????? 機(jī)器語言是用二進(jìn)制代碼表示計(jì)算機(jī)能直接識別和執(zhí)行的一種機(jī)器指令的集合,它是計(jì)算機(jī)的設(shè)計(jì)者通過計(jì)算機(jī)的硬件結(jié)構(gòu)賦予計(jì)算機(jī)的操作功能。
優(yōu)點(diǎn):靈活、直接執(zhí)行、速度快等
缺點(diǎn):不同型號的計(jì)算機(jī)的機(jī)器語言是不相通的
???????????? 難于辨別和記憶,編程人員要熟記所用計(jì)算機(jī)的全部指令代碼和代碼的含義
???????????? 編寫程序花費(fèi)時(shí)間太長,是運(yùn)行時(shí)間的幾十倍和幾百倍
???????????? 編出的程序全是些0和1的指令代碼,不方便閱讀和修改還容易出錯
???????????? 等等
小編有話說:簡單來說,機(jī)器語言就是用一堆0或1構(gòu)成的語言,基于機(jī)器語言的這么多的缺點(diǎn),除了計(jì)算機(jī)生產(chǎn)廠家的專業(yè)人員外,絕大多數(shù)的程序員已經(jīng)不再去學(xué)習(xí)機(jī)器語言了。
?
2.匯編語言???????
???????? 百度百科上是這么說的:匯編語言是一種用于電子計(jì)算機(jī)、微處理器、微控制器或其他可編程器件的的低級語言,亦稱為符號語言。在匯編語言中,用助記符代替機(jī)器指令的操作碼,用地址符號或標(biāo)號代替指令或操作數(shù)的地址。在不同的設(shè)備中,匯編語言對應(yīng)著不同的機(jī)器語言指令集,通過匯編過程轉(zhuǎn)換成機(jī)器指令。普遍地說,特定的匯編語言和特定的機(jī)器語言指令集是一一對應(yīng)的,不同平臺之間不可直接移植。
?
小編有話說:啊?上面說了些啥?小編的理解是:機(jī)器語言是用二進(jìn)制代碼也就是0或1用于程序設(shè)計(jì),匯編語言就是用助記符等一些符號代替二進(jìn)制代碼。這里就有一個(gè)問題了,計(jì)算機(jī)能讀懂的只有機(jī)器指令,也就是二進(jìn)制代碼,那么計(jì)算機(jī)如何能理解用匯編語言編寫的程序呢?這時(shí),就需要一個(gè)能夠?qū)R編指令轉(zhuǎn)換成機(jī)器指令的翻譯程序---編譯器,程序員用匯編語言寫出源程序,在用匯編編譯器將其編譯為機(jī)器指令,由計(jì)算機(jī)最終執(zhí)行。
?
3.高級語言
???????????? 高級語言相對于機(jī)器語言,是一種指令集的體系,是高度封裝了的編程語言,與低級語言相對。
???????????? 它是以人類的日常語言為基礎(chǔ)的一種編程語言,使用一般人易于接受的文字來表示(例如漢字、不規(guī)則英文或其他外語),從而使程序編寫員編寫更容易,亦有較高的可讀性,以方便對電腦認(rèn)知較淺的人亦可以大概明白其內(nèi)容。
小編有話說:匯編語言在機(jī)器語言的基礎(chǔ)上引入了助記符,但是這些助記符量大難記,因此,我們又有了高級語言。定義上很清楚的表達(dá)了高級語言,他以人類日常語言為基礎(chǔ),這樣的話,更易于編寫,而且有較高的可讀性。
?
哪種計(jì)算機(jī)語言屬于低級語言?
??????? 人們通常把機(jī)器語言和匯編語言稱為低級語言,可能是因?yàn)樗枰绦騿T大量的記憶吧!雖然他們是低級語言,但并不代表就要被丟棄,相反,匯編語言仍然是計(jì)算機(jī)(或微機(jī))底層設(shè)計(jì)程序員必須了解的語言,在某些行業(yè)與領(lǐng)域,匯編是必不可少的,非它不可適用。
?
三.種計(jì)算機(jī)語言如何在計(jì)算機(jī)上執(zhí)行?
機(jī)器語言:機(jī)器語言可以直接在計(jì)算機(jī)上執(zhí)行。
匯編語言和高級語言:用某種匯編語言或高級語言編寫的程序稱為源程序,源程序不能直接在計(jì)算機(jī)上執(zhí)行,如果源程序是用匯編語言編寫的,則需要一個(gè)匯編程序?qū)⑵浞g成目標(biāo)程序后才能執(zhí)行。如果源程序使用某種高級語言編寫的,則需要對應(yīng)的解釋程序或編譯程序?qū)ζ溥M(jìn)行翻譯,然后在計(jì)算器上運(yùn)行。
?
解釋程序與編譯程序比較?
??????? 解釋程序也成為解釋器,他或者直接執(zhí)行源程序,或者將源程序直接翻譯成中間代碼后再加以執(zhí)行,而編譯程序也稱為編譯器則是將源程序翻譯成目標(biāo)語言程序,然后在計(jì)算機(jī)上運(yùn)行目標(biāo)程序。
?????? 兩種語言處理程序的根本區(qū)別是:在編譯方式下,機(jī)器上運(yùn)行的是與源程序等價(jià)的目標(biāo)程序,編譯程序和源程序都不參加目標(biāo)程序的執(zhí)行過程;而在解釋方式下,解釋程序和源程序要參與到程序的運(yùn)行過程中,運(yùn)行程序的控制權(quán)在解釋程序。
?
簡單點(diǎn)來說就是:
????????????????????????? 匯編語言編寫的
?????????????????????????????????? 編譯程序---生成目標(biāo)程序 ;
????????????????????????? 高級語言編寫的?
?????????????????????????????????? 編譯程序---生成目標(biāo)程序---不參與程序的執(zhí)行過程;
?????????????????????????????????? 解釋程序---翻譯成中間代碼,不生成目標(biāo)程序---參與程序的執(zhí)行過程。
總結(jié):上邊的長篇大論,總結(jié)一下就不過上面的一張圖而已,這說明了什么,要總結(jié)啊,要畫圖啊,對吧,那就去做吧!
總結(jié)
以上是生活随笔為你收集整理的计算机语言---机器语言、汇编语言、高级语言的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 炒币这么久,你是否从未看见过区块链世界的
- 下一篇: 解决苹果发布正式环境后支付拉不起来或获取