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

正文內(nèi)容

[高等教育]c第4章匯編語(yǔ)言程序設(shè)計(jì)(已修改)

2025-01-31 18:26 本頁(yè)面
 

【正文】 1 第四章 匯編語(yǔ)言程序設(shè)計(jì) 匯編語(yǔ)言格式 8086匯編語(yǔ)言常用偽指令 DOS系統(tǒng)功能調(diào)用和 BIOS中斷調(diào)用 程序設(shè)計(jì)方法 2 ? 匯編語(yǔ)言是一種用符號(hào)表示的 、面向 CPU指令系統(tǒng) 的程序設(shè)計(jì)語(yǔ)言。匯編語(yǔ)言具有以下 兩個(gè)基本特點(diǎn): ? 程序設(shè)計(jì)人員能更充分地利用機(jī)器硬件的 全部 功能,發(fā)揮機(jī)器的長(zhǎng)處; ? 程序目標(biāo)代碼占用內(nèi)存少,執(zhí)行 速度快 , 效率高 ,具有 實(shí)時(shí)性 ; 匯編語(yǔ)言程序概述 3 匯編語(yǔ)言與高級(jí)語(yǔ)言 ? 由于匯編的特點(diǎn), 匯編語(yǔ)言 常用于編寫(xiě)計(jì)算機(jī) 系統(tǒng)程序 、 實(shí)時(shí) 通信程序和 實(shí)時(shí) 控制程序。但匯編語(yǔ)言程序依賴(lài)于機(jī)器硬件,其 通用性和移植性都較差 。 ? 相對(duì)于匯編語(yǔ)言, 高級(jí)語(yǔ)言 的 編程方便快捷,通用性和移植性都較好 ,在一些涉及大量數(shù)據(jù)處理、人機(jī)界面等設(shè)計(jì)任務(wù)的應(yīng)用程序中,采用高級(jí)語(yǔ)言編程更為合適。 4 匯編語(yǔ)言源程序 機(jī)器語(yǔ)言程序 (目標(biāo)代碼) 匯編(可由匯編程序完成) 高級(jí)語(yǔ)言源程序 編譯或解釋 (可由編譯程序完成) 從源程序獲得目標(biāo)程序的過(guò)程 ? 為了能順利完成匯編,用戶必須為匯編程序提供一些額外的、與硬件有關(guān)的信息,如:程序使用的變量應(yīng)分別存放在內(nèi)存的哪個(gè)單元、堆棧應(yīng)從內(nèi)存的什么地址開(kāi)始等等。 5 示例:串傳送 DATA SEGMENT 。定義數(shù)據(jù)段 SRC_MESS DB ?HELLO!? DATA ENDS 。數(shù)據(jù)段定義結(jié)束 EXTRA SEGMENT 。定義附加段 NEW_LOC DB 6 DUP(?) EXTRA ENDS 。附加定義結(jié)束 CODE SEGMENT 。定義代碼段 ASSUME CS:CODE , DS:DATA ,ES:EXTRA 。對(duì)各段進(jìn)行說(shuō)明 START: MOV AX,DATA MOV DS , AX 。 DS初始化為 DATA MOV AX,EXTRA MOV ES , AX LEA SI, SRC_MESS LEA DI, NEW_LOC MOV CX, 6 CLD REP MOVSB CODE ENDS 。代碼段定義結(jié)束 END START 定義存儲(chǔ)單元的數(shù)據(jù) 匯編程序結(jié)束 6 段 。 ―――――――――――――――― ――――――――――――― 段名 1 SEGMENT 。 一個(gè)段的開(kāi)始 語(yǔ)句 1 語(yǔ)句 2 …… 段名 1 ENDS 。 一個(gè)段的結(jié)束 。 ―――――――――――――――――――――――――――― - 段名 2 SEGMENT 。 另一個(gè)段的開(kāi)始 …… 段名 2 ENDS 。 另一個(gè)段的結(jié)束 。 ――――――――――――――――――――――――――――― …… 。 其它段 。 ――――――――――――――――――――――――――――― END 。 源代碼結(jié)束 7 ? 由 ? 指令 ? 和 ? 偽指令 ? 共同構(gòu)成的。 ? ? 指令 ? 由 8086CPU規(guī)定的; ? ? 偽指令 ? 說(shuō)明與硬件有關(guān)的信息; ? ? 段 ? 結(jié)構(gòu) ? 因?yàn)?8086系統(tǒng)的存儲(chǔ)器采用分段管理 匯編語(yǔ)言程序格式 指令性語(yǔ)句和偽指令語(yǔ)句 8 語(yǔ) 句 ? 語(yǔ)句是由各種符號(hào) ( 標(biāo)記 ) 及分隔符按照一定的規(guī)則組織起來(lái)的一個(gè)有序序列 。 標(biāo)識(shí)符 操作符 操作數(shù) 注釋 ? 有 2種基本語(yǔ)句 : 指令性 語(yǔ)句 ( 指令 ) 、 指示性 語(yǔ)句 ( 偽指令 ) 。 ? 指令性語(yǔ)句 :即執(zhí)行性語(yǔ)句 (指令 ),與機(jī)器碼一一對(duì)應(yīng),表示某種確定操作,包括四部分: [ 標(biāo)號(hào): ] 指令助記符 [ 操作數(shù) ] [, 操作數(shù) ] [。注釋 ] 例: AGAN: ADC SUM, AX 。累加 ? 指示性語(yǔ)句 :即說(shuō)明性語(yǔ)句 (偽指令 ),不對(duì)應(yīng)機(jī)器碼,只為匯編提供所需信息,由四部分組成: [ 名字 ] 偽指令指示符 [ 操作數(shù) ] [, 操作數(shù) ] [。注釋 ] 例: SUM DW ? 。為結(jié)果保留一個(gè)字 9 標(biāo)識(shí)符字段 ? 標(biāo)識(shí)符字段由各種有效字符(字母,數(shù)字,特殊符號(hào) @、?、 —)組成,一般表示符號(hào)地址。 ? 很多情況下標(biāo)識(shí)符字段是語(yǔ)句中的 可選部分 ,主要為便于程序的讀寫(xiě)方便而使用。 ? 通常有 : ? 標(biāo)號(hào) ? 名字 10 常量 — 必須是固定值,沒(méi)有屬性,是確定數(shù)據(jù) ? 數(shù)字常量 ? 二進(jìn)制數(shù):以 ? B”結(jié)尾,如 00001101B; ? 八進(jìn)制數(shù):以 ? O”結(jié)尾,如 725O; ? 十六進(jìn)制數(shù):以 ? H”結(jié)尾,并且必須以數(shù)字打頭,即若最高位為字母 A~ F,前面應(yīng)加 0,如 0A12H; ? 十進(jìn)制數(shù):以 ? D”結(jié)尾或無(wú)任何字母作結(jié)尾,如 10D、10。 ? 字符串常量 ? 字符串常量表示為包含在兩個(gè) 單引號(hào) 之間的一連串ASCII字符。當(dāng)單引號(hào)本身作為一個(gè)串元素時(shí),需連寫(xiě)兩個(gè)單引號(hào)。每個(gè)串元素的值定義為該元素所對(duì)應(yīng)的 1字節(jié) ASCII碼值 。 數(shù)據(jù)項(xiàng) 11 變量 — 通常指存放在存儲(chǔ)單元的值,在程序運(yùn)行中可以修改。 ? 有三個(gè)屬性 ? 段值 ( SEGMENT):變量所在段的段基址; ? 段內(nèi)偏移地址 ( OFFSET) ? 類(lèi)型 ( TYPE):變量中每個(gè)元素所包含的字節(jié)數(shù),類(lèi)型有:字節(jié)變量( BYTE)、字變量( WORD)、雙字變量( DWORD)等。 12 標(biāo)號(hào) — 可執(zhí)行指令語(yǔ)句的地址的符號(hào)表示,它 可作為轉(zhuǎn)移指令的目的操作數(shù),以確定程序轉(zhuǎn)向的目的地址。 ? 有三個(gè)屬性 ? 段值 ( SEGMENT):標(biāo)號(hào)所在段的段基址; ? 段內(nèi)偏移地址 ( OFFSET):標(biāo)號(hào)地址與所在段的段首址之間的偏移地址字節(jié)數(shù) ? 類(lèi)型 ( TYPE):在轉(zhuǎn)移指令中標(biāo)號(hào)可轉(zhuǎn)移的距離。如NEAR、 FAR。 13 注釋字段 ? 注釋字段:用于說(shuō)明、解釋程序使之便于閱讀或檢查的任何文字或字符,位于語(yǔ)句行的末尾,用 分號(hào)( 。 )引導(dǎo)。 ? 注釋 對(duì)匯編不起任何作用 ,不對(duì)應(yīng)于任何機(jī)器碼,僅增強(qiáng)源程序的可讀性。 14 ? 由若干運(yùn)算對(duì)象和運(yùn)算符組成的有意義的組合序列。 ? 表達(dá)式可出現(xiàn)于源程序的任何地方 ? 在 匯編過(guò)程中 ( 而不是程序執(zhí)行過(guò)程中 )即可產(chǎn)生確定的值。 ? 表達(dá)式中的運(yùn)算對(duì)象 ? 常量運(yùn)算對(duì)象: 直接寫(xiě)出的數(shù)或用常量名表示的數(shù)。 ? 存儲(chǔ)器運(yùn)算對(duì)象 :可以為變量名或標(biāo)號(hào)。 MASM中的表達(dá)式 15 表達(dá)式中的運(yùn)算符 ? 包括 算術(shù)運(yùn)算符 、 邏輯運(yùn)算符 、 關(guān)系運(yùn)算符 、 數(shù)值返回運(yùn)算符、修改屬性運(yùn)算符 以及其它運(yùn)算符六種。 ? 有優(yōu)先級(jí)的區(qū)別。 (ref: 表 ,) 16 ? 算術(shù)運(yùn)算符: +、 、 *、 /、 MOD、 SHL、 SHR ? 邏輯運(yùn)算符: AND、 OR、 XOR、 NOT ? 關(guān)系運(yùn)算符: EQ、 NE、 LT、 LE、 GT、 GE ? 數(shù)值返回: OFFSET、 SEG、 TYPE、 LENGTH 、 SIZE ? 修改屬性: DS:、 PTR、 THIS、 HIGH、 LOW、 SHORT ? 其它: [ ] ( ) . MASK WIDTH 17 數(shù)值返回運(yùn)算符 ? 對(duì)單個(gè)操作數(shù)進(jìn)行屬性分將返回不同屬性的值 ? SEG 變量或標(biāo)號(hào)所在段的段寄存器值 作為段基址,結(jié)果為 16位值 ? OFFSET 取變量或標(biāo)號(hào)的段內(nèi)偏移量,結(jié)果 為 16位值 ? TYPE 取變量或標(biāo)號(hào)的類(lèi)型 ? LENGTH 取 DUP重復(fù)次數(shù)
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1