《汇编语言程序设计》试卷-福建农林大学解析

上传人:文**** 文档编号:71107274 上传时间:2022-04-06 格式:DOC 页数:32 大小:97KB
收藏 版权申诉 举报 下载
《汇编语言程序设计》试卷-福建农林大学解析_第1页
第1页 / 共32页
《汇编语言程序设计》试卷-福建农林大学解析_第2页
第2页 / 共32页
《汇编语言程序设计》试卷-福建农林大学解析_第3页
第3页 / 共32页
资源描述:

《《汇编语言程序设计》试卷-福建农林大学解析》由会员分享,可在线阅读,更多相关《《汇编语言程序设计》试卷-福建农林大学解析(32页珍藏版)》请在装配图网上搜索。

1、精选优质文档-倾情为你奉上第4篇 模拟试卷试卷一一、单项选择题(本大题共15小题,每小题2分,共30分)1与MOV BX, OFFSET VAR指令完全等效的指令是( )。(A)MOV BX, VAR (B)LDS BX, VAR(C)LES BX, VAR (D)LEA BX, VAR2. DEBUG中的执行一段子程序的命令是( )。(A)D(B)T (C)P(D)U3不能作为地址指针的寄存器是( )。(A)CX (B) BX (C)DI (D)SI4已知, (AX)=0F234H,执行OR AX, 963FH后,则SF,CF的值为( )。(A)SF=1,CF=1 (B)SF=1,CF=0(

2、C)SF=0,CF=1 (D)SF=0,CF=05AL=B ,CL=2,执行SAR AL, CL后,AL寄存器的内容是( )。(A) (B)(C) (D) 6下面两个传送指令语句中源操作数寻址方式是( )。 VAR1 DW 32H VAR2=32H . MOV AX, VAR1 MOV BX, VAR2(A)都是立即数寻址(B)立即数寻址,直接寻址(C)直接寻址,立即数寻址(D)都是直接寻址7变量具有( )。(A)偏移属性 (B) 符号属性(C)段属性 (D)段属性和偏移属性8寄存器间接寻址方式中,操作数在( )中。(A)通用寄存器 (B)堆栈 (C) 内存单元 (D)段寄存器9下列对END语

3、句的叙述正确的是( )。(A)END是一可执行语句(B)END表示程序执行到此结束(C)END表示源程序到此结束(D)END在汇编后产生机器码10下列叙述不正确的是( )。(A)存储单元与逻辑地址之间的关系是一一对应的(B)存储单元与物理地址之间是一一对应的(C)一个逻辑地址对应一个存储单元(D)一个存储单元可以用不同的段地址和偏移地址表示11下列指令合法的是( )。(A)OUT AX, 30H (B)OUT DX, AL(C)OUT AL, DX (D)OUT 30H, AH12当一个带符号数大于0FBH时程序转移,选择的条件转移指令是( )。(A)JNLE (B)JLE(C)JNL (D)

4、JA13用于显示单个字符的DOS系统功能调用,应设置AH寄存器的内容为( )。(A)1H (B)2H (C)9 H (D)0AH14. 完成与指令XCHG AX, BX 相同功能的指令或指令序列是( )。(A)MOV AX, BX (B)MOV BX, AX (C)PUSH AX (D)MOV CX, AX POP BX MOV AX, BX MOV BX, CX15下面的CMP指令中,语法正确的指令是( ).(A)CMP BUF1, BUF2 (B)CMP AL, 0FH(C)CMP BUF1, 0FH (D)CMP AL, BX二、阅读程序题(本大题共3小题,每小题6分,共18分)1.阅读

5、程序(1)写出程序的功能;(2)程序执行后 DAT和DAT+1单元的内容是什么?DATASEGMENT DATDB98H, 27HDATAENDSCODESEGMENT ASSUMECS: CODE, DS: DATASTART:MOVAX, DATA MOV DS, AX MOVAL, DAT CMP AL, DAT+1 JNG DONE XCHG AL, DAT+1 MOV DAT, AL DONE: MOVAH, 4CH INT21H CODE ENDS ENDSTART 2. 对于下面的数据定义,各条MOV指令单独执行后,请填写有关寄存器的内容。DATA SEGMENTTABLE1DW

