微機(jī)原理及應(yīng)用 課件 6.1 匯編語(yǔ)言源程序的結(jié)構(gòu)_第1頁(yè)
微機(jī)原理及應(yīng)用 課件 6.1 匯編語(yǔ)言源程序的結(jié)構(gòu)_第2頁(yè)
微機(jī)原理及應(yīng)用 課件 6.1 匯編語(yǔ)言源程序的結(jié)構(gòu)_第3頁(yè)
微機(jī)原理及應(yīng)用 課件 6.1 匯編語(yǔ)言源程序的結(jié)構(gòu)_第4頁(yè)
微機(jī)原理及應(yīng)用 課件 6.1 匯編語(yǔ)言源程序的結(jié)構(gòu)_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

微機(jī)原理及應(yīng)用第六章匯編語(yǔ)言程序設(shè)計(jì)第一講匯編語(yǔ)言源程序的結(jié)構(gòu)從本次課開(kāi)始,我們來(lái)學(xué)習(xí)匯編語(yǔ)言源程序設(shè)計(jì)匯編語(yǔ)言源程序的結(jié)構(gòu)首先來(lái)看一下什么是匯編語(yǔ)言在了解匯編語(yǔ)言之前,我們先來(lái)了解一下高級(jí)語(yǔ)言。高級(jí)語(yǔ)言是脫離了機(jī)器的語(yǔ)言,不需要考慮計(jì)算機(jī)生產(chǎn)的廠家或者是CPU的型號(hào),它更接近于人的自然語(yǔ)言,因此比較容易學(xué),容易懂,由于高級(jí)語(yǔ)言比較容易掌握,因而它的應(yīng)用也十分廣泛比如大家都學(xué)習(xí)過(guò)的c語(yǔ)言,就是高級(jí)語(yǔ)言的一種什么是匯編語(yǔ)言?首先來(lái)看一下什么是匯編語(yǔ)言,在了解匯編語(yǔ)言之前,我們先來(lái)了解一下高級(jí)語(yǔ)言。高級(jí)語(yǔ)言是脫離了機(jī)器的語(yǔ)言,不需要考慮計(jì)算機(jī)生產(chǎn)的廠家或者是CPU的型號(hào),它更接近于人的自然語(yǔ)言,因此比較容易學(xué),容易懂,高級(jí)語(yǔ)言脫離機(jī)器的語(yǔ)言接近人的自然語(yǔ)言容易掌握比如大家都學(xué)習(xí)過(guò)的c語(yǔ)言,就是高級(jí)語(yǔ)言的一種脫離機(jī)器的語(yǔ)言接近人的自然語(yǔ)言容易掌握c語(yǔ)言高級(jí)語(yǔ)言那么什么是機(jī)器語(yǔ)言呢?什么是機(jī)器語(yǔ)言?機(jī)器語(yǔ)言是指各種CPU所能直接識(shí)別和執(zhí)行的二進(jìn)制代碼機(jī)器語(yǔ)言CPU能直接識(shí)別和執(zhí)行的二進(jìn)制代碼它是計(jì)算機(jī)能夠直接識(shí)別的語(yǔ)言,但是對(duì)于人來(lái)說(shuō)就比較難于記憶、書(shū)寫(xiě)和輸入機(jī)器語(yǔ)言計(jì)算機(jī)人能夠直接識(shí)別較難記憶、書(shū)寫(xiě)和輸入?yún)R編語(yǔ)言是介于高級(jí)語(yǔ)言和機(jī)器語(yǔ)言的一種語(yǔ)言匯編語(yǔ)言高級(jí)語(yǔ)言機(jī)器語(yǔ)言它是將機(jī)器語(yǔ)言中的代碼指令符號(hào)化成了助記符而構(gòu)成的一種編程語(yǔ)言,它的每一條指令都是用助記符來(lái)表示的,再加上一系列的編程規(guī)則,就構(gòu)成了匯編語(yǔ)言將機(jī)器語(yǔ)言中的代碼指令符號(hào)化成助記符匯編語(yǔ)言:每一條指令都用助記符表示,再加上編程規(guī)則匯編語(yǔ)言的優(yōu)點(diǎn)包括,它采用了助記符指令,對(duì)于人來(lái)說(shuō)更容易記憶和書(shū)寫(xiě),第二個(gè)優(yōu)點(diǎn)是,匯編語(yǔ)言經(jīng)過(guò)編輯、匯編,連接和調(diào)試以后可以生成可執(zhí)行的文件,可執(zhí)行文件就是CPU能夠直接識(shí)別的代碼了,因此CPU去執(zhí)行它的時(shí)候就會(huì)非常的快01采用了助記符指令,容易記憶和書(shū)寫(xiě)02經(jīng)過(guò)編輯、匯編,連接和調(diào)試后生成可執(zhí)行的文件匯編語(yǔ)言的優(yōu)點(diǎn)可執(zhí)行文件:CPU能直接識(shí)別的代碼它的缺點(diǎn)是跟硬件結(jié)構(gòu)相掛鉤,也就是說(shuō)不同的硬件結(jié)構(gòu)的匯編語(yǔ)言指令可能是不相同的,因此,一旦換了硬件,程序可能就跑不了了。匯編語(yǔ)言的缺點(diǎn)硬件結(jié)構(gòu)硬件結(jié)構(gòu)不同的匯編語(yǔ)言指令可能不同在前面,我們已經(jīng)學(xué)習(xí)了8088和8086的指令集,這一章,我們會(huì)利用這些指令來(lái)完成一個(gè)功能程序的編寫(xiě)編寫(xiě)功能程序下面我們來(lái)了解一下匯編語(yǔ)言的程序結(jié)構(gòu)匯編語(yǔ)言的程序結(jié)構(gòu)一個(gè)完整的匯編語(yǔ)言源程序,通常是由若干個(gè)邏輯段組成的,邏輯段我們跟他叫segment,在程序中你可能會(huì)看到很多個(gè)segment,這些segment定義了邏輯段的內(nèi)容,如數(shù)據(jù)段,附加段,堆棧段和代碼段,每個(gè)邏輯段都是用segment這個(gè)語(yǔ)句開(kāi)始,并且用ENDS這個(gè)語(yǔ)句結(jié)束,而整個(gè)源程序用and語(yǔ)句來(lái)結(jié)束程序結(jié)構(gòu)匯編語(yǔ)言源程序:由若干個(gè)邏輯段(SEGMENT)組成包括數(shù)據(jù)段、附加段、堆棧段和代碼段每個(gè)邏輯段以SEGMENT語(yǔ)句開(kāi)始,ENDS語(yǔ)句結(jié)束整個(gè)源程序用END語(yǔ)句結(jié)束大體上這個(gè)結(jié)構(gòu)呢就是這樣子的段名1SEGMENT…段名1ENDS段名2SEGMENT…段名2ENDSEND下面通過(guò)一個(gè)例子來(lái)看一下,大家不需要了解這個(gè)例子它所執(zhí)行的功能,只看它的結(jié)構(gòu)DSEGSEGMENT定義數(shù)據(jù)段DATA1DW0F865H定義被加數(shù)DATA2DW360CH定義加數(shù)DSEGENDS數(shù)據(jù)段結(jié)束ESEGSEGMENT定義附加段SUMDW2DUP(?)定義存放結(jié)果區(qū)ESEGENDS附加段結(jié)束CSEGSEGMENT定義代碼段ASSUMECS:CSEG,DS:DSEG,ES:ESEG結(jié)構(gòu)首先,在程序的一開(kāi)始,用紅色的字符寫(xiě)出了一個(gè)Segment,它表示一個(gè)邏輯段的開(kāi)始,紅色的字符ENDS,表示這個(gè)邏輯段的結(jié)束DSEGSEGMENT定義數(shù)據(jù)段DATA1DW0F865H定義被加數(shù)DATA2DW360CH定義加數(shù)DSEGENDS數(shù)據(jù)段結(jié)束ESEGSEGMENT定義附加段SUMDW2DUP(?)定義存放結(jié)果區(qū)ESEGENDS附加段結(jié)束CSEGSEGMENT定義代碼段ASSUMECS:CSEG,DS:DSEG,ES:ESEG開(kāi)始一個(gè)邏輯段結(jié)束一個(gè)邏輯段隨后又用Segment和ENDS定義了第二個(gè)段,然后又定義了第三個(gè)段,DSEGSEGMENT定義數(shù)據(jù)段DATA1DW0F865H定義被加數(shù)DATA2DW360CH定義加數(shù)DSEGENDS數(shù)據(jù)段結(jié)束ESEGSEGMENT定義附加段SUMDW2DUP(?)定義存放結(jié)果區(qū)ESEGENDS附加段結(jié)束CSEGSEGMENT定義代碼段ASSUMECS:CSEG,DS:DSEG,ES:ESEG在這個(gè)段里,我們看到很多熟悉的指令,這就是代碼段,最后整個(gè)程序用END結(jié)束,這就是一個(gè)匯編語(yǔ)言源程序的大體結(jié)構(gòu)START:MOVAX,DSEGMOVDS,AX初始化DSMOVAX,ESEGMOVES,AX初始化ESLEASI,SUMSUM偏移地址送S

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論