微機(jī)04匯編程序設(shè)計(jì)課件_第1頁(yè)
微機(jī)04匯編程序設(shè)計(jì)課件_第2頁(yè)
微機(jī)04匯編程序設(shè)計(jì)課件_第3頁(yè)
微機(jī)04匯編程序設(shè)計(jì)課件_第4頁(yè)
微機(jī)04匯編程序設(shè)計(jì)課件_第5頁(yè)
已閱讀5頁(yè),還剩49頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、微機(jī)04匯編程序設(shè)計(jì)第四章 匯編語(yǔ)言程序設(shè)計(jì)南理工紫金學(xué)院帥輝明微機(jī)04匯編程序設(shè)計(jì)匯編語(yǔ)言數(shù)據(jù)和表達(dá)式偽指令語(yǔ)法程序設(shè)計(jì)順序、分支、循環(huán)、子程序DOS功能調(diào)用本章重點(diǎn)微機(jī)04匯編程序設(shè)計(jì)機(jī)器語(yǔ)言:由機(jī)器語(yǔ)言:由0、1代碼所組成的語(yǔ)言。面向機(jī)器,代碼所組成的語(yǔ)言。面向機(jī)器,同一組代碼對(duì)不同的計(jì)算機(jī)表示不同的含義。同一組代碼對(duì)不同的計(jì)算機(jī)表示不同的含義。匯編語(yǔ)言:由助記符表示的語(yǔ)言。面向機(jī)器。匯編語(yǔ)言:由助記符表示的語(yǔ)言。面向機(jī)器。高級(jí)語(yǔ)言:用一些接近人們書(shū)寫(xiě)習(xí)慣的英語(yǔ)和數(shù)高級(jí)語(yǔ)言:用一些接近人們書(shū)寫(xiě)習(xí)慣的英語(yǔ)和數(shù)學(xué)表達(dá)式形式的句子編寫(xiě)程序。這種語(yǔ)言不面向?qū)W表達(dá)式形式的句子編寫(xiě)程序。這種語(yǔ)言不面

2、向機(jī)器,而是面向過(guò)程、面向?qū)ο?。機(jī)器,而是面向過(guò)程、面向?qū)ο蟆?.1 程序設(shè)計(jì)語(yǔ)言概述微機(jī)04匯編程序設(shè)計(jì)高級(jí)語(yǔ)言高級(jí)語(yǔ)言C、C+、PASCAL語(yǔ)言如:Turbo C、VC+、DELPHI、GNU GCC匯編語(yǔ)言匯編語(yǔ)言機(jī)器語(yǔ)言機(jī)器語(yǔ)言高級(jí)語(yǔ)言高級(jí)語(yǔ)言虛擬機(jī)虛擬機(jī)C#、JAVA.NET、JVM各種語(yǔ)言的關(guān)系各種語(yǔ)言的關(guān)系微機(jī)04匯編程序設(shè)計(jì)1.數(shù)據(jù)(1)常數(shù)表示匯編過(guò)程中已經(jīng)有確定數(shù)值的量,主要用于做指令中的立即數(shù)、尋址中的位移量,或在偽指令語(yǔ)句中給變量賦值。數(shù)值常數(shù):由二、八、十和十六進(jìn)制表達(dá)的數(shù) 字符串常數(shù):用 (或“ ”)括起來(lái)的一串ASCII碼字符,等效為一組數(shù)值常數(shù)4.2 8086匯

3、編語(yǔ)言介紹0101B3247O2873D23ABH12AB= 31H、32H、41H、42H微機(jī)04匯編程序設(shè)計(jì)內(nèi)存單元的數(shù)據(jù),變量值在程序運(yùn)行期間可以改變。需要事先定義,通過(guò)變量名引用。變量名表示變量的首地址。在。變量的屬性段:變量所在段基址偏移量:變量在段內(nèi)的偏移量類(lèi)型:變量的字節(jié)數(shù),DB、DW、DD(2)變量微機(jī)04匯編程序設(shè)計(jì)在指令前面,代表指令所在存儲(chǔ)單元的地址。通常作為程序中轉(zhuǎn)移、調(diào)用、循環(huán)指令的轉(zhuǎn)移目標(biāo)地址。定義方式 標(biāo)識(shí)符:標(biāo)號(hào)的屬性:段:變量所在段基址偏移量:變量在段內(nèi)的偏移量距離: NEAR段內(nèi)標(biāo)號(hào)、 FAR段外標(biāo)號(hào)(3)標(biāo)號(hào)微機(jī)04匯編程序設(shè)計(jì)2、表達(dá)式 由常數(shù)、變量或標(biāo)

