freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

匯編語言的基本語法-資料下載頁

2025-08-09 15:17本頁面
  

【正文】 DATA20 DB 0FFH 0FFH 0FFH 0FFH 0FFH 0FFH。 DATA21 DB 6 DUP(0FFH) DUP操作一般用來保留數(shù)據(jù)區(qū),如用數(shù)據(jù)定義偽指令 DB 64 DUP(?)可保留 64個字節(jié)單元。 DUP還可以嵌套。 表達式賦值偽操作 EQU 有時程序中多次出現(xiàn)同一個表達式,為方便起見可以用賦植偽操作給表達式賦予一個名字,其格式如下: Expresstion_name EQU Expresstion 此后,程序中凡需要用到該表達式之處就可以用表達式名來代替。上式中表達式可以是任何有效的操作數(shù)格式,可以是任何可以求出常數(shù)值的表達式,也可以是任何有效的助記符。 EQU是一個賦值偽操作(偽指令),它給一個數(shù)據(jù)標號賦于一個常數(shù)值,但這個常數(shù)不占用存儲單元。當這個數(shù)據(jù)標號出現(xiàn)在程序中時,匯編程序即用它的常數(shù)值代替數(shù)據(jù)標號。 EQU可以在數(shù)據(jù)段之外使用,甚至可用在代碼段中間。 假定在數(shù)據(jù)段和代碼段中要多次使用一個數(shù)據(jù)(如 25),那么在編程時凡是用到 25的地方都可用數(shù)據(jù)標號 COUNT來表示。如果程序想修改這個數(shù)據(jù),那么只需修改 EQU的賦值,而無須修改程序中其它部分,如 COUNTER和MOV語句就不必修改。 COUNT EQU 25 COUNTER DB COUNT MOV AL, COUNT DATA EQU HEIGHT + 12 。 地址表達式賦以符號 ALPHA EQU 7 。 常數(shù)賦以符號名 BETA EQU ALPHA2 。 把 72=5賦以符號名 BETA ADDR EQU VAR + BETA 。 VAR+5賦以符號名 ADDR B EQU [BP + 8] 。 變址引用賦以符號名 B P8 EQU DS:[BP + 8] 。 加段前綴的變址引用賦以符號名 P8 注意:在 EQU語句的表達式中,如果有變量或標號的表達式,則在該語句前應(yīng)該先給出它們的定義。如上例, ALPHA必須在 BETA之前定義,否則匯編程序?qū)⒅甘境鲥e。 = 偽操作 賦值偽操作 =的作用與 EQU類似。它們之間的區(qū)別是, EQU偽操作中的標號名是不允許重復定義的,而 =偽操作是允許重復定義的。 例如, TMP EQU 5 TMP EQU TMP+1 則是錯誤語句,因為 TMP已賦值為 5,就不能再把它定義為其它數(shù)值。 而 TMP = 5 TMP = TMP+1 則是允許使用的,因為 =偽操作允許重復定義。第一個語句 TMP的值為 5,第二個語句 TMP的值就為 6了。 地址計數(shù)器與對準偽指令 1.地址計數(shù)器$ 在匯編程序?qū)υ闯绦騾R編的過程中,使用地址計數(shù)器來保存當前正在匯編的指令的地址。地址計數(shù)器的值在匯編語言中可用$來表示。 當$用在偽指令的參數(shù)字段時,它所表示的是地址計數(shù)器的當前值 匯編語言允許用戶直接用$來引用地址計數(shù)器的值,例如指令: JMP $ + 6 它的轉(zhuǎn)向地址是 JMP指令的首地址加上 6。當$用在指令中時,它表示本條指令的第一個字節(jié)的地址。在這里,$ + 6必須是另一條指令的首地址。否則,匯編程序?qū)⒅甘境鲥e信息。 當$用在偽指令的參數(shù)字段時,則和它用在指令中的情況不同,它所表示的是地址計數(shù)器的當前值。例如指令: ARRAY DW 1, 2, $ + 4, 3, 4, $ + 4 假設(shè)匯編時 ARRAY 分配的偏移地址為 0074H,則匯編后,$ + 4所在的兩個字單元: ( ARRAY+4) =0078+4=007CH ( ARRAY+0A) =007E+4=0082H 應(yīng)當注意, ARRAY數(shù)組中的兩個$ + 4得到的結(jié)果是不同的,這是由于$的值是在不斷變化的緣故。當在指令中用到$時,它只代表該指令的首地址,而與$本身所在的字節(jié)無關(guān)。 2. EVEN偽指令 EVEN偽指令使下一個變量或指令開始于偶數(shù)字節(jié)地址。 例如: DATA_SEG SEGMENT BYTE_DAT DB ? EVEN WORD_DAT DW 100 DUP (?) DATA_SEG ENDS 一個字的地址最好從偶地址開始,所以對于字數(shù)組為了保證它從偶地址開始,可以在 DW定義之前用 EVEN偽指令來達到這一目的。 3. ALIGN偽指令 ALIGN偽指令使它后面的數(shù)據(jù)或指令從 2的整數(shù)倍地址開始。其格式為: ALIGN 2n (n為任意整數(shù) ) 例如: ALIGN 4 ARRAY DD 100 DUP (?) ALIGN偽指令保證了雙字數(shù)組 ARRAY地址邊界從 4的倍數(shù)開始。 ALIGN偽指令是將當前偏移地址指針指向 2的乘方的整數(shù)倍的地址,如果源地址指針以指向 2的乘方的整數(shù)倍的地址,則不作調(diào)整;否則將指針加以一個數(shù),使地址指針指向下一個 2的乘方的整數(shù)倍的地址。 當然, ALIGN 2和 EVEN是等價的。 基數(shù)控制偽指令 .RADIX偽指令 .RADIX可以把默認的基數(shù)改變?yōu)?2~ 16范圍內(nèi)的任何基數(shù)。其格式如下: .RADIX 基數(shù)值 其中基數(shù)值用十進制數(shù)來表示。 例如: MOV BX, 0FFH ; 16進制數(shù)標記為 H MOV BL, 10000101B ;二進制數(shù)標記為 B MOV BX, 178 ; 10進制為默認的基數(shù),可無標記 .RADIX 16 ;以下程序默認 16進制數(shù) MOV BX, 0FF ; 16進制為默認的基數(shù),可無標記 MOV BX, 178D ; 10進制數(shù)應(yīng)加標記 D 應(yīng)當注意,在用 .RADIX 16把基數(shù)定為十六進制后,十進制數(shù)后面都應(yīng)跟字母 D。在這種情況下,如果某個十六進制數(shù)的末字符為 D,則應(yīng)在其后跟字母 H,以免與十進制數(shù)發(fā)生混淆。
點擊復制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1