6、 30HTABLE2DW 20 DUP (?)TABLE3 DB ABCDDATA ENDS.MOV BX, TYPE TABLE2 (BX=_ )MOV CX, LENGTH TABLE2 (CX=_ )MOV DX, OFFSET TBLE3 (DX=_ )3阅读下列程序,写出指令段实现的功能。 MOVAL, X ADD AL, Y MOV CL, 3 SAL AL, CL MOVBL, X SUB BL, Y SAL BL, 1 SUB AL, BL MOV CL, 4 SAR AL, CL MOV Z, AL三、阅读填空题(本大题共2小题,共有6个空,每个空格2分,共12分)1从DAT

7、开始的单元中存放着多个有符号的字节数。下面程序实现对其处理。如果数据大于等于0,则屏蔽高4位;如果小于0则将其求补,处理后的数据仍保留在原单元中。在下面每一空白处填上一条适当的指令。DATASSEGMENT DATDB 77H, 88H, 0AAH, 0BBH, 13H COUNT EQU $-DATDATAS ENDSCODE SEGMENT ASSUME CS: CODE, DS: DATASSTART: MOVAX, DATAS MOV DS, AX LEA SI, DAT MOV CX, COUNTLL1: MOVAL, SI CMP AL, 0 JGE LL2 JMP PPLL2:

8、PP: INC SI LOOPLL1 MOV AH,4CH INT 21HSUB1PROC NEGAL MOV SI, AL RETSUB1 ENDPSUB2 PROC RETSUB2 ENDPCODEENDS ENDSTART2下面程序段是完成用单个字符输入的1号功能调用,从键盘输入10个字符。然后再用单个字符显示输出的2号功能调用,并以相反顺序显示输出这10个字符。试在空白处填上适当的指令(每个空白处只能填一条指令)。 MOVCX, 10LOP1: MOV AH, 01H INT 21H LOOPLOP1 MOV CX, 10LOP2: MOVAH, 02H INT21H LOOP LOP

9、2 四、程序设计题(本大题共3小题,其中第1小题12分,第2小题13分,第3小题15分,共40分)1.X,Y, W为字节类型的数,求Z=(W-X)*10+5)/(X+Y),其中X,Y,W为字节类型的数,数值分别为:38H,28H,48H 。2.利用主程序调用子程序,比较BUF1和BUF2缓冲区中不相等的字符,并将不相等的字符显示出来。3.在首地址为TAB的数组中按递增次序存放着100个数,试编程将出现次数最多的数以及出现的次数分别存放于变量NUM和COUNT中,并以:COUNT=? 的形式输出COUNT的值(设最多重复次数10) 。试卷二一、单项选择题(本大题共20小题,每小题2分,共40分)

10、1.下列四个寄存器中,可作为16位寄存器的是( )。(A)AL(B)BL(C)BP(D)BH2.逻辑移位指令SHL,用于( )。(A)带符号数倍增 (B)带符号数倍减(C)无符号数倍增 (D)无符号数倍减3.在程序的运行过程中,确定下一条指令的物理地址的计算表达式是( )。(A)CS*16+IP (B) DX*16+DI(C)SS*16+SP (D)ES*16+SI4.下面表示宏定义结束的命令是( )。(A)ENDP(B)ENDS(C)ENDM (D)END5.用于输入单个字符的DOS系统功能调用,应设置AH寄存器的值为( )。(A)1H (B)2H (C)9 H (D)0AH6.下列指令中有

11、语法错误的是( )。(A)MOV 100H,BX (B)MOV 100H, 25(C)MOV 100H, BX (D)MOV BX, 100H7.两个无符号数比较,如表示大于时转到NEXT处,应选用的指令是( )。(A)JNBE NEXT (B)JNLE NEXT(C)JBE NEXT (D)JLE NEXT8.寄存器直接寻址方式中,操作数在( )中。(A)通用寄存器 (B)堆栈(C)内存单元 (D)段寄存器9.下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( )。(A)AX, BX, CX, DX (B)BX, BP, SI, DI(C)SP, IP, BP, DX (D)CS, D

