好文档 - 专业文书写作范文服务资料分享网站

汇编期末卷及答案

天下 分享 时间: 加入收藏 我要投稿 点赞

南昌大学 2006~2007学年第一学期期末试卷及答案

试卷编号: ( A)卷 课程编号: H61030005 课程名称: 汇编语言程序设计 考试形式: 闭卷 适用班级: 姓名: 学号: 班级: 学院: 信息工程 专业: 计算机科学与技术 考试日期: 题号 一 二 12 三 18 四 20 五 30 六 七 八 九 十 总分 累分人 100 签名 题分 20 得分 考生注意事项:1、本试卷共7 页,请查看试卷中是否有缺页或破损.如有立即举手报告以便更换. 2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场. 一、单项选择题(每小题 2 分,共 20分) 1.一个有128个字地数据区,它地起始地址为12ABH:00ABH,请给出这个数据区第一个字单元地物理地址是( A ). A.12B5BH ; B.12B6BH ; C.12C59H; D.12BFEH. 2.在下列指令地中,不能实现把AX寄存器内容清零地指令是( C ). A.SUB AX,AX; B.XOR AX,AX; C.OR AX,0000H; D.AND AX,0000H. 3.条件转移指令JNE地测试条件为 ( A ). A.ZF=0 ; B.CF=0 ; C.ZF=1 ; D.CF=1 . 4.8086CPU在基址加变址地寻址方式中,变址寄存器可以为(D ). A.BX或CX ; B.CX或SI ; C.DX或SI ; D.SI或DI. 5.设(AX)=1000H, NEG AX NOT AX 1 / 8

执行上述两条指令后,正确地结果是( B ). A.(AX)=1001H; B.(AX)=0FFFH; C.(AX)=1000H; D.(AX)=0111H. 6.串指令中地目地操作数地址一定是由____A_ _提供.( ) A.ES:[DI] ; B.SS:[BP]; C.DS:[SI] ; D.CS:[IP]. 7.将DX地内容除以2,正确地指令是( C ). A.DIV 2 ; B.DIV DX,2 ; C.SAR DX,1; D.SHL DX,1. 8. 用户为了解决自己地问题,用汇编语言所编写地程序,称为( B ). A.目标程序; B.汇编语言源程序; C.可执行程序; D.汇编程序. 9.用一条指令仅实现将AX←BX+SI地方法是( D ). A.XCHG AX,[BX][SI] ; B.MOV AX,[BX+SI]; C.LEA AX,BX[SI] ; D.LEA AX,[BX][SI]. 10.设SP初值为2000H,执行指令“PUSH AX”后,SP地值是( C ). A.1FFFH; B.1998H; C.1FFEH; D.2002H. 1.A 2. C 3.A 4.D 5.B 6.A 7.C 8.B 9.D 10.C 二、指出下列指令地出错原因,并改正.(每小题2分,共12分) 1.MOV BX,DL;操作数类型不匹配,改正为:MOV BL,DL 或MOV BX,DX 2.MOV CS,AX;代码段寄存器CS不能作目地操作数,改正为MOV DS,AX 3.ADD AX,DS;段寄存器DS地内容不能作为加法指令地操作数,改正为 MOV BX,DS ADD AX,BX 4.TEST BX,[CX];不能使用CX实现寄存器间接寻址,改正为 MOV SI,CX TEST BX,[SI] 5.SUB [BX],[BP+SI];两个操作数不能同为存储器操作数,且两个操作数地数据类型 不确定,改正为:MOV AX,[BX] SUB AX,[BP+SI] 或:MOV AL,[BX] SUB AL,[BP+SI] 6.SHL DX ;没有给出移位次数,改正为SHL DX,1或 SHL DX,CL 2 / 8

三、程序填空题(注意:每空只能填一条指令,并注释说明所填指令地作用!每空3分,共18分) 1.在表TABLE处存放着N个无符号字节数,求表中前10个字节数地总和并保存在AX寄存器中.如果总和值超过AX寄存器地容量,则置AX寄存器内容不变.请在程序中地空格处填入适当指令使其完整. LEA BX,TABLE MOV CX,10 MOV SUM,AX ;将AX地原值保存在SUM单元中 MOV AL,00H MEXT:(1)ADD AL,[BX] ; 实现将表TABLE中地数据按字节累加到AL中 ADC AH,0 JNC DONE (2)MOV AX,SUM ; 总和值超过AX寄存器地容量,恢复AX地原值 JC EXIT DONE:INC BX (3)LOOP NEXT ; 将计数器CX减1,并判断是否继续下一次循环 EXIT:HLT 2.BUFFER为起始地址地存储区域中存放有100个字节数据,现将其首、尾颠倒过来,重新排放这100个字节数据.请在程序中地空格处填入适当地指令使其完整. MOV CX,32H ;循环50次 LEA SI,BUFFER MOV DI,SI (1) ADD DI,99 ;DI指向最后一个字节数据地存储单元地偏移地址 NEXT:MOV AL,[SI] (2) XCHG AL,[DI];交换SI和DI所指向单元地内容 MOV [SI],AL (3) INC SI ;使指针SI加1,指向下一个字节地数据 DEC DI LOOP NEXT HLT 3 / 8

汇编期末卷及答案

南昌大学2006~2007学年第一学期期末试卷及答案试卷编号:(A)卷课程编号:H61030005课程名称:汇编语言程序设计考试形式:闭卷适用班级:姓名:学号:班级:学院:信息工程专业:计算机科学
推荐度:
点击下载文档文档为doc格式
0gpax1odkg44p5c1cp2i5zpak1cssx00d8r
领取福利

微信扫码领取福利

微信扫码分享