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

正文內(nèi)容

第3章匯編語言程序設(shè)計(已修改)

2025-08-01 10:15 本頁面
 

【正文】 COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 第 3章 匯編語言程序設(shè)計 概述 ? 指令: 計算機(jī)完成某種操作的命令 ? 程序: 完成某種功能的指令序列 ? 軟件: 各種程序總稱 ? 機(jī)器代碼 , 匯編語言程序 , 匯編程序 ? 匯編語言程序建立步驟: ? ( 1 ) 用編輯程序建立 .ASM源文件 ? ( 2 ) 用 LINK程序把 .ASM文件轉(zhuǎn)換為 OBJ文件 ? ( 3 ) 用 LINK程序把 .OBJ文件轉(zhuǎn)換為 .EXE文件 ,或用 EXE2 BIN程序把 .EXE文件轉(zhuǎn)換為 .COM文件 ? (4)在 DOS下直接鍵入 .EXE文件或 .COM文件的文件名就可運(yùn)行該程序 COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 語句格式 ? 語句格式 :[名字] 操作符 操作數(shù) 1,操作數(shù) 2 ;[注釋] 1. 名字 ? 一種符號地址 ? 組成: A~ Z, a~ z, 0~ 9, 專用符號 ? 、 .、 @、 _、 $ ? 限制: ① 第一個字符不能為數(shù)字 ② “ .”必須為第一個字符 ③ 前 31個字符有效 ④ 不能為關(guān)鍵字 ? 類型: 標(biāo)號:指令符號地址 變量:數(shù)據(jù)符號地址 2. 操作符 ? 組成: CPU指令 , 偽指令 , 宏指令 3. 操作數(shù) ? 指定參與操作的數(shù)據(jù) , 或數(shù)據(jù)所在單元地址 4. 注釋 ? 說明程序、指令功能,增加程序可讀性 COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 偽指令 ? 功能: 指示匯編程序完成規(guī)定的操作 , 如選擇處理器 , 定義數(shù)據(jù) , 分配存儲器等 。 COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 一、程序開始與結(jié)束 1. 程序開始: 可以用 name,title給程序起名 。 ? 格式: NAME module_name ? 匯編程序以模塊名作為模塊的名字 , 若未使用 NAME, 則可用TITLE給程序指定標(biāo)題 ? 格式: TITLE text ? 文本在每一頁上打印出來 , 若沒有 NAME, 則 text的前 6個字符為模塊名 , text最多為 60個字符 。 ? 若未使用 NAME、 TITLE, 則源文件名為模塊名 。 2. 程序結(jié)束: 表示原程序結(jié)束 , 不可缺 , 源程序的最后一條語句 。 ? 格式: END [label] ? 標(biāo)號指示程序開始執(zhí)行的起始地址 , 多個模塊連接 , 主程序用標(biāo)號 , 其他程序不用 , 主程序缺省值為代碼段第一條指令 。 3. MASM 定義的入口點(diǎn) 、 出口點(diǎn) ? 入口點(diǎn): .STARUP ;產(chǎn)生設(shè)置 DS、 SS、 SP代碼 , 此時 , END不用標(biāo)號 。 ? 出口點(diǎn): .EXIT ;返回操作系統(tǒng) , 常用值為 0。 ? 例: .STARUP … .EXIT 0 END COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 二、處理器選擇 ? 功能: 選擇對應(yīng)的指令集 , 也即對應(yīng)的匯編執(zhí)行語句集 ? 放在程序最前面 ? 缺省值為 .8086 ? 此類指令主要有: ? .8086 選擇 8086指令系統(tǒng) ? .286 選擇 80286指令系統(tǒng) ? .286P 選擇保護(hù)方式下 80286指令系統(tǒng) ? .386 選擇 80386指令系統(tǒng) ? .386P 選擇保護(hù)方式下 80386指令系統(tǒng) ? .486 選擇 80486指令系統(tǒng) ? .486P 選擇保護(hù)方式下 80486指令系統(tǒng) ? .586 選擇 Pentium指令系統(tǒng) ? .586P 選擇保護(hù)方式下 Pentium指令系統(tǒng) COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 吉林大學(xué)遠(yuǎn)程教育學(xué)院 微機(jī)原理及匯編語言 主講人: 趙宏偉 教授 總學(xué)時: 80 吉林大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院 第 二十 講 COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 三、段定義 ? 段定義: 確定代碼組織與數(shù)據(jù)存儲的方式 ? 2種: 完整的段定義和 簡化的段定義( MASM ) ? 完整的段定義包括: ( 1) segment和 end段定義 ( 2) ASSUME段分配 ( 3) GROUP 段組定義 COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY segment和 end段定義 ( 1) ? 格式: 段名 segment [ 定位類型 ] [ 組合類型 ] [ 字長類型 ] [ ‘ 類別 ’ ] … … 段名 end ? 功能: 定義段名 、 段屬性 。 ? 一般情況下 , 選項可以不用 , 用默認(rèn)值 , 但若需連接本程序和其他程序 , 就要使用這些說明 。 ? 段名是段的標(biāo)識符,指明段的基址,由程序員指定。 COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY segment和 end段定義 ( 2) ① 定位類型 ? 定位類型: 指定段起始邊界 , 5種 ? BYTE: 任意位置 ? WORD: 偶地址 , 地址低 1位為 0 ? DWORD:4的倍數(shù)地址 , 地址低 2位為 0 ? PARA: 16的倍數(shù)地址 , 地址低 4位為 0 ? PAGE: 256的倍數(shù)地址,地址低 8位為 0,一頁的起點(diǎn), 默認(rèn)值 。 COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY segment和 end段定義 ( 3) ② 組合類型 ? 組合類型: 表示本段與其它段之間 , 具有相同段名的各段的組合關(guān)系 , 為連接程序提供信息 , 屬于連接類型 , 6種 。 ? PUBLIC:本段連接時將與有相同段名 .public類型的其它段連接在一起 , 連接次序由連接命令指定 ( 共用一個段 ) , 即同名段連接在一起 , 有共同段地址 。 ? STACK:用于說明堆棧段 , 把不同程序段中的具有 SARCK類型的同名段組合而形成一個堆棧段 , 其長度為各原有段的總和 , LINK自動將新段的段地址送 SS, 長度送 SP, 若未定義 SARCK類型 , 需在程序中用指令設(shè)置 SS、 SP。 ? COMMON:本段連接時 , 使具有 COMMON類型的同名段具有同一個起始地址 , 所以會產(chǎn)生覆蓋 , 新段的長度是最長 COMMON段的長度 ,新段的內(nèi)容取決于依次覆蓋的最后內(nèi)容 。 ? MEMORY:表示該段應(yīng)定位在所有段的最下面 ( 即地址最大的區(qū)域 ) , 如果模塊中不止一個 MEMORY段 , 以第一個遇到的作為MEMORY段 , 其它段作為 COMMON段處理 , 而 LINK程序在處理 MEMORY時與 PUBLIC同樣對待 。 ? PRIVATE:獨(dú)立段,與其它段邏輯上沒有關(guān)系,不與同名段合并,默認(rèn)值 。 ? AT 表達(dá)式 :指定本段起始地址為 “ 表達(dá)式 ” ,偏移量為 0,不能用于代碼段。 COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY segment和 end段定義 ( 4) ③ 字長類型 ? 字長類型: 386以后 , 說明使用 16位尋址方式 ,還是 32位尋址方式 。 ? .USE16: 16位尋址方式 , 段長 ≤ 64KB, 16位段地址 , 16位偏移量 , 默認(rèn)值 。 ? .USE32: 32位尋址方式 , 段長 ≤ 4GB, 16位段地址 , 32位偏移量 。 ④類別 ? 類別: 引號括起的字符串,連接時, ’ 類別 ’ 相同的分段 (他們可能不同名 )均放在連續(xù)的存儲空間中,但他們?nèi)匀皇遣煌姆侄危ㄟB續(xù)空間)。 COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY ASSUME段分配 ? 格式: ASSUME 段寄存器名:段名 , …… ? 功能: 指定分段寄存器 , 說明哪個段使用哪個段寄存器 。 ? 說明: ? ① 程序段必須用 CS, 堆棧段必須用 SS ? ② 該語句一般放在代碼段的最前面 ? ③ 說明性語句 , 除 CS外 ( 初始化賦值 ) , 各段寄存器在程序中賦值 。 ? ④取消語句: ASSUME NOTHING COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY 一般匯編格式舉例 DATA1 SEGMENT ‘DATA’ … DATA1 ENDS DATA2 SEGMENT ‘EXTRA’ … DATA2 ENDS DATA3 SEGMENT ‘DATA’ … DATA3 ENDS CODE SEGMENT ‘CODE’ ASSUME CS:CODE,DS:DATA1,ES:DATA3,SS:DATA2 START: MOV AX, DATA1 MOV DS, AX ;數(shù)據(jù)段地址賦給 DS MOV AX, DATA2 MOV SS, AX ;堆棧段地址賦給 SS MOV AX, DATA3 MOV ES, AX ;附加段地址賦給 ES … MOV AH, 4CH INT 21H ;返回 DOS CODE ENDS END START COMPUTER SCIENCE AND TECHNOLOGY COMPUTER SCIENCE AND TECHNOLOGY GROUP 段組定義 ? 格式: 段組名 GROUP 段名 [ , 段名 ] ? 功能: 將指定的所有段分配在同一個物理存儲器內(nèi) , 使用同一個組名 ,使用同一個 DS內(nèi)容 。 ? 用戶自行指定段組中的段 , 段組不影響各段次序 , 對定義在不同段中的變量 , 可以用同一個 DS訪問 , 但各段仍為獨(dú)立段 , 通常將具有相同性質(zhì)的段分在一個段組 。 ? 舉例: DATA1 SEGMENT ‘DATA’ … DATA1 ENDS DATA2 SEGMENT ‘DATA’ … DATA2 ENDS AA5 GROUP DATA1, DATA2 CODE
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1