《2010-2011汇编语言期末试卷A及答案.doc》由会员分享,可在线阅读,更多相关《2010-2011汇编语言期末试卷A及答案.doc(8页珍藏版)》请在金锄头文库上搜索。
1、 装 订 线 课程_班级_姓名_学号_ 密 封 线 安 徽 工 业 大 学 试 题 纸 (一)题号一二三四五六七八九十十一十二十三十四十五十六十七十八十九二十总 分得分20092010学年第一学期期末考试汇编语言试卷(B)一、 填空题(1x27=27分)1、微型计算机系统包括 和 两部分。系统总线包括: 、 、 。2、请将左边的项与右边的解释联系起来(把所选字母放在括号中)。(A)存储器( )保存当前栈顶地址的寄存器(B)SP( )表示计算机执行什么操作的符号(C)控制标志( )控制操作的标志,如DF、TF等。(D)段地址( )存放指令机器码的存储器段区(E)代码段( )存储程序、数据等信息的
2、记忆装置(F)标号( )将汇编语言程序翻译成机器码程序的实用程序(G)汇编程序( )是逻辑段的起始地址(H)助记符( )指出指令在程序中位置的符号地址3、汇编语言源程序的上机调试过程包括 、 、 、 。4、8086CPU把1MB存储器分成若干逻辑段,段不能起始于任意地址,必须位于 个字节的边界上。每个段最大为 字节,8086cpu中设置了4个寄存器用来存放逻辑段的段地址,它们是: 、 、 、 。5、已知逻辑地址得到物理地址的计算方法为 。6、在debug中显示寄存器内容的命令为 ,修改内存单元数据的命令为 ,单步执行的命令为 。二、 单选题(29=18分)1、下列哪个是汇编语言的特点:( )A
3、、面向问题 B、可以直接控制硬件C、可以方便地移植D、便于实现复杂算法2、将字变量BUF的内容送入SI的正确指令是( )A、mov si,buf B、mov si,bufC、mov offset buf,si D、mov si,offset buf 装 订 线 课程_班级_姓名_学号_ 密 封 线 安 徽 工 业 大 学 试 题 纸 (二)3、设(BL)=0aH,要使结果(BL)=05H,应执行指令是 。0000 1010 0000 0101A、AND BL,0FHB、NOT BLC、OR BL,0FH D、XOR BL,0FH4设SP初值为3050H,执行指令Pop BX后,SP的值是()A
4、304FHB304EHC3052HD3051H5设AL=57H,BL=24H,执行指令ADD AL,BL后,寄存器内容为(D)AAL=7BH,BL=0BAL=57H,BL=24HCAL=24H,BL=7BHDAL=7BH,BL=24H 61111、已知BX=028AH,SI=0294H,(DS:051EH)=32H,(DS:051FH)=54H。执行语句mov BX,BX+SI后,BX中的内容是(B)A051EHB5432HC1E05HD3254H7、在一连续的存储单元中,依次存放数据42H,41H,44H,43H,46H,45H,可选用的数据定义语句是(C)ADW BA,DC,FEBDW 4
5、142H,4344H,4546HCDW AB,CD,EF DDB 41,42,43,44,45,468、在IBM PC中,一个字为( 16 )位二进制数。A、8位 B、16位 C、32位 D、64位9、在IN AL,PORT指令中,PORT称为( C )。 A. 立即数 B. 有效地址 C.端口地址 D.寄存器名三、简答题(共24分)1、 写出下列竖式的计算结果和状态标志的值,并结合CF、OF解释运算结果。(5分) 0 0 0 0 1 0 0 1 + 0 1 1 1 1 1 0 0 -2、设有宏定义如下: TRAN MACRO N2,N1 MOV AX,N1 MOV BX,N2 MOV N1,
6、BX MOV N2,AX ENDM请将宏调用:TRAN BUF1,BUF2进行宏展开(4分)。 装 订 线 课程_班级_姓名_学号_ 密 封 线 安 徽 工 业 大 学 试 题 纸 (二)3、在DEBUG程序中,一条指令语句表示为3000:0100 ADD AX,7。请问:段地址、偏移地址和物理地址分别为多少?存放段地址和偏移地址的寄存器是哪两个?(4分)4、指出下列指令源操作数的寻址方式:(8分)(1)、MOV AX,BX+DI; (2)、MOV AX,2000H; (3)、MOV AX,ARRAYBXSI; (4)、MOV AX,DI+20H; 5、主程序和子程序之间的参数传递有几种实现方
7、式?(3分)四、程序分析题(共15分)1、分析如下程序:(3分)试回答:(1)程序执行后(A)=( ),(B)=( )。(2)设执行前SP=200H,则执行后SP=( )。data segment A dw 1234h B dw 2345hdata endscode segment assume cs:code,ds:datastart: mov ax,data mov ds,ax push A push B pop B pop A mov ah,4ch int 21hcode ends end start2、假设ES段中有一个字符串12FG3LM5C,其名为ARRAY,下面的程序段执行后CX
8、的值为( )。(2分)cldlea di,es:arraymov al,Lmov cx,9repne scasb3、阅读下列程序段,程序执行到HLT时,(AX)=( ),(BX)=( )。(4分) xor ax,ax mov bx,1 mov cx,6lop:add ax,bx inc bx loop lop hlt 装 订 线 课程_班级_姓名_学号_ 密 封 线 安 徽 工 业 大 学 试 题 纸 (四)4、分析如下程序,试回答:(1)如果从键盘输入字符4,程序输出是什么?(2)此程序段的功能是什么?(6分)data segmentSTRING DB ABCDEFGHIJdata ends
9、code segment assume cs:code,ds:datastart:mov ax,data mov ds,ax MOV AH,01;从键盘输入字符1-9 INT 21H AND AL,0FH DEC AL XOR AH,AHMOV BX,OFFSET STRINGADD BX,AX MOV DL,BX MOV AH,02H;显示输出 INT 21H mov ah,4ch int 21hcode ends end start五、编程题(共15分)1、在以GRADE为首地址的数组中存放着某班某门课30个学生的成绩。试编写一完整汇编语言程序实现:统计小于60分,6089分和大于等于90分的学生人数,统计结果分别存放在LOWNUM、MIDDLENUM和HIGHNUM单元中(10分)2、按照流程图要求编写程序段(5分) 装 订 线 课程_班级_姓名_学号_ 密 封