chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

面向機(jī)器語(yǔ)言有哪些

姚小熊27 ? 來(lái)源:網(wǎng)絡(luò)整理 ? 2018-04-16 10:29 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

機(jī)器語(yǔ)言原理

計(jì)算機(jī)的核心部件是CPU(中央處理單元),這是一個(gè)有著眾多引腳的集成電路。計(jì)算機(jī)的所有動(dòng)作均由其內(nèi)部的“電子運(yùn)算”而最終產(chǎn)生。從理解的角度上,可以把CPU看作是一套“約定”的集合。當(dāng)我們通過(guò)一些引腳告訴它“1”、“加”、“2”、“運(yùn)算”、“輸出”等信號(hào)時(shí),通過(guò)CPU設(shè)計(jì)制作時(shí)固定好的“約定”,在其另一些引腳上輸出“3”的信號(hào)并通知顯示設(shè)備顯示出“3”的圖象,我們就此得到了結(jié)果?!@些“約定”就是該CPU的機(jī)器語(yǔ)言。

不同的CPU有著不同的機(jī)器語(yǔ)言。不同機(jī)器語(yǔ)言基礎(chǔ)上的軟件無(wú)法通用。某一廠(chǎng)商新型的CPU為了軟件的通用性往往向其早期的CPU保持兼容。機(jī)器語(yǔ)言是一切軟件(包括操作系統(tǒng))的基礎(chǔ),是計(jì)算機(jī)最終識(shí)別并執(zhí)行的指令。

任何的機(jī)器語(yǔ)言都只接受兩種信息:“指令”和“數(shù)據(jù)”;指令是告訴CPU做什么樣的動(dòng)作,而數(shù)據(jù)則是動(dòng)作的對(duì)象。比如上文中的“加”、“運(yùn)算”等是指令,而“1”、“2”是數(shù)據(jù)。從形式上講,指令和數(shù)據(jù)都是二進(jìn)制信息。但如果將數(shù)據(jù)當(dāng)成指令交給CPU處理,通常CPU會(huì)無(wú)法理解而死機(jī);反之如果將指令當(dāng)成數(shù)據(jù)交給CPU則不會(huì)引起任何惡果,因?yàn)閿?shù)據(jù)不會(huì)引起CPU任何的動(dòng)作。

為驗(yàn)證這一說(shuō)法,你可以隨便將一個(gè)文件的擴(kuò)展名改為COM在DOS下交給系統(tǒng)執(zhí)行;也可以將命令處理器COMMAND.COM的擴(kuò)展名改為T(mén)XT用記事本打開(kāi)(切記不要存盤(pán)!)。

面向機(jī)器語(yǔ)言概述

面向機(jī)器語(yǔ)言是為特定的計(jì)算機(jī)或一類(lèi)計(jì)算機(jī)而設(shè)計(jì)的程序設(shè)計(jì)語(yǔ)言。這種語(yǔ)言保留了機(jī)器語(yǔ)言的外形,即由操作碼和地址碼組成指令這個(gè)外形,但面向機(jī)器語(yǔ)言的語(yǔ)言是用符號(hào)形式而不用機(jī)器代碼形式。這種語(yǔ)言能讓使用者擺脫計(jì)算機(jī)的一些純事物性的細(xì)節(jié)問(wèn)題(如無(wú)需硬記機(jī)器指令代碼、擺脫了二-十進(jìn)制轉(zhuǎn)換問(wèn)題和分配內(nèi)存問(wèn)題等),而專(zhuān)心考慮程序間的內(nèi)在聯(lián)系。這類(lèi)語(yǔ)言的代表是匯編語(yǔ)言。

面向機(jī)器語(yǔ)言有哪些

面向機(jī)器語(yǔ)言有哪些

1、機(jī)器語(yǔ)言

機(jī)器語(yǔ)言程序由機(jī)器指令構(gòu)成,這些機(jī)器指令按照?qǐng)?zhí)行順序依次排列,運(yùn)行時(shí)依次執(zhí)行完成某個(gè)特定的計(jì)算或任務(wù)。

機(jī)器指令是CPU能直接識(shí)別并執(zhí)行的指令。機(jī)器指令由物理部件的若干位二進(jìn)制0、1狀態(tài)體現(xiàn),機(jī)器指令程序運(yùn)行前需要存儲(chǔ)到內(nèi)存,正確的機(jī)器指令一旦送入CPU被譯碼后就將變成動(dòng)作予以執(zhí)行。

