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

正文內(nèi)容

第5章匯編語言程序設(shè)計-文庫吧資料

2024-11-01 15:11本頁面
  

【正文】 ?對 CS和 IP設(shè)置、修改的兩種途徑: ( 1)用結(jié)束偽指令 END加載程序的起始地址。 ( 2)用執(zhí)行程序的辦法加載: 在程序運行中要調(diào)換另一個堆棧段,這時可用類似于 DS和 ES的加載辦法,對SS和 SP進(jìn)行即時修改。 2. SS的加載: ?SS是堆棧段寄存器,對它加載段寄存器就是設(shè)置堆棧。 ?例: DATA_DS SEGMENT DA1 DB 12H DATA_DS ENDS DATA_ES SEGMENT DA2 DB 10H DUP(0) DATA_ES ENDS CODE SEGMENT ASSUME CS: CONE, DS: DATA1, ES: DATA2 START: MOV AL, DATA_DS MOV DS, AX MOV AX, DATA_ES MOV ES, AX CODE ENDS … 代碼段 CODE中第 3條是以立即數(shù)形式把 DATA_DS段和DATA_DS段的段基值分別送給通用寄存器 AX。 ES—— 附加段寄存器。 MOV取出存儲器操作數(shù) VAR2,變量 VAR2在 DATA2段,其段基值在 ES中。 ASSUME ES: NOTHING ;撤消對 ES的設(shè)置 ASSUME NOTHING ;撤消全部段寄存器的設(shè)置 ?例: DATA1 SEGMENT VAR1 DB 12H DATA1 ENDS DATA2 SEGMENT VAR2 DB 34H DATA2 ENDS CODE SEGMENT ASSUME CS: CONE, DS: DATA1, ES: DATA2 START …… MOV AL, VAR1 MOV BL, VAR2 CODE ENDS … … ASSUME定義:段寄存器 CS、 DS和 ES分別存放 CODE段、 DATA1段和 DATA2段的段基值 數(shù)據(jù)定義語句 DB定義 : 一是 VAR1存放在 DATA1的邏輯段中,其段基值即為 DATA的 段基值 ;二是 VAR1為字節(jié)數(shù)據(jù)。 ? ASSUME隨時修改或撤除 14個段寄存器與已定義段之間的關(guān)系。任選是可只選其中 12個,但是不能改變它們的先后順序關(guān)系。 3 . 組合類型: 表示段與段之間的連接與定位。 段的起始單元最后 2位二進(jìn)制數(shù)為 0 ( 4) BYTE(字節(jié)):表示本段起始單元可以從任一地址開始。 段的起始單元最后 4位二進(jìn)制數(shù)為 0( 0H)。段的起始單元地址(段基址)的最后 8位二進(jìn)制數(shù)為 0( 00H)。 定位類型選項 :( 4種) ( 1) PAGE(頁):表示本段從一個頁的邊界開始。 段定義語句 一、段定義偽指令( SEGMENT/ENDS) ?定義:用于程序中設(shè)置一個段(邏輯段)。 偶地址控制語句 167。 過程定義語句 167。 偽指令語句 167。 ?格式: 運算符 地址表達(dá)式 ?例: : (表 55運算符優(yōu)先級) ( 1)先執(zhí)行優(yōu)先級別高的運算符; ( 2)優(yōu)先級別相同的運算符,按照從左至右順序進(jìn)行; ( 3)可用圓括號改變運算的順序。 反映存儲器操作數(shù)的某些特征。若無 DUP定義,則結(jié)果總是 1。 ( 3) LENGTH和 SIZE運算符: ? 運算符僅加在變量名的前面,它返回的是數(shù)組變量的元素個數(shù)( LENGTH )和數(shù)組變量所占的總字節(jié)數(shù)( SIZE )。 ? 該運算符出現(xiàn)在變量名或標(biāo)號的前面,返回這個變量名或標(biāo)號所在段的段基值勤或在段內(nèi)的偏移量。 具體內(nèi)容見教材 : ? 定義: 數(shù)值返回運算符的運算對象是存儲器操作數(shù),即由變量名或標(biāo)號組成的地址表達(dá)式。 ?AND、 OR、 XOR、 NOT : ? 用于比較兩個表達(dá)式值的大小。 NEAR(近):段內(nèi)轉(zhuǎn)移 FAR (遠(yuǎn)):段間轉(zhuǎn)移 167。 ( 3)類型屬性( TYPE):是作為段內(nèi)轉(zhuǎn)移不是段間轉(zhuǎn)移的目標(biāo)地址。 ? 標(biāo)號的 3個屬性: ( 1)段屬性( SEG):表示標(biāo)號所在指令的邏輯段,且用該邏輯段的段基值表示。是一條指令的符號地址。 ( 2)在用 DW或 DD的數(shù)據(jù)定義語句中,有三種情況,見教材 P181。 指存儲單元中的內(nèi)容,變量、標(biāo)號及地址表達(dá)式是這種操作數(shù)的主要表示形式。 ,其他寄存器均可。 ? 例: ( 3)在某些偽指令語句的操作數(shù)字段中,賦值數(shù)據(jù)。 二進(jìn)制數(shù) 10111B 十進(jìn)制數(shù) 982D 八進(jìn)制數(shù) 21B、 73Q 十六進(jìn)制數(shù) 7AE6H ?常數(shù)的應(yīng)用: ( 1)在指令語句的源操作數(shù)中作立即數(shù)操作數(shù)。 數(shù)據(jù)有數(shù)值和屬性,兩部分,對一個語句匯編成機(jī)器目標(biāo)代碼有直接關(guān)系 。 167。 NU__B1 DB 10H DUP(?) NU__W1 DW 20H DUP(10H) ;保留 10H個字節(jié)單元,每個字節(jié)單元可預(yù)置任意內(nèi)容。 DB DW DD 是數(shù)據(jù)的重復(fù)的次數(shù)。具體見教材 P177頁,及圖 5— 2。 ( 2)字符串中各字符均是以 ASCII碼形式存放在相應(yīng)存儲單元中。?表達(dá)式常用于保留一個或多個存儲單元,以備程序運行時,作工作單元或保存結(jié)果用。 ( 3)類型屬性( TYPE): 表示變量的數(shù)據(jù)的大?。ㄗ止?jié)數(shù)據(jù)、字?jǐn)?shù)據(jù)、雙字?jǐn)?shù)據(jù)),主要依據(jù) DB、 DW、 DD等偽指令來確定的。 數(shù)據(jù)定義語句 數(shù)據(jù)定義偽指令有: DB— 定義字節(jié)數(shù)據(jù) DW— 定義字?jǐn)?shù)據(jù) DD— 定義雙字?jǐn)?shù)據(jù) DF— 定義 6字節(jié)數(shù)據(jù) DQ— 定義 8字節(jié)數(shù)據(jù) DT— 定義 10字節(jié)數(shù)據(jù) ?數(shù)據(jù)定義語句的格式: ?變量名 表達(dá)式 1,表達(dá)式 2, …… ?例: DB DW DD DATA SEGMENT VAR1 DB 12H VAR2 DW 1234H VAR3 DD 12345678H DATA ENDS SEGMENT /ENDS表示邏輯段的開始 / 結(jié)束 ?經(jīng)過數(shù)據(jù)定義語句定義的變量,均有 3個屬性: ( 1)段屬性( SEG): 表示變量存放在哪個邏輯段中,且用這個邏輯段的段基值表示。 數(shù)據(jù)定義語句 ?變量:是指存放在存儲單元的數(shù)據(jù),在程序執(zhí)行中,允許其值發(fā)生變化。 例: ?CONT= 10H ?M= MOV ?。 ?等號偽指令與等值偽指令之間的差異: ( 1)等號偽指令可以重新定義符號。 為指令助記符 DAA另定義一個別名。 符號 EQU 表達(dá)式 /符號 ?表達(dá)式 /符號 :見教材以下各例題 ( 1)常數(shù)或數(shù)值表達(dá)式: ?例: COUNT EQU 15*2+10 ( 2)地址表達(dá)式: ?例: ADDR1 EQU DS: [BP] ( 3)變量名、標(biāo)號或指令助記符 例: NMU1 EQU COUNT1 ; BEING EQU START ; BTOD EQU DAA ; 為變量名 CUNT1另定義一個別名。 ? 注意: ? 等值偽指令語句僅在匯編源程序時,作為替代符號作用,不產(chǎn)生任何目標(biāo)代碼,也不分配存儲單元。 運算符( 5種 ) ( 1)算術(shù)運算符、( 2)邏輯運算符、 ( 3)關(guān)系運算符、( 4)數(shù)值返回運算符、 ( 5)屬性運算符、 ( 6
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1