宏匯編語言兩種基本語句
匯編語言是面向機(jī)器的語言。匯編語言將機(jī)器語言符號(hào)化,用助記符代替機(jī)器語言指令的二進(jìn)制代碼,因此匯編語言源程序與其經(jīng)過匯編后產(chǎn)生的機(jī)器語言程序 之間具有一一對(duì)應(yīng)的關(guān)系。用匯編語言編程時(shí),允許編程人員直接使用存儲(chǔ)器、寄存器、I/O端口,直接對(duì)位、字節(jié)、字、寄存器、存儲(chǔ)單元和I/O端口進(jìn)行處 理,同時(shí)也能直接使用CPU的指令系統(tǒng)和各種尋址方式。所以,匯編語言源程序比高級(jí)語言編寫的源程序生成的目標(biāo)代碼要精煉,占內(nèi)存少,執(zhí)行速度快。由于匯 編語言的上述優(yōu)點(diǎn),所以它主要用于系統(tǒng)軟件、實(shí)時(shí)控制軟件、I/O接口驅(qū)動(dòng)等程序的設(shè)計(jì)中。
支持PC系列微機(jī)的匯編程序有ASM、MASM、OPTASM等多種,現(xiàn)在廣泛使用的MASM是美國Microsoft公司開發(fā)的宏匯編程序。它不僅包含了ASM的功能,還增加了宏指令、結(jié)構(gòu)、記錄等高級(jí)宏匯編語言功能。
MASM宏匯編語言有兩種基本語句,它們是指令語句和指示語句(又稱偽指令語句)。
1.指令語句(Instruction Statement)
指令語句又稱可執(zhí)行語句,它要求CPU執(zhí)行某種操作。在第3章中介紹的各種指令都是指令語句,指令語句經(jīng)匯編后產(chǎn)生機(jī)器目標(biāo)代碼。
指令語句的格式為:[標(biāo)號(hào):]指令助記符[操作數(shù)][;注釋]
一條指令語句可分為四個(gè)字段,其中方括號(hào)內(nèi)的字段為可選項(xiàng)。
1)標(biāo)號(hào)字段(Label field)
這是一個(gè)任選項(xiàng),以“”作為結(jié)束符。標(biāo)號(hào)是該指令的符號(hào)地址,它代表該指令的第一個(gè)字節(jié)地址。一個(gè)程序段或子程序的入口處通常用一個(gè)標(biāo)號(hào)來表示,當(dāng)程序需要轉(zhuǎn)移或調(diào)用時(shí),可直接引用此標(biāo)號(hào),這給編程帶來了方便。
匯編語言中,用來標(biāo)識(shí)某種數(shù)據(jù)結(jié)構(gòu)名稱(如變量、標(biāo)號(hào)、過程名等)的有效字符序列稱為標(biāo)識(shí)符。MASM的標(biāo)識(shí)符組成規(guī)則如下:
(1)標(biāo)識(shí)符有效長度1~31個(gè)字符;
。2)標(biāo)識(shí)符由字母(大寫或小寫的英文字母),數(shù)字(0~9)或某些特殊字符如@S|:・/等組成;
(3)第一個(gè)字符必須是字母,不允許用數(shù)字開頭,也不允許用特殊符號(hào)單獨(dú)作為標(biāo)識(shí)符;
。4)標(biāo)識(shí)符不能使用系統(tǒng)專用字,如AX(寄存器名),MOV(助記符)等。
2)指令助記符字段(Mnemonic field)
助記符是指令的關(guān)鍵部分,不可省略,例如MOV、ADD、SHL等。助記符表示要CPU完成什么具體操作,必要時(shí)可在助記符前加前綴以實(shí)現(xiàn)某些附加操作(如重復(fù)前綴REP)
3)操作數(shù)字段(Operand field)
操作數(shù)是指令運(yùn)算時(shí)需要的數(shù)據(jù)。由于有些指令不需要數(shù)據(jù),因此這部分可默認(rèn)。當(dāng)指令要求有兩個(gè)操作數(shù)時(shí),必須用逗號(hào)將兩個(gè)操作數(shù)分開。操作數(shù)可以用表達(dá)式來表示。
4)注釋字段(Comment field)
注釋字段是可選項(xiàng)。如果語句中帶注釋字段,則必須用分號(hào)開始。注釋字段用于對(duì)程序或指令加注釋,用以提高程序的可讀性,但匯編程序不對(duì)它做任何處理。
2.指示性語句(Pseud Instruction Statement)
指示語句又稱偽指令,它不要求CPU執(zhí)行某種操作,匯編時(shí)也不產(chǎn)生對(duì)應(yīng)的機(jī)器代碼,而僅僅給匯編程序提供匯編信息,如源程序起止信息、段內(nèi)存的安排等。
偽指令的格式為:[名字]偽指令定義符[操作數(shù)][;注釋]
其中方括號(hào)內(nèi)的字段為可選項(xiàng)。
指示語句的格式與指令語句類似,不同之處有以下幾點(diǎn):
。1)名字是給偽指令取的名稱,相當(dāng)于指令語句的標(biāo)號(hào),但在名字后面不允許帶冒號(hào)(:),名字可以默認(rèn)。
(2)偽指令定義符是由MASM規(guī)定的符號(hào),又稱為匯編命令,不可默認(rèn),如DB、DW、PROC等。
(3)操作數(shù)個(gè)數(shù)隨不同偽指令而相差懸殊,有的偽指令不允許有操作數(shù),有的偽指令允許帶許多個(gè)操作數(shù),這時(shí)必須用逗號(hào)將各個(gè)操作數(shù)分開。
作者:大學(xué)生新聞網(wǎng) 來源:大學(xué)生新聞網(wǎng)
發(fā)布時(shí)間:2018-09-17 瀏覽:
- 在線學(xué)習(xí)的4條建議
- 印第安納大學(xué)(IU)的新資源介紹了使在線學(xué)習(xí)成功的一些最重要因素。
當(dāng)IU關(guān)閉體育課并轉(zhuǎn)向在線教學(xué)時(shí),電子學(xué)習(xí)研究與實(shí)踐實(shí)驗(yàn)室開始
- 06-09 關(guān)注:65
- 激光視盤 可以自由放置和使用
- 激光視盤采用丙烯酸塑料制成,大多數(shù)光盤直徑為30厘米(C12英寸),也有13厘 米(5英寸)的小型盤,盤的轉(zhuǎn)速為1500轉(zhuǎn)/分,但應(yīng)指出,為
- 09-18 關(guān)注:133
- 電腦正在進(jìn)入有線電視網(wǎng)
- 當(dāng)前,隨著數(shù)字計(jì)算機(jī)和多媒體技術(shù)的發(fā)展,許多大的計(jì)算機(jī)制造公司都提出,在微型計(jì)算機(jī)上實(shí)現(xiàn)電視的功能,即利用計(jì)算機(jī)網(wǎng)絡(luò)來接收數(shù)字
- 09-18 關(guān)注:128
- 電視信號(hào)的傳輸過程
- 當(dāng)前,像高保真音響、高清晰度電視、VCD、數(shù)碼錄音等新詞匯大量充斥在我們身邊,它們一方面代表這新技術(shù)的涌現(xiàn),另一方面也體現(xiàn)了這些
- 09-18 關(guān)注:196
- 中斷技術(shù)引入計(jì)算機(jī)系統(tǒng)
- 中斷技術(shù)是現(xiàn)代計(jì)算機(jī)系統(tǒng)中很重要的功能。最初,中斷技術(shù)引入計(jì)算機(jī)系統(tǒng),只是為了解決快速的CPU與慢速的外部設(shè)備之間傳送數(shù)據(jù)的矛盾
- 09-18 關(guān)注:261