如圖1-1所示,機(jī)器指令面向機(jī)器,因機(jī)器而異。不同的機(jī)器具有不同的機(jī)器指令,因而具有不同的機(jī)器語(yǔ)言。所謂不同的機(jī)器,是指具有不同CPU(中央處理器)的計(jì)算機(jī)。由于機(jī)器指令與CPU緊密相關(guān),所以不同種類(lèi)的CPU所對(duì)應(yīng)的機(jī)器指令也就不同,而且它們的指令系統(tǒng)往往相差很大。但對(duì)同一系列的CPU來(lái)說(shuō),為了滿(mǎn)足各型號(hào)之間良好的兼容性,設(shè)計(jì)者一般要做到:新一代CPU的指令系統(tǒng)必須兼容先前開(kāi)發(fā)的同系列CPU的指令系統(tǒng)。只有這樣,先前開(kāi)發(fā)出來(lái)的各類(lèi)程序在新一弋CPU上才能正常運(yùn)行。

面向機(jī)器語(yǔ)言有哪些

機(jī)器指令通常由操作碼和操作數(shù)兩部分組成,操作碼指出該指令所要完成的操作,即指令的功能,操作數(shù)指出參與運(yùn)算的對(duì)象,以及運(yùn)算結(jié)果所存放的位置等。由于機(jī)器指令由物理部件的若干位二進(jìn)制0、1狀態(tài)體現(xiàn),因此機(jī)器指令的最直接的記憶形式就是表示這一指令狀態(tài)的二進(jìn)制數(shù),這個(gè)二進(jìn)制數(shù)就稱(chēng)作該機(jī)器指令的二進(jìn)制代碼指令。由于二進(jìn)制數(shù)和八進(jìn)制數(shù),以及十六進(jìn)制數(shù)的特殊關(guān)系,因此該二進(jìn)制代碼指令對(duì)應(yīng)的八進(jìn)制數(shù)和十六進(jìn)制數(shù)分別稱(chēng)作該機(jī)器指令的八進(jìn)制或十六進(jìn)制代碼指令。

例如:B233H就是一條80*86的十六進(jìn)制機(jī)器代碼指令,這條指令的功能是將33H這個(gè)十六進(jìn)制數(shù)送到DL寄存器。該機(jī)器指令的二進(jìn)制代碼指令是:1011001000110011,指令長(zhǎng)度16位。

顯然二進(jìn)制代碼指令與其狀態(tài)對(duì)應(yīng)直觀(guān),但記憶困難。而十六進(jìn)制代碼指令則方便記憶。因此80*86的代碼指令通常都用十六進(jìn)制表示。

用機(jī)器指令所寫(xiě)的程序稱(chēng)作機(jī)器指令程序,機(jī)器指令程序也指剛代碼指令所寫(xiě)的程序。機(jī)器指令程序遵循馮·諾依曼原理:用二進(jìn)制表示數(shù),程序與數(shù)據(jù)都存儲(chǔ)在同樣的存儲(chǔ)器,程序指令一般按存取順序執(zhí)行。

計(jì)算機(jī)出現(xiàn)初期只有一種機(jī)器語(yǔ)言,程序員只能用代碼指令編寫(xiě)程序,即機(jī)器語(yǔ)言程序。用機(jī)器語(yǔ)言編寫(xiě)程序是相當(dāng)艱苦的工作,必須由經(jīng)過(guò)嚴(yán)格訓(xùn)練的專(zhuān)業(yè)技術(shù)人員承擔(dān),這是早期計(jì)算機(jī)之所以不能夠廣泛應(yīng)用的最大障礙之一。

一方面機(jī)器語(yǔ)言十分重要,必須了解;另一方面機(jī)器代碼指令程序使用又十分困難;因因此唯一能夠替代機(jī)器語(yǔ)言的匯編語(yǔ)言就成為計(jì)算機(jī)科技人員必須掌握的一種計(jì)算機(jī)語(yǔ)言。

2、匯編語(yǔ)言

雖然用機(jī)器語(yǔ)言編寫(xiě)程序有許多不便,但程序執(zhí)行效率高。所以,在保留“程序執(zhí)行效率高”的前提下,人們開(kāi)始著手研究一種能大大改善程序可讀性的編程方法。即選用能反映機(jī)器指令功能的單詞或詞組來(lái)代替該機(jī)器指令的操作碼,選用相應(yīng)的符號(hào)表示CPU內(nèi)部資源和內(nèi)存等操作數(shù),這就是匯編指令。

例如,匯編指令:

MOVAL,BL其對(duì)應(yīng)的二進(jìn)制指令為:1101100010001000,十六進(jìn)制代碼指令則為D888H,可見(jiàn)記憶機(jī)器指令相當(dāng)困難。

