版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、填空題:1. 循環(huán)程序可由循環(huán)初始化、循環(huán)體、循環(huán)控制三部分組成。2. 當(dāng)標(biāo)志位CF=1時(shí)表示無符號數(shù)運(yùn)算產(chǎn)生進(jìn)位, 而當(dāng)標(biāo)志位0F=1是表示帶符號數(shù)運(yùn)算產(chǎn) 生溢出。3. 外中斷有兩種類型,分別是可屏蔽中斷和非屏蔽中斷。4.8086/8088寄存器組可以分為四類,它們分別是數(shù)據(jù)寄存器、指針及變址寄存器、段寄 存器、控制寄存器。5. 有指令MOV CL,N完成將一個有符號數(shù)送入 CL,要使該指令合法,則N的最大值是 +127,最小值是 壬8。(用十進(jìn)制數(shù)表示)6. 在1M字節(jié)的存儲器中,每個存儲單元都有一個唯一的20位地址,稱為該物理單元的物理地址。7. 在DEBUG環(huán)境下,可以對源程序進(jìn)行匯編
2、、修改和執(zhí)行。8. 定義宏指令的偽指令是 MACRO和ENDM9. CPU要訪問的某一存儲單元的實(shí)際地址稱為物理地址10.8086中通用寄存器中,AX :累加器,BX :基址寄存器,CX:計(jì)數(shù)器,DX:數(shù)據(jù)寄存器, SP :堆棧指針寄存器,BP:基址指針寄存器,SI:源變址寄存器,DI :目的變址寄存器11.8086微處理器的功能結(jié)構(gòu)分哪兩大部件??偩€接口單元BIU和執(zhí)行單元EU;BIU負(fù)責(zé)與存儲器接口, EU部分負(fù)責(zé)指令的執(zhí)行。12.微機(jī)的總線按功能分為哪三大總線。地址總線AB、數(shù)據(jù)總線DB、控制總線CB13.8086微機(jī)內(nèi)存是分段管理的,這樣存儲器單元的邏輯地址分為哪兩個兩部分,計(jì)算為 物
3、理地址公式是什么?邏輯地址分為段基址和偏移量:物理地址=10H*段基址+偏移量14. 編程的基本結(jié)構(gòu):順序結(jié)構(gòu)分支結(jié)構(gòu) 循環(huán)結(jié)構(gòu)15. 如JMP指令采用段間間接尋址,那么由四個相鄰字節(jié)單元中存放有轉(zhuǎn)移地址,其中前兩個字節(jié)存放的是:IP,而后兩個字節(jié)存放的是:CS16. 在串操作程序中,通常在重復(fù)前綴指令 REPZ或REPNZ后,選用的串操作指令是STOS或_CMP_才有實(shí)際意義。17. 假設(shè)(SS)=2250H,(SP)=0140H,如果在堆棧中存入 5個數(shù)據(jù),則堆棧的物理地址為22636H18. 指令MOV AX,VARBX 屬于寄存器相對尋址。選擇題:1. 匯編語言源程序每個語句可以由四項(xiàng)
4、組成,如果語句要完成一定功能, 那么該語句中不可省略的項(xiàng)是操作項(xiàng)(也稱為助記符)2. 若(SP)=0FFFFH,則指令 POP AX 執(zhí)行后,(SP)= 0001H。3. n位補(bǔ)碼的表數(shù)范圍為:一 2n-1 w N令2n-1-1。4. 指令MOV AX,SEG BUF的執(zhí)行,是把BUF所在的段地址送到 AX中5. 已知DS=29A0H,某數(shù)據(jù)的物理地址是 2A400H,則當(dāng)DS=6700H時(shí),該數(shù)據(jù)的物理地 址是 67A00H。6. 要從一個字符串中找出一個AL中指定的字符,可選用SCASB指令實(shí)現(xiàn)。7中斷服務(wù)程序入口地址占用 4個字節(jié)。8. 用REPE SCASB指令對字符串進(jìn)行掃描,如 C
5、X0時(shí),掃描結(jié)束,那么表示在字符串中 遇上第一個了不是AL中指令的字符9. 若AX= - 15要得到AX=15應(yīng)執(zhí)行的指令是 NEG AX10.8088/8086存儲器分段,每個段不超過 64KB。11.指令MOV AL,42H中,源操作數(shù)42H存放在代碼段中判斷題:1 , BX是累加器、DX是計(jì)數(shù)器。X2, 假設(shè)存儲器中從7462H單元開始的四個相鄰字節(jié)單元中的內(nèi)容依次是32H , 46H , 52H ,0FEH,則存放字?jǐn)?shù)據(jù)0FE52H的字地址是7465H。 X3, MOV AX , BP的源操作數(shù)的物理地址為 16*(DS)+(BP)。 X4 , MOV指令不影響標(biāo)志位。V5,無條件轉(zhuǎn)移
6、指令對標(biāo)志位無影響,而條件轉(zhuǎn)移指令對標(biāo)志位有影響。X6,指令I(lǐng)N AL , DX是合法的指令。V7, 當(dāng)運(yùn)算結(jié)果的低8位中有偶數(shù)個1時(shí),奇偶標(biāo)志位PF被置為1。X8,匯編語言源程序不一定包含數(shù)據(jù)段、堆棧段,但必須包含代碼段。V9,可以將一個存儲器操作數(shù)與另一個存儲器操作數(shù)相加。X10,在IN AL,端口地址”指令中,端口地址指定了某個外部設(shè)備接口的I/O地址,它實(shí)際上是一個立即數(shù),其范圍為 065535。 X11,匯編程序和匯編語言源程序是不用的概念。V12,相對于某起始地址的偏移量稱為偏移地址。V13,只能使用PUSH , POP類的指令對堆棧段內(nèi)的內(nèi)容進(jìn)行操作。X14,立即數(shù)尋址方式不能用
7、于目的操作數(shù)字段。V15 , BP是堆棧棧頂指針寄存器。X16,內(nèi)存中字單元的地址必須是偶數(shù)地址。X17 , PUSH AL X18,在匯編語言源程序中,偽指令語句必須放在數(shù)據(jù)段中。X19 , SHR AX,CX X20,匯編程序就是用匯編語言編寫的匯編語言源程序X21,4300:3865H對應(yīng)的物理地址是 7B65H。X22,不能給段寄存器進(jìn)行立即數(shù)方式賦值。V23,串操作指令一般用CX存放長度。V24,因?yàn)橛卸渭拇嫫?,所以存儲器要分段。X25,邏輯右移1位和算術(shù)右移1位的效果是一樣的。X26,在變量定義是,可以通過使用 ORG偽指令指定變量在段中存儲時(shí)的偏移量。V27, 指令SHR AX,
8、4可以將AX的內(nèi)容邏輯右移4位。X28. CMP AX,BX執(zhí)行的操作時(shí)(AX)-(BX),但結(jié)果不保存,只改變標(biāo)志寄存器中標(biāo)志位的值V29 , ASCII DW ABCD X30 , MOV SI,SI V31,常量不占用存儲空間。V32 , PUSH,POP指令的操作數(shù)必須是字操作數(shù)。V33,存儲器的有效地址不是唯一的。V34,指令MOV AL,255是合法的數(shù)據(jù)傳送指令 V35,采用LOOP循環(huán)時(shí),必須用CX計(jì)數(shù)。V36 , SP=1190H,執(zhí)行了 PUSH 指令后,SP=1192H。 X37 , MOV DS,2000H X38,指令中目的操作數(shù)一般是不能為立即數(shù)的。V39 , IP
9、是指令指針寄存器,可以作為操作數(shù)參加運(yùn)算。X40 , CF位可以用來表示無符號數(shù)的溢出。V41,指令TEST AL,0執(zhí)行后AL的內(nèi)容- -定是全零。X42 , ADD SI,BX X43 , 8086/8088標(biāo)志寄存器共有16位,每一位都有含義。X44,在指令中一個地址代表一個字節(jié)單元。X45 , AND與TEST、SUB與CMP的功能相同。X46,符號定義語句不占內(nèi)存單元,變量定義語句占內(nèi)存單元。V47,與異或的結(jié)果為。V48,指令XCHG BX , ES可以將寄存器BX和ES的內(nèi)容互換。X49,偽指令語句與指令語句只是不同的語句種類,沒有什么本質(zhì)區(qū)別。X50 , CS , DS , E
10、S和SS段都可以存放數(shù)據(jù)。V51 , CBW可以將BL的數(shù)據(jù)擴(kuò)展為BX。X 簡答題:1. 變量和標(biāo)號有什么屬性?標(biāo)號和變量擁有2類三種屬性。第1類屬性是地址屬性,其中包含了兩種屬性:即段地 址屬性和偏移地址屬性。這類兩種屬性指示出相應(yīng)的變量或者標(biāo)號對應(yīng)存儲單元的段地址 和偏移地址。第2類是類型屬性。這類屬性表明了變量和標(biāo)號的類型,對于變量,其類型可 以是字節(jié)變量,或是字變量,或者是雙字變量等等;對于標(biāo)號,其類型可以是近或者是遠(yuǎn), 分別表示段內(nèi)和段間。2. 宏指令與子程序有什么不同之處?宏指令實(shí)際上就代表了它對應(yīng)的一組指令。對程序中出現(xiàn)的宏指令進(jìn)行匯編時(shí),這條 宏指令被它對應(yīng)的一組指令所代替。如
11、果程序中多次使用宏指令,就等于多次重復(fù)拷貝了 這個指令組,占用的內(nèi)存隨之增加。調(diào)用子程序通過執(zhí)行CALL指令實(shí)現(xiàn),存在 主程序”與子程序”之間的兩次控制轉(zhuǎn)移。使用 宏指令不存在控制轉(zhuǎn)移的過程。使用子程序和宏指令都可以提高編程效率。子程序占用固定大小的存儲空間,被主程序調(diào) 用時(shí),空間不會隨調(diào)用次數(shù)而增加。但是,宏指令占用存儲空間會隨著使用次數(shù)的增加而 增加。3. 求出以下各十六進(jìn)制數(shù)與十六進(jìn)制數(shù)62A0之和,并根據(jù)結(jié)果設(shè)置標(biāo)志位SF、ZF、CF和OF的值。(1) 4321(2) 9D60(3) 1234(4) CFA0答:(1) A5C1H SF=1 ZF=O CF=O OF=10000HSF=
12、0 ZF=1 CF=1 OF=074D4HSF=0 ZF=0 CF=0 OF=03240HSF=0 ZF=0 CF=1 OF=04. 在80X86系列計(jì)算機(jī)中,I/O設(shè)備有哪些數(shù)據(jù)傳送方式?有程序直接控制I/O方式(查詢方式)、中斷方式和 DMA方式(直接存儲器存取方式/ 成組傳送方式)三種。5. 簡述CPU的組成部分及各部分的主要作用。CPU由ALU、控制器和寄存器組成。ALU用來進(jìn)行算術(shù)邏輯運(yùn)算;控制器負(fù)責(zé)對全機(jī)的 控制工作;寄存器用來存放計(jì)算過程中所需要的或所得到的各種信息。寄存器相對尋址 寄存器間接尋址 寄存器尋址 基址變址尋址直接尋址6. 指出下列指令源操作數(shù)的尋址方式MOV AX,
13、ARRAYSIMOV AX,ES:BXMOV AX,BXMOV AX,BX+DIMOV AX,ARRAY7. 常用DOS功能調(diào)用中,1號2號9號A號功能調(diào)用完成的操作分別是什么?1號:鍵盤輸入并回顯2號:顯示輸出9號:顯示字符串A號:鍵盤輸入到緩沖區(qū)8請簡述匯編語言的上機(jī)過程1- 用文本編輯軟件編輯源程序,以.asm擴(kuò)展名保存文件2- 用匯編程序?qū)υ闯绦虮M興匯編得到目標(biāo)程序,擴(kuò)展名為.obj3- 用鏈接程序?qū)δ繕?biāo)程序進(jìn)行鏈接得到可執(zhí)行程序。擴(kuò)展名為.EXE或.COML4- 運(yùn)行調(diào)試9. 匯編程序的功能是什么?檢查源程序,給出出錯信息產(chǎn)生目標(biāo)文件.obj和列表文件st展開宏指令10. 機(jī)器語言的
14、定義:用二進(jìn)制代碼組成的計(jì)算機(jī)能直接識別的語言。匯編語言的定義:用機(jī)器指令的助記符以及偽指令,宏指令標(biāo)識的一種面向機(jī)器的語用該語言編寫的,程序需要經(jīng)過匯編程序的翻譯,成為計(jì)算機(jī)能直接識別并執(zhí)行的程 序。11 常用的DOS功能調(diào)用中,1號、2號、9號、A號功能調(diào)用完成的操作分別是什么? 1號:鍵盤輸入并回顯;2號:顯示輸出;9號:顯示字符串;A號:鍵盤輸入到 緩沖區(qū)12. 編程的三種基本結(jié)構(gòu)有哪些?順序結(jié)構(gòu)、分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)13. 某外設(shè)能否得到CPU的中斷服務(wù)取決于什么控制條件?從外設(shè)發(fā)出中斷請求到CPU響應(yīng)中斷,有兩個控制條件是起決定性作用的:(1) 該外設(shè)的中斷請求是否屏蔽,這個條件由8
15、259A的中斷屏蔽寄存器控 制;(2) CPU是否允許響應(yīng)中斷,這由標(biāo)志寄存器(FLAG)中的中斷允許位IF 控制。程序分析:1.MOVAX,DXNOTAXADDAX,DXINCAX試回答:(AX)= 0 , (ZF)=12.BUF DW 0000HIIILEA BX , BUFSTCRCR WORD PTRBX , 1 (帶進(jìn)位右移,把最低位給CF,CF再給最高位)MOV CL,3SAR WORD PTRBX,CL問:該程序段執(zhí)行后,存儲單元 BUF的內(nèi)容為?。1000HDA1 DB 01234DA2 DB 5 DUP(0)MOV SI, 0MOV CX , 5LOP : MOV AL, D
16、A1SIADD AL, 11HOR AL, 01HMOV DA2SI , ALINC SILOOP LOP程序段執(zhí)行后,DA2各字節(jié)中的數(shù)據(jù)。41H , 43H , 43H , 45H , 45H4.AT DB 0AH , 0BH , 0CH , 0DH , 0EH , 0FH , 00HMOV BX , 0LOP : MOV DL , AT BXCMP DL, 0JZ DONEADD DL , 37HMOV AH, 2INT 21HINC BXJMP LOPDONE :上述程序段執(zhí)行后在屏幕上顯示的內(nèi)容依次是:ABCDEF執(zhí)行后BX=64. MOV BX,1XOR AX,AX=0MOV CX
17、,5NEXT : ADD AX,BXINC BXLOOP NEXT上述程序段執(zhí)行后AX=15H ; BX=06H ; CX=05. 下列程序完成的是在3個數(shù)中找出最小的數(shù)放于 AL中,請?jiān)诔绦蛑械目崭裉幪钊胍粭l適 當(dāng)?shù)闹噶钍蛊渫暾?。MOV AL,XMOV BL,YMOV CL , ZCMP AL, BLJLE NEXT1XCHG AL, BLNEXT1 :CMP AL, CLJLE NEXT2XCHG AL, CLNEXT2 :RET6. a、b是雙精度數(shù),分別存于 X, X + 2及Y, Y + 2中,試編寫一個指令序列,完成如 下功能:當(dāng)a b時(shí)轉(zhuǎn)L1,否則轉(zhuǎn)L2MOV AX,XMOVDX
18、,X + 2CMP DX, Y+ 2JGL1JLL2CMP AX, YJAL1(無符號大于跳轉(zhuǎn))L2:L1:8測試AL寄存器的X和Y位,若同時(shí)為0,程序轉(zhuǎn)向某語句標(biāo)號,執(zhí)行 AX加(或減)BX; 否則將AL清零,同時(shí)清CF和OF標(biāo)志。TEST AL, XXXX , XXXXBJZ(語句標(biāo)號1 )將AL清零,同時(shí)清CF和OF (可以考慮用SUB或XOR等指令,另外,用MOV指令可 行否?)JMP語句標(biāo)號2根據(jù)題意指示確定語句標(biāo)號1:ADD AX , BX (SUB AX , BX )定義一個語句標(biāo)號2:答:假如 X=0,Y=1TEST AL,03HJZ MY1XOR AL,ALJMP MY2MY
19、1:ADD AX,BX(或者 SUB AX,BX)MY2:9. 已知(AX)=0FF70H , (CF)=1MOV BX, 100XOR BH, 0FFHSBB AX, BX執(zhí)行上述指令序列后,(AX)=000CH , (CF)=0。10. 有兩個16位數(shù)1000H和ABCDH分別存放在內(nèi)存10000H和10004H單元中,試用圖 表示他們在內(nèi)存中的存放情況。10000H00LOOO1H1010002H10003H10004HCDL0005H$ 時(shí),則程序退出返回11. 從鍵盤逐一輸入字符,并從顯示器輸出,當(dāng)輸入到字符 請?jiān)谙铝谐绦蛑械目崭裉幪钊脒m當(dāng)指令使其完整。NEXT: MOV AH,1I
20、NT 21HCMP AL: $JZ EXITMOV DI , AlMOV AH: 2 INT 21H JMP NEXTEXIT:RET12. 分析下面程序,回答指定問題:MOV AX,DX NOT AXADD AX,DXINC AX試回答:(AX)= 0 (2 分),(ZF)= 1 (3 分)。13. 依據(jù)下面程序段:ADDAL,BLJOL1JCL2CMPAH,BHJGL3JBL4JMPL5給定AX、BX值如下,說明程序轉(zhuǎn)向AXBX轉(zhuǎn)向114C8808DL12D0829F70L33427B60DCL243F2350D0L450042FF3DL314下列程序完成的是將首地址為 A的字?jǐn)?shù)組從小到大
21、排序 的指令使其完整。MOVDECCX, 5 CXLOOP1:MOVDI, CXMOVBX, 0LOOP2:MOVAX, ABXCMPAX. ABX+21JLE1 91i J, i-r r iJCONTINUEXCHGAX, ABX+2MOVABX , AXCONTINUE:請?jiān)诔绦蛑械目崭裉幪钊脒m當(dāng)ADD BX; 2 LOOP LOOP2 MOV CX; DI LOOP LOOP115下列程序結(jié)構(gòu)以過程的形式表示,請?jiān)诳崭裉幪钊脒m當(dāng)?shù)闹噶頒ODESEGMENTMAINPROC FARASSUME CS: CODE,START: PUSH DSMOV AX, 0 PUSH AXMAIN COD
22、ERETENDP ENDS ENDSTART處理過程16試編寫一個程序求出雙字長數(shù)的絕對值。雙字長數(shù)在A和A+ 2單元中,和B+ 2單元中。MOV AX, AMOV DX, A+2TEST DX, 8000HJZ STORENOT DXNOT AXADD AX, 1ADC DX, 0STORE:MOV B, AXMOV B+2 , DX17編寫程序段,把字符串 STRING中的 &用空格代替STRING DB The date is FEB&03 LES DI, STRINGMOV CX, 18CLDMOV AL, & REPNZ SCACB CMP CX, 0JZ NEXTMOV AL, 2
23、0HSUB DI, 1 MOV DI , AL NEXT:18.在DA1數(shù)據(jù)區(qū)中有50個字節(jié)數(shù)據(jù),請編寫一段匯編程序段將每個數(shù)據(jù)的低 而高4位不變,并依次存入 DA2數(shù)據(jù)區(qū)中。結(jié)果存放在 B4位變反,MOV CX, 50LEASI, DA1LEA DI, DA2K1 :MOV AL, SIXOR AL, 00001111BMOV DI , ALINC SIINC DIDEC CXJNE K119試分析下面的程序段完成什么功能?MOV CL, 04SHL DX, CLMOV BL, AHSHL AX, CLSHR BL, CLOR DL, BL把(DX)(AX)中的雙字左移四位(乘以16)編程題
24、:1假設(shè)程序中的數(shù)據(jù)定義如下:BUF1DB100 DUP (a)BUF2DW1275H,567,0C5HBUF3DB20 DUP (?)BUF4DB7, 4,6, 9,81)用一條指令將BUF1的偏移地址送入BX.2)將BUF2的第三字節(jié)數(shù)據(jù)送入CL3)用一組指令寫出BUF2的第二個數(shù)據(jù)567和BUF4的第三個數(shù)據(jù)6相加,結(jié)果(和)送入BUF34)用偽指令寫出BUF1和BUF2二者的總長度(字節(jié)數(shù))5)將0A6H送入BUF3的第10個字節(jié)單元中答:1. LEA BX,BUF12. LEA BX,BUF2MOV BYTE PTR CL,BUF2+23. MOV AL,BUF4+2MOV AH,0
25、ADD AX,BUF2+2MOV BUF3,AX4. L1 2 EQU BUF3-BUF15. MOV BYTE PTR BUF3+9,0A6H2. 將首地址為BUF的數(shù)組中的每個元素賦值為 20HDATASEGMENTBUF DB 100 DUP (?)DATAENDSCODESEGMENTASSUME CS : CODE,DS: DATASTART :MOV AX, DATAMOV DS, AXMOV BX , OFFSET BUFMOV CX, 64HLP:MOV BYTE PTRBX , 20HINC BXLOOP LPMOV AH, 4CHINT 21HCODE ENDSEND ST
26、ART3. 統(tǒng)計(jì)AX中1的個數(shù)。XOR DL , DLA:CMP AX, 0JZ BYESHL AX , 1JNC BINC DLB:JMP ABYE :答:CODE SEGMENTASSUME CS:CODESTART:MOVAX,7234HMOVBL,0MOVCX,16LOOP1:TESTAX,8000HJZLOOP2INCBLLOOP2:SHLAX,1LOOPLOOP1MOVDL,BLADDDL,30HMOVAH,02HINT21HMOVAH,4CHINT21HCODE ENDSENDSTART4. 比較AX , BX, CX中帶符號數(shù)的大小,將最大的數(shù)放在 AX中,試編寫此程序段CMP
27、 AX,BXJNL NEXTXCHG AX,BXNEXT : CMP AX,CXJNL DONEXCHG AX,CXDONE :附:DATA SEGMENTXDB7YDB9ZDB5W DB ?DATA ENDSPROGRAM SEGMENTASSUME CS:PROGRAM,DS:DATAMAIN PROC FARPUSHDSXORAX,AXPUSHAXMOVAX,DATAMOVDS,AXMOVDL,XCMPDL,YJAECOMPAREXZMOVDL,YCMPDL,ZJAEDISPMOVDL,ZJMPDISPCOMPAREXZ:CMPDL,ZJAEDISPMOVDL,ZDISP:ADDDL,3
28、0HMOVAH,2INT21HRETMAIN ENDPPROGRAMENDSENDMAIN5. 設(shè)AX、BX、CX中的數(shù)是帶符號數(shù),下列程序求 AX、BX、CX中的最小值,結(jié)果在 AX 中CMP AX , BXJLENEXT(JLE ;有符號小于等于則跳轉(zhuǎn))XCHGAX,BXNEXT :CMP CX,AXJGEEXITXCHGAX,CXEXIT :附:DATA SEGMENTXDB7YDB9ZDB5W DB ?DATA ENDSPROGRAM SEGMENTASSUME CS:PROGRAM,DS:DATAMAIN PROC FARPUSHDSXORAX,AXPUSHAXMOVAX,DATAM
29、OVDS,AXMOVDL,XCMPDL,YJLECOMPAREXZMOVDL,YCMPDL,ZJLEDISPMOVDL,ZJMPDISPCOMPAREXZ:CMPDL,ZJLE DISPMOVDL,ZDISP:ADDDL,30HMOVAH,2INT 21HRETMAIN ENDPPROGRAM ENDSEND MAIN6. 兩字符串比較,相同顯示 Match,否則顯示No MatchSTART : MOV AX , DATAMOV DS , AXMOV ES , AXLEA SI,其中一個字符串的首地址LEA DI,另一字符串的首地址CLDMOV CX,字符串的長度REPZ CMPSBJZ M
30、ATCHLEA DX,“ No Match字符串的首地址JMP SHORT DISPMATCH :LEA DX,“ Match字符串的首地址DISP : MOV AH , 09INT 21H附:DATA SEGMENTSTRING1DBSTRING2DBMESS1DBMESS2DBDATAENDSMOVE THE CURSOR BACKWARD. MOVE THE CURSOR BACKWARD. MATCH.,13,10,$NO MATCH!,13,10,$PROG SEGMENTASSUME CS:PROG,DS:DATA,ES:DATASTART: MOV AX,DATAMOVDS,AX
31、MOVES,AXLEASI,STRING1LEADI,STRING2CLDMOVCX,25REPZ1: CMPSBJZMATCHLEADX,MESS2JMPSHORT DISPMATCH: LEA DX,MESS1DISP: MOV AH,09INT21HMOV AH,4CHINT21HPROG ENDSEND START7有數(shù)組 x(x1 , x2, ,x10)和 y(y1 , y2, ,y10),試編寫一程序段,計(jì)算z(z1 , z2 , ,z10),其中有:例如如果:以1表示-以0表示+則邏輯尺則為:0000,0001,即0189H1000, 1001Bz2 = x2 +(或)y2 ;+
32、z3 = x3 +(或)y3 ;+z4 = x4 +(或一) y4 ;一z5 = x5 +(或一)y5;+z6 = x6 +(或一)y6;+z7 = x7 +(或)y7;+z8 = x8 +(或)y8 ;一z9 = x9 +(或一)y9;一z10= x10 +(或一)y10。+解題方法:定義一邏輯尺logic_rulemovbx, 0movcx, 10movdx, logic_rulen ext:movax, xbxshr dx,1jc subtract add ax, ybxjmp short result subtract: sub ax, ybx result:mov zbx, axad
33、d bx, 2loop n ext附:datarea segme ntx dw x1,x2,x3,x4,x5,x6,x7,x8,x9,x10 y dw y1,y2,y3,y4,y5,y6,y7,y8,y9,y10 z dw z1,z2,z3,z4,z5,z6,z7,z8,z9,z10 logic_rule dw OOdchdatarea endsprog nam segme ntmai n proc farassume cs:prog nam,ds:datareastart:push dssub ax,axpush axmov ax,datareamov ds,axmov bx,0mov cx
34、,10mov dx,logic_rulen ext: mov ax,xbx shr dx,1 jc subtract add ax,ybx jmp short result subtract:sub ax,ybx result:mov zbx,ax add bx,2loop n extmain endpprog nam endsend start 8計(jì)算 S= 1 + 2X3+ 3X4+ - + NX (N 1),直到 NX (N 1)項(xiàng)剛大于 200為止(MUL乘 法指令,字節(jié)操作數(shù): AX=AL*SRC根據(jù)INTEL匯編指令集:MOV DX,1MOV BL,2REPEAT:MOV AL,B
35、LINC BLMUL BLADD DX,AXCMP AX,200JNA REPEAT(JNA : jump if not above,如果不大于等于200,則跳轉(zhuǎn),JB則是小于, 缺少等于這層含義)9顯示字符串MOV DX,OFFSET 字符串的首地址MOV AH,09HINT 21H附:DATA SEGMENTSTRING1 DB big sn ail1$DATA ENDSPROG SEGMENTASSUME CS:PROG,DS:DATASTART:MOV AX,DATAMOV DS,AXLEA DX,STRING1MOVAH,09INT21HMOV AH,4CHINT21HPROG ENDSEND START10. 設(shè)計(jì)一個比較兩個8位無符號數(shù)的大小、并把較小的數(shù)存人MIN單元的程序。假設(shè)這兩個數(shù)分
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單位管理制度分享匯編【職工管理篇】十篇
- 高中語文常見的修辭方法及其辨析
- 單位管理制度呈現(xiàn)合集【職工管理篇】十篇
- 單位管理制度呈現(xiàn)大合集【人員管理篇】
- 《壽險(xiǎn)經(jīng)營的命脈》課件
- 《看見學(xué)生的需要》課件
- 《班孫楠消防日》課件
- 物流行業(yè)人事工作總結(jié)
- 過年小學(xué)作文15篇
- 寵物行業(yè)寵物護(hù)理培訓(xùn)總結(jié)
- 承壓設(shè)備事故及處理課件
- 煤層氣現(xiàn)場監(jiān)督工作要點(diǎn)
- 工會經(jīng)費(fèi)收支預(yù)算表
- 舒爾特方格55格200張?zhí)岣邔W⒘4紙直接打印版
- 質(zhì)量管理體系各條款的審核重點(diǎn)
- 聚丙烯化學(xué)品安全技術(shù)說明書(MSDS)
- BBC美麗中國英文字幕
- 衛(wèi)生院工程施工組織設(shè)計(jì)方案
- CDR-臨床癡呆評定量表
- 《八年級下學(xué)期語文教學(xué)個人工作總結(jié)》
- 鋁合金門窗制作工藝卡片 - 修改
評論
0/150
提交評論