12、S, ES, SS10.下面指令序列执行后完成的运算,正确的算术表达式是( )。 MOVDL, X SARDL, 1 MOVY, DL(A)Y=X*2 (B)X=Y*2 (C)Y=X/2(D)X=Y/211.在标志寄存器中,用以记录当前运算结果是否为0的标志位是( )。(A)CF (B)ZF (C) OF (D)SF12.当前指令的地址存放在()中(A)DS: BP (B)SS: SP (C)CS: PC (D)CS: IP13.下列指令执行后,可能改变BL寄存器内容的指令是( )。(A)TESTBL, 0FFH (B)ORBL, 00H(C)CMP BL, 00H (D)XORBL, BL1

13、4.与MOV BX, OFFSET VAR指令完全等效的指令是( )。(A)MOVBX, VAR (B)LDS BX, VAR(C)LES BX, VAR (D)LEA BX, VAR15.汇编语言源程序中,每个语句由四项组成,如语句要完成一定的功能,不可省略的项是( )。(A)名字项 (B)操作项(C)操作数项(D)注释项16.汇编语言源程序的扩展名是( )。(A).ASM(B).OBJ(C).EXE(D).COM17.能够将BL的低4位清0的指令是( )。(A)AND BL , 0F0H(B)AND BL , 00H(C)OR BL , 0F0H (D)ORBL , 00H18.已知,(A

14、X)=9023H,执行OR AX, 001BH后,则SF,CF的值为( )。(A)SF=1,CF=1(B)SF=1,CF=0 (C)SF=0,CF=1 (D)SF=0,CF=019.设OP1、OP2是变量,下面哪条指令是正确的( )。(A)CMPBX, OP2 (B)CMPAX, OP2 (C)CMPOP1, OP2 (D)CMPOP2, 0FFH 20.用DEBUG调试程序时,单步执行命令是( )。(A)G(B)U (C)D (D) T二、阅读程序题(本大题共3小题,其第1、2小题均为6分,第3小题为6分,共20分)1执行下面程序段后,AX、CX的值为多少? CODESEGMENT ASSU

15、MECS: CODESTART:MOVCH, 0 MOVCL, 1 MOVBL, 2 MOVAH, 0AGAIN: MOVAL, BL INCBL MULBL ADDCX, AX CMPAX, 0015H JBAGAIN MOVAH, 4CH INT21H CODEENDS ENDSTART2阅读程序,写出指令段实现的数学公式。 MOV BL, X ADDBL, Y MOVAL, W SUBAL, X IMULTEN ADDAX, 5 IDIVBL MOVZ, AX MOVAL, 03.写出程序的功能和结果。DSEGSEGMENTNUM1DB 1, 2, 3 ,4, 5, 6, 7, 8NUM

16、2DB1, 2, 3, 4, 5, 6, 7, 8RESULT DW?DSEGENDSCSEGSEGMENT ASSUMECS: CSEG, DS: DSEGSTART: MOVAX, DSEG MOVDS, AX MOVCX, 8 MOVBX, 0 MOVSI, OFFSET NUM1 MOVDI, OFFSET NUM2AGAIN: MOVAL, SI MULBYTE PTRDI ADDBX, AX INCDI INCSI LOOPAGAIN MOVRESULT, BX MOVAL, 0 MOVAH, 4CH INT21HCSEGENDS ENDSTART三、程序设计题(本大题共3小题,其

17、中第1小题12分,第2小题13分,第3小题15分,共40分)1编程显示以下图案。*2首地址为BUF 的内存单元中存有10个字节数,统计其中单元内容为0的单元个数,并将统计的结果显示出来。3编写子程序搜索指定字符缓冲区中是否有小写字母N,如果有则用Y替代。江调用子程序将BUF1,BUF2中的N全部用Y替代。 试卷三一、单项选择题(本大题共20小题,每小题1分,共20分)1下面四个寄存器中,不能作为间接寻址的寄存器是( )。(A)BX(B)DX(C)BP (D)DI2用来表示堆栈指针的寄存器是( )。(A)IP (B)BP (C)SP (D)SS3完成BX清零,并使标志位CF清零,下面错误的指令是

