1………………………………装………………………………订…………………………………线………………………………课程________________________班级________________________姓名__________________________学号________________________………………………………密………………………………封…………………………………线………………………………安徽工业大学试题纸(一)2009~2010学年第一学期期末考试《汇编语言》试卷(B)一、填空题(1x27=27分)1、微型计算机系统包括和两部分。系统总线包括:、、。2、请将左边的项与右边的解释联系起来(把所选字母放在括号中)。(A)存储器()保存当前栈顶地址的寄存器(B)SP()表示计算机执行什么操作的符号(C)控制标志()控制操作的标志,如DF、TF等。(D)段地址()存放指令机器码的存储器段区(E)代码段()存储程序、数据等信息的记忆装置(F)标号()将汇编语言程序翻译成机器码程序的实用程序(G)汇编程序()是逻辑段的起始地址(H)助记符()指出指令在程序中位置的符号地址3、汇编语言源程序的上机调试过程包括、、、。4、8086CPU把1MB存储器分成若干逻辑段,段不能起始于任意地址,必须位于个字节的边界上。每个段最大为字节,8086cpu中设置了4个寄存器用来存放逻辑段的段地址,它们是:、、、。5、已知逻辑地址得到物理地址的计算方法为。6、在debug中显示寄存器内容的命令为,修改内存单元数据的命令为,单步执行的命令为。二、单选题(2×9=18分)1、下列哪个是汇编语言的特点:()A、面向问题B、可以直接控制硬件C、可以方便地移植D、便于实现复杂算法2、将字变量BUF的内容送入SI的正确指令是()A、mov[si],bufB、movsi,[buf]C、movoffsetbuf,siD、movsi,offsetbuf题号一二三四五六七八九十十一十二十三十四十五十六十七十八十九二十总分得分2………………………………装………………………………订…………………………………线………………………………课程________________________班级________________________姓名__________________________学号________________________………………………………密………………………………封…………………………………线………………………………安徽工业大学试题纸(二)3、设(BL)=0aH,要使结果(BL)=05H,应执行指令是。0000101000000101A、ANDBL,0FHB、NOTBLC、ORBL,0FHD、XORBL,0FH4.设SP初值为3050H,执行指令PopBX后,SP的值是()A.304FHB.304EHC.3052HD.3051H5.设AL=57H,BL=24H,执行指令ADDAL,BL后,寄存器内容为(D)A.AL=7BH,BL=0B.AL=57H,BL=24HC.AL=24H,BL=7BHD.AL=7BH,BL=24H61111、已知BX=028AH,SI=0294H,(DS:051EH)=32H,(DS:051FH)=54H。执行语句movBX,[BX+SI]后,BX中的内容是(B)A.051EHB.5432HC.1E05HD.3254H7、在一连续的存储单元中,依次存放数据42H,41H,44H,43H,46H,45H,可选用的数据定义语句是(C)A.DW‘BA’,‘DC’,‘FE’B.DW4142H,4344H,4546HC.DW‘AB’,‘CD’,‘EF’D.DB41,42,43,44,45,468、在IBMPC中,一个字为(16)位二进制数。A、8位B、16位C、32位D、64位9、在INAL,PORT指令中,PORT称为(C)。A.立即数B.有效地址C.端口地址D.寄存器名三、简答题(共24分)1、写出下列竖式的计算结果和状态标志的值,并结合CF、OF解释运算结果。(5分)00001001+01111100----------------------------2、设有宏定义如下:TRANMACRON2,N1MOVAX,N1MOVBX,N2MOVN1,BXMOVN2,AXENDM3请将宏调用:TRANBUF1,BUF2进行宏展开(4分)。………………………………装………………………………订…………………………………线………………………………课程________________________班级________________________姓名__________________________学号________________________………………………………密………………………………封…………………………………线………………………………安徽工业大学试题纸(二)3、在DEBUG程序中,一条指令语句表示为3000:0100ADDAX,7。请问:段地址、偏移地址和物理地址分别为多少?存放段地址和偏移地址的寄存器是哪两个?(4分)4、指出下列指令源操作数的寻址方式:(8分)(1)、MOVAX,[BX+DI];(2)、MOVAX,2000H;(3)、MOVAX,ARRAY[BX][SI];(4)、MOVAX,[DI+20H];5、主程序和子程序之间的参数传递有几种实现方式?(3分)四、程序分析题(共15分)1、分析如下程序:(3分)试回答:(1)程序执行后(A)=(),(B)=()。(2)设执行前SP=200H,则执行后SP=()。datasegmentAdw1234hBdw2345hdataendscodesegmentassumecs:code,ds:datastart:movax,datamovds,axpushApushBpopBpopAmovah,4chint21hcodeendsendstart2、假设ES段中有一个字符串’12FG3LM5C’,其名为ARRAY,下面的程序段执行后CX的值为()。(2分)cldleadi,es:arraymoval,'L'movcx,9repnescasb3、阅读下列程序段,程序执行到HLT时,(AX)=(),(BX)=()。(4分)xorax,axmovbx,1movcx,6lop:addax,bxincbxlooplop4hlt………………………………装………………………………订…………………………………线………………………………课程________________________班级________________________姓名__________________________学号________________________………………………………密………………………………封…………………………………线………………………………安徽工业大学试题纸(四)4、分析如下程序,试回答:(1)如果从键盘输入字符’4’,程序输出是什么?(2)此程序段的功能是什么?(6分)datasegmentSTRINGDB'ABCDEFGHIJ'dataendscodesegmentassumecs:code,ds:datastart:movax,datamovds,axMOVAH,01;从键盘输入字符1--9INT21HANDAL,0FHDECALXORAH,AHMOVBX,OFFSETSTRINGADDBX,AXMOVDL,[BX]MOVAH,02H;显示输出INT21Hmovah,4chint21hcodeendsendstart五、编程题(共15分)1、在以GRADE为首地址的数组中存放着某班某门课30个学生的成绩。试编写一完整汇编语言程序实现:统计小于60分,60~89分和大于等于90分的学生人数,统计结果分别存放在LOWNUM、MIDDLENUM和HIGHNUM单元中(10分)2、按照流程图要求编写程序段(5分)BX-2?BX2?AXß1AXß0AXß-1YYNN5………………………………装………………………………订…………………………………线………………………………课程________________________班级________________________姓名__________________________学号________________________………………………………密………………………………封…………………………………线………………………………安徽工业大学试题纸(五)………………………………装………………………………订…………………………………线………………………………安徽工业大学试卷封面(20~20学年第学期)课程名称___________________任课教师___________________实考人数___________________装订份数:共_______册本册为第_______册考卷_______份试卷评阅人和审核人签名以下各项在空格内打√或说明1.考试类型:全国统考_____省部统考_____校统考_____院统考_____非统考_____题号一二三四五六七八九十十一十二十三十四十五十六十七十八十九二十评阅人审核人62.试题来源:国家题库_____省部题库_____校题库_____教考分离_____任课教师命题_____3.阅卷方式:考评分离_____流水作业_____任课教师批改_____4.卷面成绩是否作技术处理:是_____否_____,加_____分,减_____分5.考试方式:开卷_____闭卷_____考试_____考查_____6.考试时间:_____年_____月_____日自_____时_____分至_____时_____分7.缓考(缺考)生姓名:__________________________________________________8.违纪生姓名:__________________________________________________________填表人签名:年月日装订人签名:年月日系(教研室)主任签名:年月日2009~2010学年第一学期期末考试《汇编语言》试卷(B)标准答案和评分标准﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉一、填空题(1x27=27分)1、硬件,软件(此两空次序不论),地址总线或AB,数据总线或DB,控制总线或CB(此三空次序不论)2、B,H,C,E,A,G,D,F3、编辑源程序,汇编生成目标文件,连接生成可执行文件,运行或调试可执行文件(简要回答:编辑,汇编,连接,运行或调试也得分)4、16,64K或65536或216,CS,DS,ES,SS(最后四空次序不论)5、段地址X10H+偏移地址或段地址X16+偏移地址或段地址左移四位+偏移地址6、R,E,T二、选择题(2x9=18分)1~5BBDCD6~9BCBC三、简答题(共25分)1、答:7101000010011111010010000(1分)状态标志:CF=0,PF=0,AF=1,ZF=0,SF=1,OF=1(2分)OF=1表明此运算在带符号数意义下发生溢出,结果不正确,即(+9)+(+124)=-133(1分)CF=0表明此运算在无符号数意义下没有发生溢出,结果正确,即9+124=133(1分)2、答:(每条指令1分)Movax,buf2Movbx,buf1Movbuf2,bxMovbuf1,ax3、答:段地址:3000H;偏移地址:0100H。物理地址:30100H。(3分)存放段地址的寄存器是CS。存放偏移地址的寄存器是IP。(2分)4、答:(每小题2分,合计8分)(1)、基址变址寻址;(2)、立即数寻址;(3)、相对基址变址寻址;(4)、寄存器相对寻址。5、(3分)(1)、用寄存器传递参数。(2)、用存储单元传递参数。(3)、用堆栈传