而匯編指令中MOV源于Move,表示傳送指令;AL、BL分別表示80x86的AL和BL寄存器。指令功能是將BL寄存器中的內(nèi)容傳送到AL寄存器。如此,令人難懂的二進(jìn)制機(jī)器代碼指令或十六進(jìn)制機(jī)器代碼指令就可以用通俗易懂的、具有一定含義的符號(hào)指令來(lái)表示了,這就是匯編指令的原意。我們稱(chēng)這些具有一定含義的符號(hào),例如上述指令中的MOV,為助記符。用助記符、符號(hào)地址等組成的符號(hào)指令稱(chēng)為匯編格式指令或匯編指令。

因此,用助記符表示的機(jī)器指令稱(chēng)作匯編指令,用匯編指令編寫(xiě)的程序稱(chēng)作匯編指令程序。但匯編指令最終必須翻譯成機(jī)器指令才能夠在計(jì)算機(jī)上執(zhí)行。

匯編語(yǔ)言是匯編指令集、偽指令集及其使用規(guī)則的統(tǒng)稱(chēng)。能夠一對(duì)一地翻譯成機(jī)器指令的這種用助記符表示的機(jī)器指令稱(chēng)作匯編指令。偽指令則是出現(xiàn)在匯編語(yǔ)言程序中的一些輔助性的說(shuō)明,它不對(duì)應(yīng)具體的機(jī)器指令,而是程序設(shè)計(jì)者與匯編過(guò)程中的翻譯程序(即匯編)、連接程序,以及執(zhí)行時(shí)如何裝入的一種約定。

用匯編語(yǔ)言編寫(xiě)的程序稱(chēng)作匯編語(yǔ)言程序,或匯編語(yǔ)言源程序,也簡(jiǎn)稱(chēng)為源程序。匯編語(yǔ)言程序較之機(jī)器指令程序容易理解和維護(hù)。

匯編語(yǔ)言源程序是一個(gè)文本文件,它必須經(jīng)過(guò)翻譯才能夠變成可執(zhí)行的機(jī)器語(yǔ)言程序,這個(gè)翻譯過(guò)程稱(chēng)作匯編。匯編的核心過(guò)程是將匯編指令逐條翻譯成機(jī)器指令,這正是匯編語(yǔ)言中“匯編”一詞的含義。

80x86匯編語(yǔ)言源程序擴(kuò)展名為.a(chǎn)sm,經(jīng)過(guò)匯編以后生成的浮動(dòng)地址二進(jìn)制文件擴(kuò)展名為.obj,.obj文件需要經(jīng)過(guò)連接才能夠生成可執(zhí)行文件.exe。.exe是一個(gè)可以由操作系統(tǒng)執(zhí)行的機(jī)器指令程序。圖1-2給出了一個(gè)簡(jiǎn)單匯編語(yǔ)言程序與其機(jī)器指令程序之間的對(duì)應(yīng)關(guān)系。

盡管不同的CPU有不同的匯編語(yǔ)言,但不同種類(lèi)的匯編語(yǔ)言都有其共同規(guī)律。因此,學(xué)會(huì)一種匯編語(yǔ)言,再學(xué)習(xí)其他匯編語(yǔ)言就相對(duì)容易多了。

機(jī)器語(yǔ)言的發(fā)展