4、號(hào)、運(yùn)算符連接而成 分類(lèi):數(shù)字表達(dá)式、地址表達(dá)式(1)運(yùn)算符算術(shù)運(yùn)算符算術(shù)運(yùn)算符+、-、*、/、mod邏輯運(yùn)算符邏輯運(yùn)算符AND、OR、NOT、XOR關(guān)系運(yùn)算符關(guān)系運(yùn)算符EQ、NE、LT、LE、GT、GE注意與注意與算術(shù)運(yùn)算指令算術(shù)運(yùn)算指令和和邏輯運(yùn)算指令邏輯運(yùn)算指令的區(qū)別的區(qū)別ANDDX, PORT AND 0FFH微機(jī)04匯編程序設(shè)計(jì)MOV AX, VALUE MOD 7 ;VALUE=50MOV AL, NOT 0FHMOV AX, 0FH EQ 1111B舉例:MOV AX, 1MOV AL, F0H關(guān)系成立結(jié)果全為關(guān)系成立結(jié)果全為1否則全為否則全為0MOV AX, FFFFH微機(jī)04

5、匯編程序設(shè)計(jì)對(duì)存儲(chǔ)單元的操作(2)數(shù)值返回運(yùn)算符段基址運(yùn)算符段基址運(yùn)算符SEGSEG 變量變量/標(biāo)標(biāo)號(hào)號(hào)偏移量運(yùn)算符偏移量運(yùn)算符OFFSETOFFSET 變量變量/標(biāo)號(hào)標(biāo)號(hào)類(lèi)型運(yùn)算符類(lèi)型運(yùn)算符TYPETYPE 變量變量/標(biāo)標(biāo)號(hào)號(hào)長(zhǎng)度運(yùn)算符長(zhǎng)度運(yùn)算符LENGTHLENGTH 變量變量字節(jié)總數(shù)運(yùn)算符字節(jié)總數(shù)運(yùn)算符SIZESIZE 變量變量微機(jī)04匯編程序設(shè)計(jì)SEG返回變量/標(biāo)號(hào)的段基址OFFSET返回變量/標(biāo)號(hào)的段內(nèi)偏移舉例:MOVAX,SEG K1MOV BX,SEG ARRAYMOVBX,OFFSET ARRAY變量K1所在段的段基址為0915H變量ARRAY所在段的段基址為0947H,偏移為

6、0100H運(yùn)算符SEG和OFFSET= MOVAX,0915H= MOV BX,0947H= MOVBX,0100H微機(jī)04匯編程序設(shè)計(jì)運(yùn)算符TYPE數(shù)據(jù)數(shù)據(jù)類(lèi)型類(lèi)型偽指令偽指令TYPE值值變量變量字節(jié)字節(jié)DB1字字DW2雙字雙字DD4四字四字DQ8五字五字DT10標(biāo)號(hào)標(biāo)號(hào)近程近程N(yùn)EAR-1遠(yuǎn)程遠(yuǎn)程FAR-2微機(jī)04匯編程序設(shè)計(jì)LENGTH返回?cái)?shù)組元素的個(gè)數(shù)若變量用重復(fù)數(shù)據(jù)操作符DUP定義,則返回最外層DUP的值若變量無(wú)DUP說(shuō)明則返回1SIZE返回?cái)?shù)組變量所占的總字節(jié)數(shù)=LENGTH*TYPE運(yùn)算符LENGTH和SIZE微機(jī)04匯編程序設(shè)計(jì)K1DB10H DUP(0)K2DB“ABCDEF

7、”TYPE K1 = TYPE K2 =LENGTHK1 = LENGTH K2 =SIZE K1 = SIZE K2 =舉例:1101*10=10111*1=1微機(jī)04匯編程序設(shè)計(jì)(3)屬性運(yùn)算符類(lèi)型修改運(yùn)算符類(lèi)型修改運(yùn)算符類(lèi)型類(lèi)型 PTR 地址表達(dá)式地址表達(dá)式短轉(zhuǎn)移運(yùn)算符短轉(zhuǎn)移運(yùn)算符JMP SHORT 標(biāo)號(hào)標(biāo)號(hào)段超越運(yùn)算符段超越運(yùn)算符段名:地址表達(dá)式段名:地址表達(dá)式微機(jī)04匯編程序設(shè)計(jì)(4)運(yùn)算符優(yōu)先級(jí)優(yōu)先級(jí)優(yōu)先級(jí)運(yùn)算符運(yùn)算符高高LENGTH,SIZE, 段超越運(yùn)算符段超越運(yùn)算符PTR,OFFSET,SEG,TYPE,THIS*,/,MOD,SHL,SHR+,-EQ,NE,LT,LE,GT

