偽指令有哪些 匯編偽指令ORG是干什么用的?
匯編偽指令ORG是干什么用的?Org的功能是定義程序或數(shù)據(jù)塊的起始地址。指示此語(yǔ)句之后的程序或數(shù)據(jù)塊以NN作為起始地址連續(xù)存儲(chǔ)在程序內(nèi)存中。在匯編語(yǔ)言源程序開始時(shí),通常使用org偽指令來(lái)指定程序的起始
匯編偽指令ORG是干什么用的?
Org的功能是定義程序或數(shù)據(jù)塊的起始地址。指示此語(yǔ)句之后的程序或數(shù)據(jù)塊以NN作為起始地址連續(xù)存儲(chǔ)在程序內(nèi)存中。
在匯編語(yǔ)言源程序開始時(shí),通常使用org偽指令來(lái)指定程序的起始地址。Org偽指令指定程序的起始地址從2000h開始,即程序的第一條指令“Mova,20h”從2000h開始。如果不使用Org規(guī)則,目標(biāo)程序?qū)?000H開始。
一般指令由CPU(Intel、AMD等)執(zhí)行。匯編程序(MASM、TASM等)可以在編譯階段解釋Org的功能。
如果匯編語(yǔ)言源程序中沒(méi)有org偽指令,則執(zhí)行程序時(shí),指令代碼將放在可用內(nèi)存空間的CS:0處;
如果有org偽指令,編譯器將把以下指令代碼放在org偽指令指定的偏移地址處。
如果兩個(gè)org偽指令(指令代碼除外)之間有可用空間,則用0填充。
51匯編的偽指令有哪些?簡(jiǎn)述其功能?
Org:設(shè)置程序起始地址結(jié)束:標(biāo)記源代碼結(jié)束eq:定義常量集:定義整數(shù)數(shù)據(jù):設(shè)置字節(jié)類型符號(hào)值byte:設(shè)置字節(jié)類型符號(hào)值wrod:設(shè)置字類型符號(hào)值bit:給定位地址名稱altname:使用自定義名稱替換保留字DB:加載字節(jié)向連續(xù)存儲(chǔ)區(qū)鍵入數(shù)據(jù)DW:為連續(xù)存儲(chǔ)區(qū)加載字體數(shù)據(jù)ds:保留連續(xù)存儲(chǔ)區(qū)或加載指定字節(jié)。在arm匯編語(yǔ)言程序中,有一些特殊的指令助記符,它們不同于指令系統(tǒng)的助記符,沒(méi)有相應(yīng)的操作碼。指令助記符是偽指令,它們的操作稱為偽操作。偽指令在源程序中的作用是為匯編程序的完成做各種準(zhǔn)備。這些偽指令只在匯編過(guò)程中起作用。一旦裝配完成,偽指令的任務(wù)就完成了。
匯編語(yǔ)言中的偽指令的作用?
[指令語(yǔ)句]每個(gè)指令語(yǔ)句都必須產(chǎn)生指令代碼(目標(biāo)代碼),在匯編源程序時(shí)計(jì)算機(jī)可以執(zhí)行這些指令代碼,所以這種語(yǔ)句也稱為可執(zhí)行語(yǔ)句。每個(gè)指令語(yǔ)句代表計(jì)算機(jī)的一種基本能力,如數(shù)據(jù)傳輸、兩個(gè)數(shù)的加減、移位等。這種能力是在目標(biāo)程序(一組有序的指令代碼)運(yùn)行時(shí)完成的,它取決于中央處理器(CPU)、內(nèi)存、內(nèi)存和,計(jì)算機(jī)中的I/O接口和其他硬件設(shè)備。[pseudo instruction statement]pseudo instruction statement用來(lái)表示匯編程序是如何匯編源程序的,所以這種語(yǔ)句也稱為命令語(yǔ)句。例如,源程序中的偽指令語(yǔ)句告訴匯編程序如何對(duì)源程序進(jìn)行分段,哪些邏輯段在程序段中,哪些是當(dāng)前段,哪些段寄存器指向它們,定義了哪些數(shù)據(jù),以及如何分配存儲(chǔ)單元,偽指令語(yǔ)句除了定義用于生成目標(biāo)代碼的特定數(shù)據(jù)外,沒(méi)有相應(yīng)的目標(biāo)代碼。這些偽指令語(yǔ)句的命令功能是由匯編程序在匯編源程序時(shí)執(zhí)行程序而不是在運(yùn)行目標(biāo)程序時(shí)執(zhí)行的。