山东大学2013-2014汇编语言程序设计试题(共3页).doc

上传人:飞****2 文档编号:29978287 上传时间:2022-08-03 格式:DOC 页数:3 大小:43KB
返回 下载 相关 举报
山东大学2013-2014汇编语言程序设计试题(共3页).doc_第1页
第1页 / 共3页
山东大学2013-2014汇编语言程序设计试题(共3页).doc_第2页
第2页 / 共3页
点击查看更多>>
资源描述

《山东大学2013-2014汇编语言程序设计试题(共3页).doc》由会员分享,可在线阅读,更多相关《山东大学2013-2014汇编语言程序设计试题(共3页).doc(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上密封线 密封线 山东大学 2013-2014 学年 一 学期 汇编语言 课程试卷题号一二三四五六七八九十总分阅卷人得分 学院 专业 级 学号 姓名 第 1 页 共 2 页得分阅卷人一、填空(30分)1. 80386处理器有3种工作模式,分别是:_实模式_、_保护模式_、_虚86_。2. (AL)=43H,被看作无符号数时,对应的十进制数是:_67_;被看作带ASCII码时,对应的字符是:_C_;被看作补码表示的带符号数时,对应的十进制数是: 61_。若X补=43H,则X补=_C3H_。3. CPU的标志寄存器中标志位可以分为两大类,其中一类称为状态标志位,另一类称为_

2、控制_标志位。这些标志位中的AF为_辅助进位_标志位,TF为_陷阱_标志位。若(AX)=0E653H,(BX)=009AH,指令ADD AX, BX执行后,PF_0_,OF=_0_。4. 对于无进制标记数字,汇编语言默认_十_进制数,DEBUG默认十六_进制数。5. 设CPU正在执行指令MOV AX,02HBX,此时(CS)=31FFH, (DS)=10E4H, (SS)=21F0H, (IP)=0120H, (BX)=0002H, (BP)=0000H。这一指令目的操作数的寻址方式为_寄存器寻址_;源操作数的寻址方式为寄存器相对寻址,源操作数的段地址为10E4H,偏移地址为_0004H_。下

3、一条即将执行的指令的逻辑地址为0120H,物理地址为_32110H_。6. 80x86系统的I/O地址总线宽度是20位的,所以寻址范围是_1M_,写入端口61H一个字的指令为_IN AX,61H_。7. 指令REP MOVSW执行过程中,使用了两个段寄存器DS和ES_,还使用了标志位_DF_确定字符串处理方向,另外,寄存器_CX_作为计数器。8. 对于RET指令来说,如果其属于NEAR属性的子程序,则从栈顶弹出一个字到寄存器_IP_;如果其属于FAR属性的子程序,则还需要从堆栈弹出一个字到寄存器_CS_。对于IRET指令来说,除了需要恢复前面两个寄存器,还需要从堆栈弹出一个字到寄存器FLAGS

4、。得分阅卷人二、阅读分析(20分)阅读分析部分假设已有如下数据段定义:DATASEGMENGV1DW1,2,3V2DW10 DUP(4)DATAENDS1、如下程序段,每条指令执行后(连续执行),AX寄存器的内容是什么?(1). MOVAX,V1+4;(AX)_0003H_(2). XORAX,AX;(AX)_0000H_(3). NOTAX;(AX)_0FFFFH_(4). MOVAX,TYPE V2;(AX)_0002H_(5). MOVAX,V2V1;(AX)0006H_2、下列语句是否正确?错误的说明原因或改正(1). MOVCX,($V1)/2;_(2). ADDCS,BX;_错,C

5、S不能为目的寄存器_(3). MOVV1,V2;错,两个操作数不能都是存储器操作数_(4). MOVDS,1000H;错,立即数不能直接传给段寄存器(5). RET3;_正确3、设下面是一个程序段,请填充其中的空白。功能:设在ADDR单元存放着Y的地址,下面程序统计Y中“1”的个数,并存入COUNT单元中。(有问题)MOVCX,0MOV BX,ADDR ;MOVAX,BX REP1:TESTAX, 0001H ;JZ EEIT ; JMP SHIFT;INCCXSHIFT:SHR AX,1 ;JMPREP1EEIT:MOVCOUNT,CXRET山东大学 2013-2014 学年 一 学期 汇编

6、语言 课程试卷 学院 专业 级 学号 姓名 密封线 4、阅读下面程序MOVCL,4SHLDX,CLMOVBL,AHSHLAX,CLSHRBL,CLORDL,BL该程序段完成的功能是: 0or0 得分阅卷人三、简答(20分)1. 简述子程序和宏之间的异同。2. 在实模式下,类型1CH的中断向量存放在存储器的哪些单元?其中偏移量在哪些单元?段地址在哪些单元?3. 对于IBM-PC系统而言,CPU与外设之间的信息交换通常包括哪些方式?简要说明这些方式的特点。4. 简述汇编试验中用DEBUG显示、修改内存内容的方法。1. 子程序:优点:模块化,节省内存,可被多次调用,编程效率高。缺点:额外开销(保存返

7、回地址,计算转向地址,传递参 数等)大,增加了执行时间。适用于子功能代码较 长、调用比较频繁的情况。宏调用:优点:参数传送简单,执行效率高。缺点:不节省空间,适用于子功能代码较短、传参较多的 情况。2.70H,71H,72H,73H;70H,71H放偏移量;72H,73H放段地址;3.程序直接方式,程序中断方式,DMA方式4.-u -r 得分阅卷人四、编程(30分)1. 写完整格式程序,功能:输入单个字符,如果是数字字符(09),则显示字符串“numeric”,否则显示字符串“nonnumeric”。2. 写子程序,功能:十进制显示BL寄存器中的无符号数。3. 写宏定义,功能:对数组求和。数组

8、名称BUFFER,COUNT单元存放元素个数,结果存入SUM单元。注:COUNT、BUFFER和SUM作为宏参数,不考虑溢出。data segment mess1 db numeric,13,10,$mess1 db nonumeric,13,10,$data endscode segmentassume cs:code,ds:datamain proc farstart:push dssub ax,axpush axmov ax,datamov ds,axmov ah,01hint 21hsub al,0jb exitsub al,9ja exitmov dx,mess1mov ah,09h

9、int 21hexit: mov dx,mess2 mov ah,09hint 21hretmain endp code ends end start4. 十进制显示BL的无符号数Binidec proc near Mov cx,100d Call dec_div Mov cx,10d Call dec_div Mov cx,1d Call dec_div RetEndpDec_div Mov al,bl cbw Div cx Mov bx,dx Mov dl,al Add dl,30h Mov ah,02h Int 21h RetDec_div endp 5. 宏定义Sum_array marco buffer,count,sum Local arr_sum Mov ax,0Mov bx,0Mov cx,countArr_sum:Add ax,bufferbxInc bxLoop arr_sum Mov sum,axEndm 第 2 页 共 2 页专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