8、,GE低低NOT AND OR XORSHORT微機(jī)04匯編程序設(shè)計(jì)指令語(yǔ)句偽指令語(yǔ)句宏指令語(yǔ)句3.偽指令執(zhí)行語(yǔ)句。經(jīng)過(guò)匯編產(chǎn)生可供計(jì)執(zhí)行語(yǔ)句。經(jīng)過(guò)匯編產(chǎn)生可供計(jì)算機(jī)硬件執(zhí)行的機(jī)器目標(biāo)代碼。算機(jī)硬件執(zhí)行的機(jī)器目標(biāo)代碼。說(shuō)明語(yǔ)句。如:程序有幾個(gè)段,說(shuō)明語(yǔ)句。如:程序有幾個(gè)段,段的名稱(chēng),是否需要預(yù)留存儲(chǔ)空段的名稱(chēng),是否需要預(yù)留存儲(chǔ)空間等。不直接產(chǎn)生目標(biāo)代碼。間等。不直接產(chǎn)生目標(biāo)代碼。指令語(yǔ)句指令語(yǔ)句+偽指令語(yǔ)句。替代源偽指令語(yǔ)句。替代源程序中一段有獨(dú)立功能的程序,程序中一段有獨(dú)立功能的程序,匯編時(shí)產(chǎn)生相應(yīng)的目標(biāo)代碼。匯編時(shí)產(chǎn)生相應(yīng)的目標(biāo)代碼。微機(jī)04匯編程序設(shè)計(jì)定義變量,并關(guān)聯(lián)變量名和存儲(chǔ)單元地址

9、。定義格式:變量名 類(lèi)型 數(shù)據(jù)項(xiàng)表類(lèi)型:DB DW DD DQ DT數(shù)據(jù)表項(xiàng):變量的長(zhǎng)度、數(shù)組元素個(gè)數(shù)、變量的初值(1)變量定義偽指令微機(jī)04匯編程序設(shè)計(jì)DBYTE DB -5H一個(gè)字節(jié)變量,值為-5HDWORD DW 6*3一個(gè)字變量,值為18DDWORD DD 1234H一個(gè)雙字變量,值為1234H數(shù)據(jù)定義例數(shù)值初值FBH12H00H34H12H00H00HDBYTEDWORDDDWORD微機(jī)04匯編程序設(shè)計(jì)STRING1 DB AB一個(gè)字節(jié)變量,值為ASTRING2 DW AB一個(gè)字變量,值為ABSTRING3 DD AB一個(gè)雙字變量,值為AB數(shù)據(jù)定義例字符串41H42H42H41H42