18、( )。(A)SUB BX, BX(B)XOR BX, BX(C)MOV BX, 00H(D)AMD BX, 00H4下面数据传送指令中,正确的指令是( )。(A)MOV BUF1, BUF2(B)MOV CS, AX(C)MOV CL, 1000H(D)MOV DX, WORD PTR BX+DI5下面指令中,源操作数的寻址方式为直接寻址的指令是( )。(A)ADD AX, WORD PTR BX+SI(B)ADD AX, B (C)INC CX, 1000H(D)MOV BX, 7FFFH6下面表示段定义结束的命令是( )。(A)ENDP (B)ENDS (C)ENDM (D)END7设A

19、L,BL中都是有符号数,当ALBL时转至NEXT处,在CMP AL, BL指令后应选用正确的条件转移指令是( )。(A)JBE (B)JNC (C)JNA (D)JNLE8指令LOOPZ的循环执行条件是( )。(A)CX0并且ZH=0(B)CX0或ZH=0(C)CX0并且ZH=1(D)CX0或ZH=19执行下列指令后,SP寄存器的值是( )。MOV SP, 1000HPUSH AX(A)0FFEH (B)0FFFH (C)1001H (D)1002H10完成有符号数BX的内容除以2的正确指令是( )。(A)SHR BX, 1(B)SAR BX, 1(C)ROR BX, 1(D)RCR BX,

20、111下面指令中影响状态标志位CF的指令是( )。(A)INC AX(B)DEC AX(C)NOT AX(D)DEC AX12判断当CX=0时,转ZERO执行的错误指令是( )。(A)CMP CX, 0 (B)MOV AX, CX JZ ZERO JZ ZERO(C)OR CX, CX (D)JCXZ ZERO JZ ZERO13执行1号DOS系统功能调用后,从键盘输入的字符应存放在( )。(A)AL中 (B)BL中 (C)CL中 (D)DL中14设数据定义如下:ARRAY DW 1, 2, 3执行指令ADD SI, TYPE ARRAY相当于完成下面同等功能的指令是( )。(A)ADD SI

21、, 1(B)ADD SI, 2(C)ADD SI, 3(D)ADD SI, 015设数据定义如下:BUF DW 100 DUP (?)执行指令MOV CX, LENGTH BUF相当于完成下面同等功能的指令是( )。(A)MOV CX, 00C8H(B)MOV CX, 0200H (C)MOV CX, 0064H (D)MOV CX, 0100H16完成对字单元BUF的内容加1运算,下面错误的指令是( )。(A)MOV CX, BUF (B)MOV BX, OFFSET BUF INC BX INC WORD PTR BX MOV BUF, BX(C)MOV BX, BUF(D)MOV BX,

22、 0 INC WORD PTR BX INC WORD PTR BUF BX17完成对寄存器BX内容的求补运算,下面错误的指令是( )。(A)NEG BX (B)NOT BX INC BX(C)XOR BX, 0FFFFH (D)MOV AX, 0 INC BX SUB AX, BX18判断当AX的内容为负数时,转MINUS执行,下面错误的指令是( )。(A)NOT AX (B)TEST AX, 8000H JNS MINUS JNS MINUS(C)SHL AX, 1 (D)OR AX, AX JC MINUS JNS MINUS19下面指令执行后,正确的结果是( )。MOV AL, 0FE

23、HADD AL, ALADC AL, AL(A)AL=0F8HCF=1 (B)AL=0F8HCF=0 (C)AL=0F9HCF=0 (D)AL=0F9HCF=120现有数据存储如下图所示:设AL=01H,BX=0100H,DX=3000H,执行换码指令XLAT后正确的结果是( )。30100H40H30101H79H30102H24H30103H30H(A)AL=00H(B)AL=40H(C)AL=01H(D)AL=79H二、填空题(本大题共6小题,每空1分,共14分)18086CPU允许的最大存储空间为 ,其地址编号从 到 H。2汇编语言是一种面向 的语言。完成将汇编语言源程序翻译成机器语言

