亚洲综合AⅤ一区二区三区不卡,欧美成在线观看国产,老司机精品视频在线观看播放,精品久久国产免费

<dl id="2gmk4"><small id="2gmk4"></small></dl>
  • 首頁(yè)考試吧論壇Exam8視線考試商城網(wǎng)絡(luò)課程模擬考試考友錄實(shí)用文檔求職招聘論文下載
    2013中考
    法律碩士
    2013高考
    MBA考試
    2013考研
    MPA考試
    在職研
    中科院
    考研培訓(xùn) 自學(xué)考試 成人高考
    四 六 級(jí)
    GRE考試
    攻碩英語(yǔ)
    零起點(diǎn)日語(yǔ)
    職稱英語(yǔ)
    口譯筆譯
    申碩英語(yǔ)
    零起點(diǎn)韓語(yǔ)
    商務(wù)英語(yǔ)
    日語(yǔ)等級(jí)
    GMAT考試
    公共英語(yǔ)
    職稱日語(yǔ)
    新概念英語(yǔ)
    專四專八
    博思考試
    零起點(diǎn)英語(yǔ)
    托?荚
    托業(yè)考試
    零起點(diǎn)法語(yǔ)
    雅思考試
    成人英語(yǔ)三級(jí)
    零起點(diǎn)德語(yǔ)
    等級(jí)考試
    華為認(rèn)證
    水平考試
    Java認(rèn)證
    職稱計(jì)算機(jī) 微軟認(rèn)證 思科認(rèn)證 Oracle認(rèn)證 Linux認(rèn)證
    公 務(wù) 員
    導(dǎo)游考試
    物 流 師
    出版資格
    單 證 員
    報(bào) 關(guān) 員
    外 銷 員
    價(jià)格鑒證
    網(wǎng)絡(luò)編輯
    駕 駛 員
    報(bào)檢員
    法律顧問(wèn)
    管理咨詢
    企業(yè)培訓(xùn)
    社會(huì)工作者
    銀行從業(yè)
    教師資格
    營(yíng)養(yǎng)師
    保險(xiǎn)從業(yè)
    普 通 話
    證券從業(yè)
    跟 單 員
    秘書(shū)資格
    電子商務(wù)
    期貨考試
    國(guó)際商務(wù)
    心理咨詢
    營(yíng) 銷 師
    司法考試
    國(guó)際貨運(yùn)代理人
    人力資源管理師
    廣告師職業(yè)水平
    衛(wèi)生資格 執(zhí)業(yè)醫(yī)師 執(zhí)業(yè)藥師 執(zhí)業(yè)護(hù)士
    會(huì)計(jì)從業(yè)資格
    基金從業(yè)資格
    統(tǒng)計(jì)從業(yè)資格
    經(jīng)濟(jì)師
    精算師
    統(tǒng)計(jì)師
    會(huì)計(jì)職稱
    法律顧問(wèn)
    ACCA考試
    注冊(cè)會(huì)計(jì)師
    資產(chǎn)評(píng)估師
    審計(jì)師考試
    高級(jí)會(huì)計(jì)師
    注冊(cè)稅務(wù)師
    國(guó)際內(nèi)審師
    理財(cái)規(guī)劃師
    美國(guó)注冊(cè)會(huì)計(jì)師
    一級(jí)建造師
    安全工程師
    設(shè)備監(jiān)理師
    公路監(jiān)理師
    公路造價(jià)師
    二級(jí)建造師
    招標(biāo)師考試
    物業(yè)管理師
    電氣工程師
    建筑師考試
    造價(jià)工程師
    注冊(cè)測(cè)繪師
    質(zhì)量工程師
    巖土工程師
    造價(jià)員考試
    注冊(cè)計(jì)量師
    環(huán)保工程師
    化工工程師
    咨詢工程師
    結(jié)構(gòu)工程師
    城市規(guī)劃師
    材料員考試
    監(jiān)理工程師
    房地產(chǎn)估價(jià)
    土地估價(jià)師
    安全評(píng)價(jià)師
    房地產(chǎn)經(jīng)紀(jì)人
    投資項(xiàng)目管理師
    環(huán)境影響評(píng)價(jià)師
    土地登記代理人
    繽紛校園 實(shí)用文檔 英語(yǔ)學(xué)習(xí) 作文大全 求職招聘 論文下載 訪談|游戲
    軟件水平考試
    軟件水平考試資訊
    軟件水平考試試題
    軟件水平考試專項(xiàng)輔導(dǎo)
    軟件水平考試交流互動(dòng)
    軟件水平考試交流互動(dòng)
    您現(xiàn)在的位置: 考試吧 > 軟件水平考試 > 復(fù)習(xí)資料 > 系統(tǒng)分析師 > 正文

    2012年軟考系統(tǒng)分析師經(jīng)典教程:匯編語(yǔ)言

      2.2 匯編語(yǔ)言:

      匯編語(yǔ)言是一種功能很強(qiáng)的程序設(shè)計(jì)語(yǔ)言,也是利用計(jì)算機(jī)所有硬件特性并能直接控制硬件的語(yǔ)言。匯編語(yǔ)言,作為一門(mén)語(yǔ)匯編語(yǔ)言言,對(duì)應(yīng)于高級(jí)語(yǔ)言的編譯器,需要一個(gè)“匯編器”來(lái)把匯編語(yǔ)言原文件匯編成機(jī)器可執(zhí)行的代碼。高級(jí)的匯編器如MASM,TASM等等為我們寫(xiě)匯編程序提供了很多類似于高級(jí)語(yǔ)言的特征,比如結(jié)構(gòu)化、抽象等。在這樣的環(huán)境中編寫(xiě)的匯編程序,有很大一部分是面向匯編器的偽指令,已經(jīng)類同于高級(jí)語(yǔ)言。現(xiàn)在的匯編環(huán)境已經(jīng)如此高級(jí),即使全部用匯編語(yǔ)言來(lái)編寫(xiě)windows的應(yīng)用程序也是可行的,但這不是匯編語(yǔ)言的長(zhǎng)處。匯編語(yǔ)言的長(zhǎng)處在于編寫(xiě)高效且需要對(duì)機(jī)器硬件精確控制的程序。

      匯編語(yǔ)言是為特定的計(jì)算機(jī)或者計(jì)算機(jī)系統(tǒng)設(shè)計(jì)的面向機(jī)器的語(yǔ)言。

      匯編語(yǔ)言中的語(yǔ)句可以分成兩大類:

      ● 與機(jī)器指令相對(duì)應(yīng)的可執(zhí)行匯編語(yǔ)句;

      ● 匯編控制語(yǔ)句,即偽指令。

      偽指令并不翻譯成機(jī)器指令,它的作用是控制匯編程序工作。

      每條匯編語(yǔ)句被劃分成4個(gè)區(qū),依次是標(biāo)號(hào)區(qū)、操作碼區(qū)、操作數(shù)區(qū)和注解區(qū)。

      例如:[標(biāo)號(hào)] [操作碼] [操作數(shù)] [注解]

      用匯編語(yǔ)言編寫(xiě)的源程序,要通過(guò)匯編程序?qū)⑺g成機(jī)器語(yǔ)言程序,才能被計(jì)算機(jī)執(zhí)行。因此,匯編程序的功能就是將匯編語(yǔ)言所編寫(xiě)的源程序翻譯成由機(jī)器指令和其他信息組成的目標(biāo)程序。它的基本工作包括:

      ● 將每一條可執(zhí)行匯編語(yǔ)句轉(zhuǎn)換成對(duì)應(yīng)的機(jī)器指令;

      ● 處理源程序中出現(xiàn)的偽指令。

      整個(gè)匯編程序工作通常要對(duì)源程序進(jìn)行兩次掃描才能完成。第一次掃描主要工作是定義符號(hào)的值。第二次掃描的目的則是產(chǎn)生目標(biāo)程序。其中,可執(zhí)行匯編語(yǔ)句被翻譯成對(duì)應(yīng)的二進(jìn)制代碼機(jī)器指令,而偽指令會(huì)根據(jù)偽指令記憶碼調(diào)用偽指令表對(duì)應(yīng)元素所規(guī)定的子程序入口。

      大多數(shù)情況下Linux程序員不需要使用匯編語(yǔ)言,因?yàn)榧幢闶怯布?qū)動(dòng)這樣的底層程序在Linux操作系統(tǒng)中也可以完全用C語(yǔ)言來(lái)實(shí)現(xiàn),再加上GCC這一優(yōu)秀的編譯器目前已經(jīng)能夠?qū)ψ罱K生成的代碼進(jìn)行很好的優(yōu)化,的確有足夠的理由讓我們可以暫時(shí)將匯編語(yǔ)言拋在一邊了。但實(shí)際情況是Linux程序員有時(shí)還是需要使用匯編,或者不得不使用匯編,理由很簡(jiǎn)單:精簡(jiǎn)、高效和libc無(wú)關(guān)性。假設(shè)要移植Linux到某一特定的嵌入式硬件環(huán)境下,首先必然面臨如何減少系統(tǒng)大小、提高執(zhí)行效率等問(wèn)題,此時(shí)或許只有匯編語(yǔ)言能幫上忙了。

      優(yōu)點(diǎn)

      匯編語(yǔ)言直接同計(jì)算機(jī)的底層軟件甚至硬件進(jìn)行交互,它具有如下一些優(yōu)點(diǎn):

      (1)能夠直接訪問(wèn)與硬件相關(guān)的存儲(chǔ)器或I/O端口;

      (2)能夠不受編譯器的限制,對(duì)生成的二進(jìn)制代碼進(jìn)行完全的控制;

      (3)能夠?qū)﹃P(guān)鍵代碼進(jìn)行更準(zhǔn)確的控制,避免因線程共同訪問(wèn)或者硬件設(shè)備共享引起的死鎖;

      (4)能夠根據(jù)特定的應(yīng)用對(duì)代碼做最佳的優(yōu)化,提高運(yùn)行速度;

      (5)能夠最大限度地發(fā)揮硬件的功能。

      缺點(diǎn)

      同時(shí)還應(yīng)該認(rèn)識(shí)到,匯編語(yǔ)言是一種層次非常低的語(yǔ)言,它僅僅高于直接手工編寫(xiě)二進(jìn)制的機(jī)器指令碼,因此不可避免地存在一些缺點(diǎn):

      (1)編寫(xiě)的代碼非常難懂,不好維護(hù);

      (2)很容易產(chǎn)生bug,難于調(diào)試;

      (3)只能針對(duì)特定的體系結(jié)構(gòu)和處理器進(jìn)行優(yōu)化;

      (4)開(kāi)發(fā)效率很低,時(shí)間長(zhǎng)且單調(diào)。

      特點(diǎn)

      匯編語(yǔ)言比機(jī)器語(yǔ)言易于讀寫(xiě)、調(diào)試和修改,同時(shí)具有機(jī)器語(yǔ)言全部?jī)?yōu)點(diǎn)。但在編寫(xiě)復(fù)雜程序時(shí),相對(duì)高級(jí)語(yǔ)言代碼量較大,而且匯編語(yǔ)言依賴于具體的處理器體系結(jié)構(gòu),不能通用,因此不能直接在不同處理器體系結(jié)構(gòu)之間移植。匯編語(yǔ)言的特點(diǎn):

      1.面向機(jī)器的低級(jí)語(yǔ)言,通常是為特定的計(jì)算機(jī)或系列計(jì)算機(jī)專門(mén)設(shè)計(jì)的。

      2.保持了機(jī)器語(yǔ)言的優(yōu)點(diǎn),具有直接和簡(jiǎn)捷的特點(diǎn)。

      3.可有效地訪問(wèn)、控制計(jì)算機(jī)的各種硬件設(shè)備,如磁盤(pán)、存儲(chǔ)器、CPU、I/O端口等。

      4.目標(biāo)代碼簡(jiǎn)短,占用內(nèi)存少,執(zhí)行速度快,是高效的程序設(shè)計(jì)語(yǔ)言。

      5.經(jīng)常與高級(jí)語(yǔ)言配合使用,應(yīng)用十分廣泛。

      對(duì)于不同型號(hào)的計(jì)算機(jī),有著不同的結(jié)構(gòu)的匯編語(yǔ)言。

      匯編語(yǔ)言由于采用了助記符號(hào)來(lái)編寫(xiě)程序,比用機(jī)器語(yǔ)言的二進(jìn)制代碼編程要方便些,在一定程度上簡(jiǎn)化了編程過(guò)程。匯編語(yǔ)言的特點(diǎn)是用符號(hào)代替了機(jī)器指令代碼,而且助記符與指令代碼一一對(duì)應(yīng),基本保留了機(jī)器語(yǔ)言的靈活性。使用匯編語(yǔ)言能面向機(jī)器并較好地發(fā)揮機(jī)器的特性,得到質(zhì)量較高的程序。

      匯編語(yǔ)言是面向具體機(jī)型的,它離不開(kāi)具體計(jì)算機(jī)的指令系統(tǒng),因此,對(duì)于不同型號(hào)的計(jì)算機(jī),有著不同的結(jié)構(gòu)的匯編語(yǔ)言,而且,對(duì)于同一問(wèn)題所編制的匯編語(yǔ)言程序在不同種類的計(jì)算機(jī)間是互不相通的。

      匯編語(yǔ)言中由于使用了助記符號(hào),用匯編語(yǔ)言編制的程序輸入計(jì)算機(jī),計(jì)算機(jī)不能象用機(jī)器語(yǔ)言編寫(xiě)的程序一樣直接識(shí)別和執(zhí)行,必須通過(guò)預(yù)先放入計(jì)算機(jī)的“匯編程序”中進(jìn)行加工和翻譯,才能變成能夠被計(jì)算機(jī)直接識(shí)別和處理的二進(jìn)制代碼程序。用匯編語(yǔ)言等非機(jī)器語(yǔ)言書(shū)寫(xiě)好的符號(hào)程序稱為源程序,運(yùn)行時(shí)匯編程序要將源程序翻譯成目標(biāo)程序。目標(biāo)程序是機(jī)器語(yǔ)言程序,當(dāng)它被安置在內(nèi)存的預(yù)定位置上,就能被計(jì)算機(jī)的CPU處理和執(zhí)行。

      匯編語(yǔ)言像機(jī)器指令一樣,是硬件操作的控制信息,因而仍然是面向機(jī)器的語(yǔ)言,使用起來(lái)還是比較繁瑣費(fèi)時(shí),通用性也差。但是,匯編語(yǔ)言用來(lái)編制系統(tǒng)軟件和過(guò)程控制軟件,其目標(biāo)程序占用內(nèi)存空間少,運(yùn)行速度快,有著高級(jí)語(yǔ)言不可替代的用途。

      應(yīng)用

      匯編語(yǔ)言作為最基本的編程語(yǔ)言之一,匯編語(yǔ)言雖然應(yīng)用的范圍不算很廣,但重要性卻勿庸置疑,因?yàn)樗軌蛲瓿稍S多其它匯編語(yǔ)言程序設(shè)計(jì)語(yǔ)言所無(wú)法完成的功能。就拿Linux內(nèi)核來(lái)講,雖然絕大部分代碼是用C語(yǔ)言編寫(xiě)的,但仍然不可避免地在某些關(guān)鍵地方使用了匯編代碼,其中主要是在Linux的啟動(dòng)部分。由于這部分代碼與硬件的關(guān)系非常密切,即使是C語(yǔ)言也會(huì)有些力不從心,而匯編語(yǔ)言則能夠很好揚(yáng)長(zhǎng)避短,最大限度地發(fā)揮硬件的性能。

      1.70%以上的系統(tǒng)軟件是用匯編語(yǔ)言編寫(xiě)的。

      2.某些快速處理、位處理、訪問(wèn)硬件設(shè)備等高效程序是用匯編語(yǔ)言編寫(xiě)的。

      3.某些高級(jí)繪圖程序、視頻游戲程序是用匯編語(yǔ)言編寫(xiě)的。

      匯編語(yǔ)言是理解整個(gè)計(jì)算機(jī)系統(tǒng)的最佳起點(diǎn)和最有效途徑,人們經(jīng)常認(rèn)為匯編語(yǔ)言的應(yīng)用范圍很小,而忽視它的重要性。其實(shí)匯編語(yǔ)言對(duì)每一個(gè)希望學(xué)習(xí)計(jì)算機(jī)科學(xué)與技術(shù)的人來(lái)說(shuō)都是非常重要的,是不能不學(xué)習(xí)的語(yǔ)言。所有可編程計(jì)算機(jī)都向人們提供機(jī)器指令,通過(guò)機(jī)器指令人們能夠使用機(jī)器的邏輯功能。所有程序,不論用何種語(yǔ)言編制,都必須轉(zhuǎn)成機(jī)器指令,運(yùn)用機(jī)器的邏輯功能,其功能才能得以實(shí)現(xiàn)。機(jī)器的邏輯功能,軟件系統(tǒng)功能構(gòu)筑其上,硬件系統(tǒng)功能運(yùn)行于下。匯編語(yǔ)言直接描述機(jī)器指令,比機(jī)器指令容易記憶和理解。通過(guò)學(xué)習(xí)和使用匯編語(yǔ)言,能夠感知、體會(huì)、理解機(jī)器的邏輯功能,向上為理解各種軟件系統(tǒng)的原理,打下技術(shù)理論基礎(chǔ);向下為掌握硬件系統(tǒng)的原理,打下實(shí)踐應(yīng)用基礎(chǔ)。學(xué)習(xí)匯編語(yǔ)言,向上可以理解軟件,向下能夠感知硬件,是我們理解整個(gè)計(jì)算機(jī)系統(tǒng)的最佳起點(diǎn)。

      相關(guān)推薦:

      2012年軟考系統(tǒng)分析師考試60天完美復(fù)習(xí)計(jì)劃

      2012年軟件水平考試網(wǎng)絡(luò)工程師章節(jié)筆記講義匯總

      2012年上半年軟件水平考試成績(jī)查詢匯總

    文章搜索
    軟件水平考試欄目導(dǎo)航
    版權(quán)聲明:如果軟件水平考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@lyawyb.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本軟件水平考試網(wǎng)內(nèi)容,請(qǐng)注明出處。