10、H41H00H00HSTRING1STRING2STRING3微機(jī)04匯編程序設(shè)計(jì)偽指令:DUP,重復(fù)賦值格式:重復(fù)次數(shù) DUP(操作數(shù),.,操作數(shù))SUBB DW1000 DUP (?)包含1000數(shù)組元素值不確定SDKP DB2 DUP (0,2 DUP(1)包含2個(gè)數(shù)組元素每個(gè)元素由2部分構(gòu)成,0和另一個(gè)數(shù)組B數(shù)組B包含2個(gè)元素,值為1數(shù)據(jù)定義例數(shù)組(1)微機(jī)04匯編程序設(shè)計(jì)BUFF DB16 DUP (Welcome)包含16個(gè)元素每個(gè)元素的值為WelcomeLING DB4 DUP (0,1)包含4個(gè)元素每個(gè)元素的數(shù)據(jù)為0和1數(shù)據(jù)定義例數(shù)組(2)微機(jī)04匯編程序設(shè)計(jì)賦值偽指令:EQU

11、定義格式:符號(hào)名 EQU 表達(dá)式等號(hào)偽指令:定義格式:符號(hào)名 表達(dá)式:都不直接產(chǎn)生機(jī)器指令:賦值偽指令不可以重名 (2)符號(hào)定義偽指令微機(jī)04匯編程序設(shè)計(jì)COUNT=5;常數(shù)NUM= 13+5-4;數(shù)值表達(dá)式NUM = NUM+1ADR1 EQU DS:BP+4 ;地址表達(dá)式CREG EQU CX;寄存器名CBDEQU DAA;指令名L1EQU SUBSTART ;標(biāo)號(hào)名WOEQU WORD PTR DBYTE;變量名舉例:微機(jī)04匯編程序設(shè)計(jì)把源程序劃分成若干邏輯段,便于匯編程序生產(chǎn)相應(yīng)代碼,便于連接程序生產(chǎn)可執(zhí)行程序。一個(gè)匯編語(yǔ)言源程序可以包含若干個(gè)邏輯段(代碼段、數(shù)據(jù)段、附加段或堆棧段)

12、,段與段之間的順序可隨意排列。需獨(dú)立運(yùn)行的程序,并指示程序執(zhí)行的起始點(diǎn),一個(gè)程序只有一個(gè)起始點(diǎn)。(3)段定義偽指令微機(jī)04匯編程序設(shè)計(jì)段名段名 SEGMENT 定位類(lèi)型定位類(lèi)型組合類(lèi)組合類(lèi)型型類(lèi)別名類(lèi)別名段名段名 ENDS邏輯段定義格式微機(jī)04匯編程序設(shè)計(jì)STACK SEGMENT STACK.STACK ENDSDATA SEGMENT.DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK.CODE ENDS微機(jī)04匯編程序設(shè)計(jì)格式:ORG 表達(dá)式功能:表明從表達(dá)式所指地址開(kāi)始存放程序或數(shù)據(jù)舉例:DATADATA SEGMENTSEGMEN

13、T BUFF1 BUFF1DBDB2323,56H56H,EOFEOF ORGORG2000H2000H BUFF2 BUFF2DBDBSTRINGSTRINGDATADATA ENDSENDS(4)設(shè)置起始地址偽指令微機(jī)04匯編程序設(shè)計(jì)表示整個(gè)源程序結(jié)束,停止匯編。定義格式:END 標(biāo)號(hào)注意:與第一條指令的標(biāo)號(hào)相同;必須是最后一條語(yǔ)句;若有多個(gè)END語(yǔ)句,只有第一個(gè)有效。(5)匯編結(jié)束偽指令微機(jī)04匯編程序設(shè)計(jì)說(shuō)明段寄存器和用戶(hù)編寫(xiě)的段的對(duì)應(yīng)關(guān)系,表示出用戶(hù)編寫(xiě)的段屬于系統(tǒng)規(guī)定的哪個(gè)段一般設(shè)在代碼段中定義格式:ASSUME 段寄存器名:段名, 段寄存器名:段名(6)段寄存器設(shè)定偽指令微機(jī)04

14、匯編程序設(shè)計(jì)3.3 匯編語(yǔ)言程序設(shè)計(jì)匯編程序的結(jié)構(gòu)框架DATA SEGMENTDATA ENDSCODE SEGMENT ASSUME CS:CODE, DS:DATA;定義過(guò)程定義過(guò)程START:MOVAX,DATA MOVDS,AX MOVAH,4CH INT21HCODE ENDSEND START數(shù)據(jù)段定義變量數(shù)據(jù)段定義變量段寄存器定義段寄存器定義DS的裝入的裝入退出程序退出程序微機(jī)04匯編程序設(shè)計(jì)過(guò)程:具有一定功能的子程序,CALL調(diào)用定義格式:過(guò)程名PROC距離類(lèi)型ret過(guò)程名ENDP注意:過(guò)程和段可以互相嵌套,但不可交叉覆蓋每個(gè)過(guò)程一定有返回指令RET,可能有多個(gè)最后一條指令必須

15、是RET(7)過(guò)程定義偽指令微機(jī)04匯編程序設(shè)計(jì)名字 操作碼 操作數(shù) 注釋 START: MOV AX,30H ; AX30H名字以字母開(kāi)頭,由字母、數(shù)字、特殊字符(?、*、_、$、等)組成,不超過(guò)31字符不能與保留字相同任選,多數(shù)指令不用,偽指令用指令語(yǔ)句名字用“:”分界,偽指令語(yǔ)句用空格分界標(biāo)號(hào)名、變量名、常量名、過(guò)程名、段名等4、匯編語(yǔ)言語(yǔ)句結(jié)構(gòu)微機(jī)04匯編程序設(shè)計(jì)操作碼必不可少的核心,規(guī)定了所要執(zhí)行的操作,由指令或偽指令助記符組成操作數(shù)參與操作的數(shù)據(jù)或地址,可以有多種表達(dá)形式,之間用,隔開(kāi)注釋; 后面的字符串微機(jī)04匯編程序設(shè)計(jì)1、程序設(shè)計(jì)的基本步驟分析題目與合理分配存儲(chǔ)空間和存儲(chǔ)器編

16、寫(xiě)源程序調(diào)試源程序4.3 匯編語(yǔ)言程序設(shè)計(jì)微機(jī)04匯編程序設(shè)計(jì)2、順序結(jié)構(gòu)例4-15把BUF開(kāi)始的兩個(gè)字節(jié)單元中的壓縮BCD數(shù)相加,結(jié)果存入字節(jié)單元RES中BCD碼:為了讓計(jì)算機(jī)能識(shí)別十進(jìn)制數(shù)例如:通常十進(jìn)制數(shù)49在計(jì)算機(jī)中為31H,不方便程序員觀(guān)察和記憶,用BCD碼存放則直接為49H微機(jī)04匯編程序設(shè)計(jì)buf db 89h,34hres dw ?LEA BX,BUF ;BX為BUF的有效地址MOV AL,BUF ;BUF中的第一個(gè)字節(jié)ADD AL,BX+1 ; BX+1 為BUF中的第二個(gè)字節(jié)DAAMOV RES,AX微機(jī)04匯編程序設(shè)計(jì)例4-18 求數(shù)X的絕對(duì)值,并送值回原處STACKSE

17、GMENT STACKDW256DUP(?)STACKENDSDATA SEGMENTXADR DW3456H, 8192HDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK3、分支結(jié)構(gòu)定義了一個(gè)空棧定義了一個(gè)空棧微機(jī)04匯編程序設(shè)計(jì)START:MOV AX, DATAMOV DS, AXDONE:MOV AH, 4CHINT 21HCODE ENDSEND START微機(jī)04匯編程序設(shè)計(jì)例4-20求某數(shù)據(jù)區(qū)內(nèi)負(fù)數(shù)的個(gè)數(shù) 設(shè)數(shù)據(jù)區(qū)第一個(gè)單元存放數(shù)據(jù)個(gè)數(shù),第二單元開(kāi)始存放數(shù)據(jù),最后一個(gè)單元存放結(jié)果。STACK SEGMENT STACKDW6

18、4 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACK,DS:CODE4、循環(huán)結(jié)構(gòu)微機(jī)04匯編程序設(shè)計(jì)START:MOVDI, 3000H;設(shè)置數(shù)據(jù)區(qū)首地址MOVCL, DI;設(shè)置循環(huán)次數(shù)(即數(shù)據(jù)個(gè)數(shù))(設(shè)置初值)XORCH, CH;CH清0MOV BL, CH;BL統(tǒng)計(jì)負(fù)數(shù)個(gè)數(shù),初值為0INCDI;指向第一個(gè)元素(循環(huán)條件改變)A1:MOVAL, DITESTAL, 80H;測(cè)試數(shù)據(jù)首位=1?JEA2;ZF=1,數(shù)據(jù)首位=0INCBL;負(fù)數(shù)個(gè)數(shù)+1A2:INCDI;指向下一個(gè)元素LOOP A1MOVDI, BL;存放統(tǒng)計(jì)結(jié)果微機(jī)04匯編程序

19、設(shè)計(jì)注意:主程序與子程序之間的參數(shù)傳遞保護(hù)和恢復(fù)主程序中寄存器的現(xiàn)場(chǎng)數(shù)據(jù)主程序與子程序之間的參數(shù)傳遞方式寄存器傳遞參數(shù)堆棧傳遞參數(shù)指定存儲(chǔ)單元傳遞參數(shù)5、子程序設(shè)計(jì)微機(jī)04匯編程序設(shè)計(jì)例4-23 求2個(gè)32位數(shù)的和。(利用堆棧傳遞參數(shù))CODE SEGMENTASSUME CS:CODE,DS:CODE,SS:CODEORG 100H START:JMPMAINMAIN :MOVAX, CODEMOV DS, AX微機(jī)04匯編程序設(shè)計(jì)MOVCX, 0002;定義調(diào)用次數(shù)MOVSI, 0;定義數(shù)據(jù)指針CLC;CF0REPEAT:MOVAX, ADDT1 ;取當(dāng)前數(shù)XPUSHAX;壓入堆棧MOVA

20、X, ADDT2SI;取當(dāng)前數(shù)YPUSHAX;壓入堆棧CALLADDITION;調(diào)用加法子程序MOVSUMSI, AX;送當(dāng)次運(yùn)算結(jié)果INCSIINCSI;指向下一個(gè)數(shù)據(jù)LOOPREPEAT微機(jī)04匯編程序設(shè)計(jì)MOVAX, 4C00H;結(jié)束調(diào)用INT21HADDITIONPROC NEARMOVBP, SP;指向棧頂MOVAX, BP+2;取第一個(gè)加數(shù)ADCAX, BP+4;取第二個(gè)加數(shù)RET4;彈出兩個(gè)加數(shù)ADDITIONENDPCODE ENDSENDSTART微機(jī)04匯編程序設(shè)計(jì)DOS系統(tǒng)功能調(diào)用和BIOS中斷調(diào)用1常用DOS系統(tǒng)功能調(diào)用DOS系統(tǒng)功能調(diào)用即DOS為用戶(hù)提供的一組例行子程

21、序,其調(diào)用和返回不是用CALL和RET,而是用INT n和IRET。這些子程序可分為以下幾個(gè)方面:磁盤(pán)的讀寫(xiě)及控制管理。內(nèi)存管理基本輸入/輸出管理(如鍵盤(pán)、打印機(jī)、顯示器)其他管理(如日期、時(shí)間)所有這些子程序按順序編號(hào)(調(diào)用號(hào)),分別為075H。調(diào)用方法:子程序入口參數(shù)送相應(yīng)寄存器 調(diào)用功能號(hào)送AH INT 21H微機(jī)04匯編程序設(shè)計(jì)(1)1號(hào)功能調(diào)用(鍵盤(pán)輸入并顯示) MOV AH,1 INT 21H 功能:掃描鍵盤(pán),等待輸入,若有鍵盤(pán)按下,則將鍵值讀入并判斷是否為Ctrl+Break鍵,若是,退出;若不是,則將鍵值(字符的ASCII碼)送AL,同時(shí)在CRT上顯示該字符。(2)2號(hào)功能調(diào)用

22、(顯示一個(gè)字符) MOV AH,2 MOV DL,待顯字符ASCII碼 INT 21H微機(jī)04匯編程序設(shè)計(jì) (3)9號(hào)功能調(diào)用(字符串顯示) MOV DX,待顯示字符串首地址 MOV AH,9 INT 21H 功能:將以$為結(jié)束標(biāo)志的字符串在屏幕上顯示。說(shuō)明:(1)執(zhí)行前要在DS數(shù)據(jù)段定義一個(gè)字符串,該字符串必須在$結(jié)尾。(2)若字符串無(wú)$結(jié)尾,則在其尾部加一$;若字符串中間有$,則只能采用2號(hào)功能調(diào)用逐個(gè)字符輸出。微機(jī)04匯編程序設(shè)計(jì) (4)10號(hào)功能調(diào)用(字符串輸入) MOV AH,10 MOV DX,待存數(shù)據(jù)區(qū)首地址 INT 21H 功能:從鍵盤(pán)上接收字符串送到內(nèi)存數(shù)據(jù)中。 注意:數(shù)據(jù)區(qū)的定義形式: BUF DB 50 ;數(shù)據(jù)區(qū)長(zhǎng)度 DB ? ;實(shí)際輸入字符的個(gè)數(shù) DB 50 DUP(?) ;存放輸入的字符 如果輸入的字符數(shù)大于數(shù)據(jù)區(qū)所定義的字符個(gè)數(shù),就會(huì)發(fā)出“嘟嘟”聲。微機(jī)04匯編程序設(shè)計(jì)(5)4CH號(hào)功能調(diào)用(返回操作系統(tǒng)) MOV AH,4CH INT 21H 功能:結(jié)束當(dāng)前正在執(zhí)行的程序,返回操作系統(tǒng),屏幕顯示操作系統(tǒng)提示符。2BIOS中斷調(diào)用 駐留在ROM中的BIOS提供了系統(tǒng)加電自檢、引導(dǎo)裝入I/

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論