24、目的程序的翻译程序称 。38086的存储器是分段的,因此存储单元的物理地址是由 和组合 而成的。4标号和变量(名字)均有三种属性,它们是 、 和 属性5判断无符号运算是否溢出,应根据 标志位;而判断有符号数运算是否溢出,应根据 标志位。6在16位存储单元中能存储的最大无符号数为65535,能表示的有符号数的范围是 H到 H。三、简答题(本大题共3小题,每小题3分,共9分)1数据存储示意如下图所示,请用DUP语句写出合适的数据定义伪指令: BUFFER1232341232342选用合适的指令,分别完成下列操作:A)将字变量VARW的偏移地址送BX寄存器;B)将字变量VARW的内容送CX寄存器;C

25、)将字变量VARW的类型值送DX寄存器。3设有数据定义伪指令如下: ORG 2000HARRAYDW 0100H, 0200H, $+2, 0300H, $+2 请画出存储单元数据的存储形式。四、程序分析题(本大题共5小题,每小题6分,共30分)1MOVAX, 00FFHMOVBX, 0FFFFHXORAX, BXNEGAX问:该程序段执行后AX= ,CF= 。2 MOVAX, BXNEGAXADDAX, BX 问:该程序执行后AX= ,CF= 。3 BUFDW0000HLEABX, BUFSTCRCRWORDPTRBX, 1MOVCL, 3SARWORDPTRBX, CL 问:该程序执行后,

26、存储单元BUF的内容为 。4BLOCKDB20H, 1FH, 08H, 81H, 0FFHRESULTDB?START:LEASI, BLOCKMOVCX, SIINCSIMOVAL, SILOP1:CMPAL, SI+1 JNGNEXTMOVAL, SI+1NEXT:INCSILOOPLOP1MOVRESULT,ALHLT问:(1)该程序所完成的功能是 ; (2)该程序循环次数是: 。5 CODESEGMENTASSUMECS: CODESTART:MOVCX, 1MOVBL, 2AGAIN:MOVAL, BLINCBLINC BLADDCX, AXCMPAX, 002AHJBAGAINMO

27、VAH, 4CHINT21HCODEENDSENDSTART问:(1)该程序所完成的功能可用算术表达式表示为 ; (2)该程序完成后CX= 。五、程序填空题(本大题共2小题,每小题6分,共12分)(下列各小题中,每空只能填一条指令)1下面程序完成十进制数3298+4651的运算,并将结果存入SUM单元开始的2个字节单元中,请将程序补充完整。DA1DB98H, 32HDA2DB51H, 46HSUMDB2DUP (?)MOVSI, OFFSET DATLEADI, DAT ADDAL, DI MOVSUM, ALMOVAL,SI+1 DAAMOVSUM+1, ALHLT2下面程序利用DOS系统功

28、能调用,完成将键盘输入的小写字母转换成大写字母后输出显示,直到输入$字符结束。请将程序补充完整。CODESEGMENTASSUMECS: CODEDISPLAYPROCNEARBEGINMOVAH, 01HINT21HJZSTOPCMPAL, aJBSTOPCMPAL, zJASTOP MOVAH, 02HINT21HJMPBEGINSTOP:RETDISPLAYENDPCODEENDS六、程序设计题(本大题共2小题,其中第1小题5分,第人小题10分,共15分)1设在DAT1,DAT2字单元中存放一双字长有符号数,编一程序段,完成求出该双字长数的绝对值后送ABS1和ABS2字存储单元。(本小题

29、5分)2在附加数据段中有一首址为ADDR的没有排序的字数组,数据的第一个字为数组长度,第二个字开始存放数组各元素。在KEY单元存放一要删除的字数据。要求编一完整程序,在数组中查找该数,如果找到该数,将其从数组中删除,并修改数组长度。(本小题10分)试卷一参考答案一、填空题1 D 2 C 3 A 4 B 5 D 6 C 7 D 8 C 9C 10 A 11 B 12 A 13 B 14 B 15 B二、阅读题1.(1)比较DAT与DAT+1单元的内容,小的数放在DAT单元 (2)27H,98H2.BX=2 CX=20 DX=423.Z(X+Y)*8-(X-Y)*2)/16三、程序填空题1. CA