每種計(jì)算機(jī)都有自己獨(dú)特的機(jī)器指令,比如,某種型號(hào)的計(jì)算機(jī)用8位二進(jìn)制信息10001010表示加法指令,用00010011表示減法指令,等等。這些指令的執(zhí)行由計(jì)算機(jī)的線(xiàn)路來(lái)保證,計(jì)算機(jī)在設(shè)計(jì)之初,先就要確定好每一條指令對(duì)應(yīng)的線(xiàn)路邏輯操作。計(jì)算機(jī)處理信息的早期語(yǔ)言是所謂的機(jī)器語(yǔ)言,使用機(jī)器語(yǔ)言進(jìn)行程序設(shè)計(jì)需要面向機(jī)器來(lái)編寫(xiě)代碼,即需要針對(duì)不同的機(jī)器編寫(xiě)諸如01011100這樣的指令序列。用機(jī)器語(yǔ)言進(jìn)行程序設(shè)計(jì)是一項(xiàng)累人的工作,代碼難以閱讀和理解,一個(gè)簡(jiǎn)單的任務(wù)往往蘊(yùn)含著編寫(xiě)大量的代碼,而且同樣的任務(wù)需要針對(duì)不同型號(hào)的計(jì)算機(jī)分別進(jìn)行編寫(xiě)指令,因?yàn)橐环N型號(hào)的計(jì)算機(jī)用10001010表示加法指令,而另一種型號(hào)的計(jì)算機(jī)可能用11110000表示加法指令。因此,使用機(jī)器語(yǔ)言編程也稱(chēng)為面向機(jī)器編程。20世紀(jì)50年代出現(xiàn)了匯編語(yǔ)言,在編寫(xiě)指令時(shí),用一些簡(jiǎn)單的容易記憶的符號(hào)代替二進(jìn)制指令,但匯編語(yǔ)言仍是面向機(jī)器語(yǔ)言,需針對(duì)小同的機(jī)器編寫(xiě)不同的代碼。習(xí)慣上稱(chēng)機(jī)器語(yǔ)言、匯編語(yǔ)言是低級(jí)語(yǔ)言。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 匯編語(yǔ)言
    +關(guān)注

    關(guān)注

    14

    文章

    413

    瀏覽量

    38926
  • 機(jī)器語(yǔ)言
    +關(guān)注

    關(guān)注

    0

    文章

    36

    瀏覽量

    10997
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    c語(yǔ)言匯編語(yǔ)言機(jī)器語(yǔ)言的轉(zhuǎn)化

    匯編語(yǔ)言經(jīng)過(guò)匯編程序可以翻譯成及期望語(yǔ)言,C語(yǔ)言是不是必須先轉(zhuǎn)換為匯編語(yǔ)言,然后才能生成機(jī)器語(yǔ)言?還是C
    發(fā)表于 04-14 16:53

    匯編語(yǔ)言機(jī)器語(yǔ)言!

    機(jī)器語(yǔ)言是計(jì)算機(jī)直接認(rèn)識(shí)的語(yǔ)言,在電路中有高低電平表示,在邏輯中用0和1表示(0表示低或者開(kāi)關(guān)的斷開(kāi),1表示高或者開(kāi)關(guān)的閉合)機(jī)器語(yǔ)言是最早的機(jī)器運(yùn)行的
    發(fā)表于 03-13 17:22

    C語(yǔ)言為什么不能直接轉(zhuǎn)換為機(jī)器語(yǔ)言呢?

    單片機(jī)只能識(shí)別機(jī)器語(yǔ)言。匯編把程序轉(zhuǎn)換為機(jī)器語(yǔ)言,C語(yǔ)言把程序轉(zhuǎn)換為匯編語(yǔ)言,那么為什么C語(yǔ)言不直接轉(zhuǎn)換為
    發(fā)表于 04-12 16:51

    機(jī)器語(yǔ)言如何改變單片機(jī)程序感性認(rèn)知

    高級(jí)語(yǔ)言被編譯器變成最后的機(jī)器語(yǔ)言,機(jī)器碼被下載軟件下載進(jìn)單片機(jī)的flash,相關(guān)處理寄存器根據(jù)系統(tǒng)時(shí)鐘一拍一拍工作,讀取flash里的代碼。 代碼實(shí)際上是flash存儲(chǔ)單元的電位狀態(tài),進(jìn)而被理解為
    發(fā)表于 04-02 01:03

    什么是匯編語(yǔ)言

    (Symbol)或標(biāo)號(hào)(Label)代替地址碼。這樣用符號(hào)代替機(jī)器語(yǔ)言的二進(jìn)制碼,就把機(jī)器語(yǔ)言變成了匯編語(yǔ)言。匯編語(yǔ)言機(jī)器語(yǔ)言易于讀寫(xiě)、調(diào)
    發(fā)表于 07-19 06:05

    機(jī)器語(yǔ)言的預(yù)處理與編譯功能怎樣

    什么是機(jī)器語(yǔ)言呢?機(jī)器語(yǔ)言的預(yù)處理與編譯功能怎樣?
    發(fā)表于 01-19 06:41

    弱類(lèi)型語(yǔ)言哪些_和強(qiáng)類(lèi)型、動(dòng)態(tài)、靜態(tài)類(lèi)型的區(qū)別在哪里

    計(jì)算機(jī)不能直接理解高級(jí)語(yǔ)言,僅僅能直接理解機(jī)器語(yǔ)言,所以必需要把高級(jí)語(yǔ)言翻譯成機(jī)器語(yǔ)言,計(jì)算機(jī)才干運(yùn)行高級(jí)語(yǔ)言編寫(xiě)的程序。翻譯的方式
    發(fā)表于 12-04 16:12 ?1.1w次閱讀
    弱類(lèi)型<b class='flag-5'>語(yǔ)言</b><b class='flag-5'>有</b>哪些_和強(qiáng)類(lèi)型、動(dòng)態(tài)、靜態(tài)類(lèi)型的區(qū)別在哪里

    機(jī)器語(yǔ)言是什么_機(jī)器語(yǔ)言指令大全

    本文開(kāi)始介紹看機(jī)器語(yǔ)言是什么或概念,其次介紹了機(jī)器語(yǔ)言缺點(diǎn),最后介紹了機(jī)器語(yǔ)言指令概述及指令大全。
    的頭像 發(fā)表于 04-16 10:08 ?7.7w次閱讀
    <b class='flag-5'>機(jī)器語(yǔ)言</b>是什么_<b class='flag-5'>機(jī)器語(yǔ)言</b>指令大全

    高級(jí)語(yǔ)言和匯編語(yǔ)言_機(jī)器語(yǔ)言的區(qū)別

    本文首先介紹了高級(jí)語(yǔ)言的優(yōu)缺點(diǎn)、匯編語(yǔ)言的優(yōu)缺點(diǎn)及使用匯編語(yǔ)言的理由,其次介紹了機(jī)器語(yǔ)言的優(yōu)缺點(diǎn),最后闡述了高級(jí)語(yǔ)言和匯編
    的頭像 發(fā)表于 04-16 10:28 ?3.2w次閱讀

    80C51單片機(jī)匯編語(yǔ)言程序設(shè)計(jì)總結(jié)資料免費(fèi)下載

    序設(shè)計(jì)語(yǔ)言分:機(jī)器語(yǔ)言、匯編語(yǔ)言和中高級(jí)語(yǔ)言 1.機(jī)器語(yǔ)言:硬件識(shí)別,二進(jìn)制,無(wú)需翻譯、直接執(zhí)行,面向
    發(fā)表于 10-12 17:17 ?14次下載
    80C51單片機(jī)匯編<b class='flag-5'>語(yǔ)言</b>程序設(shè)計(jì)總結(jié)資料免費(fèi)下載

    計(jì)算機(jī)的機(jī)器語(yǔ)言和匯編語(yǔ)言與高級(jí)語(yǔ)言的詳細(xì)資料介紹

    計(jì)算機(jī)語(yǔ)言通常是一個(gè)能完整、準(zhǔn)確和規(guī)則地表達(dá)人們的意圖,并用以指揮或控制計(jì)算機(jī)工作的“符號(hào)系統(tǒng)”。計(jì)算機(jī)語(yǔ)言通常分為三類(lèi):即機(jī)器語(yǔ)言、匯編語(yǔ)言和高級(jí)
    的頭像 發(fā)表于 02-06 16:11 ?6662次閱讀

    單片機(jī)三大編程語(yǔ)言_單片機(jī)編程入門(mén)注意事項(xiàng)

    單片機(jī)的編程語(yǔ)言三種:機(jī)器語(yǔ)言、匯編語(yǔ)言與高級(jí)語(yǔ)言。機(jī)器語(yǔ)言是計(jì)算機(jī)能夠看懂的
    發(fā)表于 08-13 15:37 ?4.4w次閱讀

    基于使用PERSEUS-3計(jì)算機(jī)自制機(jī)器語(yǔ)言編程

    2007年,我開(kāi)發(fā)了一種名為PERSEUS-3的計(jì)算機(jī),以克服1980年自制的機(jī)器語(yǔ)言計(jì)算機(jī)遭受的挫折。其功能如下。
    的頭像 發(fā)表于 05-01 10:03 ?2453次閱讀

    什么語(yǔ)言適合做C2工具的免殺?

    機(jī)器語(yǔ)言(二進(jìn)制代碼)、匯編語(yǔ)言面向機(jī)器的程序設(shè)計(jì)語(yǔ)言)和符號(hào)語(yǔ)言。匯編
    的頭像 發(fā)表于 02-16 10:30 ?2133次閱讀

    高效解讀機(jī)器語(yǔ)言,profinet轉(zhuǎn)ethernet ip網(wǎng)關(guān)煙草企業(yè)自動(dòng)化升級(jí)案例分析

    高效解讀機(jī)器語(yǔ)言,profinet轉(zhuǎn)ethernetip網(wǎng)關(guān)煙草自動(dòng)化升級(jí)案例
    的頭像 發(fā)表于 04-07 15:16 ?525次閱讀
    高效解讀<b class='flag-5'>機(jī)器語(yǔ)言</b>,profinet轉(zhuǎn)ethernet ip網(wǎng)關(guān)煙草企業(yè)自動(dòng)化升級(jí)案例分析