匯編語言偽指令和匯編指令的區(qū)別
[指令語句]
每一條指令語句在源程序匯編時(shí)都要產(chǎn)生可供計(jì)算機(jī)執(zhí)行的指令代碼(即目標(biāo)代碼),所以這種語句又叫可執(zhí)行語句。每一條指令語句表示計(jì)算機(jī)具有的一個(gè)基本能力,如數(shù)據(jù)傳送,兩數(shù)相加或相減,移位等,而這種能力是在目標(biāo)程序(指令代碼的有序集合)運(yùn)行時(shí)完成的,是依賴于汁算機(jī)內(nèi)的中央處理器(CPU)、存儲(chǔ)器、I/O接口等硬件設(shè)備來實(shí)現(xiàn)的。
[偽指令語句]
偽指令語句是用于指示匯編程序如何匯編源程序,所以這種語句又叫命令語句。例如源程序中的偽指令語句告訴匯編程序:該源程序如何分段,有哪些邏輯段在程序段中哪些是當(dāng)前段,它們分別由哪個(gè)段寄存器指向;定義了哪些數(shù)據(jù),存儲(chǔ)單元是如何分配的等等。偽指令語句除定義的具體數(shù)據(jù)要生成目標(biāo)代碼外,其他均沒有對(duì)應(yīng)的目標(biāo)代碼。偽指令語句的這些命令功能是由匯編程序在匯編源程序時(shí),通過執(zhí)行一段程序來完成的,而不是在運(yùn)行目標(biāo)程序時(shí)實(shí)現(xiàn)的。
偽指令沒有對(duì)應(yīng)的機(jī)器代碼,它不像指令那樣由CPU來執(zhí)行,它 是由MASM匯編程序?qū)υ闯绦騾R編期間進(jìn)行處理的.
再次介紹指令和偽指令的區(qū)別
這個(gè)標(biāo)題看似簡(jiǎn)單,但是我卻一下子沒明白,這里做下記錄。
指令:每一條指令語句在源程序匯編時(shí)都要產(chǎn)生可供計(jì)算機(jī)執(zhí)行的指令代碼(即目標(biāo)代碼),所以這種語句又叫做可執(zhí)行語句,每一條指令語句表示CPU具有的一個(gè)基本能力,比如數(shù)據(jù)傳送,兩數(shù)相加或相減,移位等,而這種能力是在目標(biāo)程序運(yùn)行時(shí)完成的,是依賴于CPU、存儲(chǔ)器、IO等接口設(shè)備來實(shí)現(xiàn)的。
偽指令:顧名思義,它不是真正的指令,也就是不是最終的指令,是用于指示匯編程序如何匯編源程序,所以這種語句又叫命令語句,例如偽指令告訴匯編程序,該源程序如何分段,有哪些邏輯段在程序段中,哪些是當(dāng)前段等等,偽指令語句的這些命令功能是由匯編程序在匯編源程序時(shí),通過執(zhí)行另外一段程序來完成的,而不是在運(yùn)行目標(biāo)程序時(shí)實(shí)現(xiàn)的。
那么為什么要有偽指令,而不直接都用指令呢?原因是為了實(shí)現(xiàn)更高級(jí)的功能。
總結(jié):指令是控制程序運(yùn)行時(shí)的機(jī)器代碼運(yùn)作的,是CPU執(zhí)行的依據(jù),編程、編譯、執(zhí)行都是有效的。
偽指令不直接控制運(yùn)行時(shí)刻的機(jī)器,但是控制翻譯程序如何生成機(jī)器指令代碼,也就是只為編譯服務(wù),編譯完成后,偽 指令的作用也就消失了。
總結(jié)
以上所述是小編給大家介紹的匯編語言偽指令和匯編指令的區(qū)別,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
iOS匯編入門教程之在Xcode工程中嵌入?yún)R編代碼的方法
在Xcode中嵌入?yún)R編代碼主要依賴了C語言支持通過 __asm__ 引入?yún)R編代碼的功能。這篇文章主要介紹了iOS匯編入門教程之在Xcode工程中嵌入?yún)R編代碼的方法,需要的朋友可以參考下2020-02-02匯編語言AND指令實(shí)現(xiàn)對(duì)兩個(gè)操作數(shù)進(jìn)行邏輯(按位)與操作
這篇文章主要介紹了匯編語言AND指令實(shí)現(xiàn)對(duì)兩個(gè)操作數(shù)進(jìn)行邏輯(按位)與操作,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01詳解匯編語言RCL(帶進(jìn)位循環(huán)左移)和RCR(帶進(jìn)位循環(huán)右移)指令
這篇文章主要介紹了匯編語言RCL(帶進(jìn)位循環(huán)左移)和RCR(帶進(jìn)位循環(huán)右移)指令的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01匯編語言XOR指令:對(duì)兩個(gè)操作數(shù)進(jìn)行邏輯(按位)異或操作(推薦)
匯編語言(assembly language)是一種用于電子計(jì)算機(jī)、微處理器、微控制器或其他可編程器件的低級(jí)語言,亦稱為符號(hào)語言。這篇文章主要介紹了匯編語言XOR指令:對(duì)兩個(gè)操作數(shù)進(jìn)行邏輯(按位)異或操作,需要的朋友可以參考下2020-01-01在vs2017中編寫匯編的實(shí)現(xiàn)(圖文)
這篇文章主要介紹了在vs2017中編寫匯編的實(shí)現(xiàn)(圖文),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03匯編語言指令集學(xué)習(xí)條件轉(zhuǎn)移指令詳解
這篇文章主要為大家介紹了匯編語言指令集學(xué)習(xí)條件轉(zhuǎn)移的指令全面總結(jié)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-11-11