30、LLSUB2 CALL SUB1 AND AL, 0FH MOV SI , AL2. PUSHAXPOPDX四、程序设计题(参考答案,也可以用其它方法)1. DSEGSEGMENTXDB 38HY DB 20HWDB 30HZ DW ? TENDB 10DSEG ENDSCSEG SEGMENTPARAPUBLIC CODE ASSUME CS: CSEG, DS: DSEGSTART:MOVAX, DSEG MOVDS, AX MOVBL, X ADD BL, Y ;先求分母,存于BL MOV AL, W SUB AL, X IMUL TEN ADD AX, 5 IDIV BL MOVZ,

31、AX MOV AL, 0 MOV AH, 4CH INT21HCSEG ENDS END START2.DATASEGMENT BUF1 DB HUIFEHJFKHKFJ LEN1 =$-BUF1 BUF2 DB HUIFEHJFIOIHJ BUF DB LEN1 DUP (?) ;不相同的字符存在BUF开始的缓冲区DATAENDSCODE SEGMENT ASSUME CS: CODE, DS: DATASTART:MOVAX, DATA MOVDS, AX LEADI, BUF1 LEASI, BUF2 MOVCX, LEN1 LEABX, BUF CALLKLL MOVBYTE PTRB

32、X, $ ;在要显示的字符串末尾加$ :显示字符串BUF LEA DX, BUF CALL PRINT MOVAH, 4CH INT 21H;比较2个字符串,将不相同的字符送到BX开始的存储空间,入口参数为2个字符串的偏移地址SI,DI,以及字符串的长度CXKLL PROCAL1:MOVAL, SI CMP DI, AL JE AL2 MOV BX, AL INC BXAL2:INCSI INCDI LOOPAL1 RETKLL ENDPPRINT PROCNEAR ;显示字符串子程序 MOVAH, 9 INT21H RETPRINT ENDPCODE ENDSENDSTART3.在首地址为T

33、AB的数组中按递增次序存放着100个数,试编程将出现次数最多的数以及出现的次数分别存放于变量NUM和COUNT中,并以:COUNT=? 的形式输出COUNT的值(设最多重复次数10)。DATASEGMENTBUFDB 1, 2, 14H, 14H, 14H, 14H, 14H, 15H, 15H, 15H, 17H, 17H, 59H, .LEN = $-BUFNUM DB ?COUNT DB 0MM DB COUNT=, $DATA ENDSCODESEGMENTASSUME CS: CODE, DS: DATA START:MOV AX, DATA MOVDS, AX MOV SI, 0

34、MOV CL, LEN MOV BL, 0AGAIN:MOV AL, BUFSI CMPAL, BUFSI+1 JNE KL1 INCBL ;BL中存放的是当前重复数的个数 MOV BH, AL ;BH中存放的是当前重复的那个数 JMP KL2KL1:CMP COUNT, BL ;重复次数最多的放在COUNT中 JAE L2 MOV COUNT, BL MOV NUM, BH ;保留重复次数最多的那个数 MOV BL, 0 ;要将BL置0, 用于存放下一个重复数;的个数KL2:INCSI LOOP AGAIN INC COUNT ;COUNT中是重复的次数,出现次数;应该是重复次数加1 LEA

35、 DX, MM MOV AH, 9 INT 21H MOV DL, COUNT ADD DL, 30H MOV AH, 2 INT 21H MOV AH, 4CH INT 21H CODEENDSENDSTART试卷二参考答案一、选择题1 C 2 C 3 A 4 C 5 A 6 A 7 A 8 C 9 B 10 C 11 B 12 D 13 D 14 D 15 B 16A 17 A 18 B 19 A 20 D 二、阅读题 1. AX CX (也可以用十进制数表示) 6 7 C 13H 14H 27H 1EH 45H 2. (X+Y)*8-(X-Y)*2)/16 3. YAI*BI,I=18(

36、用中文表示也可以)Y=204三、编程题1.CSEGSEGMENT ASSUME CS: CSEGSTART:MOVAX, DSEG MOVDS, AX MOV BX, 9LP:MOV CX, BXLOP:MOV DL, * MOV AH, 2 INT 21H LOOP LOP MOV AH, 02H MOV DL, 0AH INT 21H MOV DL, 0DH INT 21H DEC BX DEC BX CMP BX, 1 JGE LP MOV AL, 0 MOV AH, 4CH INT 21HCSEG ENDS END START2. DATASEGMENTBUF DB 0, -1, 2,

