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

正文內(nèi)容

基本結(jié)構(gòu)程序設(shè)計(jì)ppt課件-文庫吧資料

2025-05-18 07:23本頁面
  

【正文】 AL MOV AH,0 SHL AX, 1 ; AX乘 2 MOV SI, AX JMP ADTAB[SI] 匯編語言程序設(shè)計(jì) 第 5章 基本結(jié)構(gòu)程序設(shè)計(jì) 第 33頁 第 33頁 Y Y N N N Y 邏輯分解法分支結(jié)構(gòu)框圖 條件 1成立 程序段 1 條件 2成立 程序段 2 條件 n成立 程序段 n+1 程序段 n 設(shè)計(jì)方法 :將多分支結(jié)構(gòu)采用邏輯等效的方法 , 按條件的先后 , 依次分解成所示的一串雙分支結(jié)構(gòu) , 然后使用雙分支的方法來進(jìn)行程序設(shè)計(jì) 。 某個(gè)分支程序入口地址的表地址為: 表地址 =編號 *2+入口地址首地址 … ADTAB DW ADDR0, ADDR1, ADDR2, ADDR3, ADDR4 … LEA BX, ADTAB 。從鍵盤接收一個(gè)字符 SUB AL,30H ; ASCII→ 數(shù)值 MOV AH,0 ADD AX,AX ; AX乘 2 ADD BX,AX ;獲取跳轉(zhuǎn)地址 JMP BX BRATAB:JMP SHORT MODE0 ;轉(zhuǎn)移表 JMP SHORT MODE1 JMP SHORT MODE2 JMP SHORT MODE3 JMP SHORT MODE4 MODE0:MOV DL,30H JMP EXIT MODE1:MOV DL,31H JMP EXIT MODE2:MOV DL,32H JMP EXIT MODE3:MOV DL,33H JMP EXIT MODE4:MOV DL,34H EXIT:MOV AH,2 INT 21H MOV AH,4CH INT 21H CODE ENDS END START 匯編語言程序設(shè)計(jì) 第 5章 基本結(jié)構(gòu)程序設(shè)計(jì) 第 30頁 第 30頁 設(shè)計(jì)方法 :把各分支程序段的入口地址依次存放在數(shù)據(jù)段的一個(gè)表中 ,形成地址表 。 各轉(zhuǎn)移指令在表中的位置: 離表首地址的偏移量作為轉(zhuǎn)移條件 , 偏移量加上表首地址作為轉(zhuǎn)移地址 , 轉(zhuǎn)到表的相應(yīng)位置 , 執(zhí)行相應(yīng)的無條件轉(zhuǎn)移指令 典型例子: JMP BX TAB: JMP SHORT MODE0 ;轉(zhuǎn)移表 JMP SHORT MODE1 JMP SHORT MODE2 JMP SHORT MODE3 JMP SHORT MODE4 … 說明: 轉(zhuǎn)移表中每條轉(zhuǎn)移指令 ( 段內(nèi)短轉(zhuǎn)移 ) 占用 2個(gè)字節(jié) , 所以有如下計(jì)算公式: 表地址 =模式字 *2+轉(zhuǎn)移表首地址 匯編語言程序設(shè)計(jì) 第 5章 基本結(jié)構(gòu)程序設(shè)計(jì) 第 28頁 第 28頁 【 例 】 :根據(jù)輸入值 ( 0~4) 的不同 , 執(zhí)行不同的操作 , 用轉(zhuǎn)移表法編寫程序 轉(zhuǎn)移表首地址送 BX 輸入值乘 2送 AX BX← BX+AX JMP BX JMP MODE0 JMP MODE4 MODE0 MODE4 …… 開始 匯編語言程序設(shè)計(jì) 第 5章 基本結(jié)構(gòu)程序設(shè)計(jì) 第 29頁 第 29頁 CODE SEGMENT ASSUME CS:CODE START: LEA BX,BRATAB 。 需注意的問題 匯編語言程序設(shè)計(jì) 第 5章 基本結(jié)構(gòu)程序設(shè)計(jì) 第 21頁 第 21頁 【 例 】 :設(shè)計(jì)字符比較程序 , 兩個(gè)字符相同時(shí) , 顯示 YES;否則顯示 NO DATA SEGMENT D1 DB ‘A’ D2 DB ‘B’ RES1 DB ‘YES’, ’ $ ’ RES2 DB ‘NO’, ’ $ ’ DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV AL,D1 MOV BL,D2 CMP AL,BL JNE NEXT1 LEA DX,RES1 JMP NEXT2 NEXT1: LEA DX,RES2 NEXT2: MOV AH,09H INT 21H MOV AH,4CH INT 21H CODE ENDS END START N Y 相同 ? 顯示 NO 顯示 YES 取數(shù) 開始 返回 匯編語言程序設(shè)計(jì) 第 5章 基本結(jié)構(gòu)程序設(shè)計(jì) 第 22頁 第 22頁 【 例 】 :設(shè)存儲單元 A和 B各有一無符號字節(jié)數(shù) , 比較大小 , 將較大數(shù)送 A單元 DATA SEGMENT A DB 39H B DB 0B4H DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV AL,A CMP AL,B JNC NEXT XCHG AL,B MOV A,AL NEXT: MOV AH,4CH INT 21H CODE ENDS END START 取數(shù) Y N A≥B A、 B交換 開始 返回 匯編語言程序設(shè)計(jì) 第 5章 基本結(jié)構(gòu)程序設(shè)計(jì) 第 23頁 第 23頁 【 例 】 比較兩個(gè)帶符號字節(jié)數(shù)的大小,找出兩個(gè)數(shù)中大的存入 MAX字節(jié)單元,編寫源程序如下: DATA SEGMENT DA1 DB X1, X2 。而每一條條件轉(zhuǎn)移指令,恰好有兩種選擇,轉(zhuǎn)移或順序執(zhí)行。為條件檢測作好準(zhǔn)備。編程解決該問題。 AX←W AX=0? SF=0? Z←400H Z←AX Z←|W|+50H NEXT ZF=1 ZF=0 SF=0 SF=1 流程圖片段 匯編語言程序設(shè)計(jì) 第 5章 基本結(jié)構(gòu)程序設(shè)計(jì) 第 16頁 第 16頁 程序段一: MOV AX, W CMP AX, 0 JZ L1 JNS L2 NEG AX ADD AX, 50H MOV Z, AX JMP NEXT L2: MOV Z, AX JMP NEXT L1: MOV Z, 400H NEXT: … … 程序段二: MOV AX, W CMP AX, 0 JNZ L1 MOV Z, 400H JMP NEXT L1: JNS L2 NEG AX ADD AX, 50H MOV Z, AX JMP NEXT L2: MOV Z, AX NEXT: … … 匯編語言程序設(shè)計(jì) 第 5章 基本結(jié)構(gòu)程序設(shè)計(jì) 第 17頁 第 17頁 【 例 】 :如果 X50,轉(zhuǎn)到 TOO_HIGH,不滿足, XY;如果溢出轉(zhuǎn)到 OVERFLOW,否則 |XY| → RESULT 。 程序段一 : CMP AX, 0 JNS L MOV CX, 200 JMP NEXT L: MOV CX, 50 NEXT: … … ;比較 AX是否為 0,影響 SF標(biāo)志 ;若 AX為正,即 SF=0則轉(zhuǎn)移 ;若 AX為負(fù)數(shù),則令 CX=200 ;跳轉(zhuǎn)到 NEXT 程序段二 : ADD AX, 0 JS L MOV CX, 50 JMP NEXT L: MOV CX, 200 NEXT: … … 程序段三(用 ZF測試) : TEST AX, 8000H JNZ L MOV CX, 50 JMP NEXT L: MOV CX, 200 NEXT: … … 程序段四(用 CF測試) : BT AX, 15 JC L,: ,:程序段五(用 CF測試) : SHL , 1 JC L ,: ,: 匯編語言程序設(shè)計(jì) 第 5章 基本結(jié)構(gòu)程序設(shè)計(jì) 第 14頁
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1