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