37、 4, 3, -4, 5, 6, -7, 0RESULT DB 0 ;存放0的个数DATA ENDSCODE SEGMENT ASSUMECS: CODE, DS: DATASTART: MOV AX, DATA MOV DS, AX MOV AL, 0 ;计数0的个数 LEA SI, BUF MOV CX, 10LOP: CMP BYTE PTRSI, 0 JNE AL3 INC AL ;0的个数AL3: INC SI LOOP LOP MOV DL, AL ADD DL, 30H MOV AH, 02H INT 21H MOV RESULT, AL MOV AH, 4CH INT 21HC

38、ODE ENDS END START3.DATA SEGMENT BUF1 DB I AM A STUDENT!, $ LEN1=$-BUF1 BUF2 DB EWFHEFNFN, $ LEN2=$-BUF2 M DB 13, 10, $DATA ENDSCODE SEGMENT ASSUME CS: CODE, DS: DATASTART:MOVAX, DATA MOV DS, AX LEA SI, BUF1 MOV CX, LEN1 CALL CMMP LEA SI, BUF2 MOV CX, LEN2 CALL CMMP MOV AH, 4CH INT 21H;子程序的功能:搜索字符串中

39、是否有N字符,如果有用Y替代,并显示字符串;入口参数为字符串偏移地址SI,字符串长度CXCMMP PROC MOV DX, SI;将要显示的字符串的偏移地址送DX,用于显示字符串。这句应在子程序的开始,因为下面语句会改变SI的值BL1: CMPBYTE PTRSI, N JNZ BL2 MOV AL, Y MOV SI, ALBL2:INC SI LOOP B11 MOV AH, 09H ;显示字符串 INT 21H LEA DX, M INT 21H RETCMMP ENDPCODE ENDS END START试卷三参考答案一、单项选择题1.B 2.C 3.C 4.D 5.B 6.B 7.

40、B 8.C 9.A 10.B 11.D 12.B 13.A 14.B 15.C 16.C 17.D 18.A 19.D 20.D二、填空题1.1MB 00000H FFFFFH2.机器 汇编语言3.段地址 偏移地址4.段属性SEG 偏移地址属性OFFSET 类型属性TYPE5.CF OF 6.8000H 7FFFH三、简答题1. BUFFER DB 2 DUP(1, 2DUP(2, 3), 4)2. A)MOVBX, OFFSET VARW B)MOVCX, VARW C)MOVBX, TYPE VARW3.2000H00H2001H01H2002H00H2003H02H2004H04H200

41、5H20H2006H00H2007H03H2008H08H2009H20H四、程序分析题1.AX=0100H, CF=12.AX=0000H CF=0(当BX=0时), CF=1(当BX不等于0时)3.该程序执行后,存储单元BUF的内容为0F000H,即该程序段完成:-32768/8=-40964.(1)该程序完成的功能是从32个有符号数中找出最小数RESULT单元; (2)该程序的循环次数是1FH(或31)5.(1)该程序所完成的功能可用算术表达式表示为: CX1+23+34+45+56+67;(2)程序运行后CX=6FH(或111)五、程序填空题1.对该程序所要求补充的指令分别是:MOV AL, SI DAA ADC AL, DI+12.CMP AL, $SUB AL, 20HMOV DL, AL六、程序设计题1. START: MOV AX, DAT1 MOVDX, DAT2ORDX, DXJNSNEXTNOTAXNOTDXADDAX, 1ADCDX, 0NEXT:MOVABS1, AXMOVABS1, DXHLT2.DATASEGMENTADDRDW 1275H, 4652H, 0034H, 4CBAH, 1FF0H, KEYDW0034HDATAENDSCODESEGMENTASSUMECS: CODE, DS:DTAT, ES:DATADELU

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!