收藏 分销(赏)

汇编语言程序设计A卷.doc

上传人:二*** 文档编号:4812187 上传时间:2024-10-13 格式:DOC 页数:4 大小:24.04KB
下载 相关 举报
汇编语言程序设计A卷.doc_第1页
第1页 / 共4页
亲,该文档总共4页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、汇编语言程序设计A卷2011级 汇编语言程序设计 课程试题(A卷) 题号分数 一 二 三 四 五 六 七 总分 合分人: 复查人: 分数 一、填空题(每空1分,共15分) 1用汇编语言书写的程序叫做 ,MASM要求该文件的扩展名是 ,编写32位Windows应用程序应选择 存储模型。 2汇编语言语句有两种,分别是 和 。3除外设数据外的数据寻址方式有3类,分别称为 、 和 寻址。 4进行Windows应用程序开发时,需要 库文件,执行该应用程序时,则需要对应的 库文件。 5汇编语言与C和C+语言有两种混合编程方法,分别是 和 。 6IA-32处理器有 个32位通用寄存器,有 个段寄存器,段寄存

2、器都是 位的。 分数 二、判断题(每题1分,共10分) 1Windows的模拟DOS环境与控制台环境是一样的。 ( ) 2“TYPE DX”的结果是一个常量,等于2。 ( ) 3数据扩展的基本原则是位数加长,数值大小不变。 ( ) 4指令的相对寻址都是近转移。 ( ) 5JA和JG指令的条件都是“大于”,所以是同一个指令的两个助记符。 ( ) 6CALL指令的执行必然影响堆栈指针ESP。 ( ) 7在宏定义中,LOCAL伪指令声明标识符;而在过程定义中,LOCAL伪指令用于分配局部变量。 ( ) 8指令“OUT DX,AX”的两个操作数均采用寄存器寻址方式。 ( ) 9MASM32软件包既支持

3、32位图形界面应用程序的开发,也支持控制台应用程序开发。 ( ) 10程序终止执行也就意味着汇编结束,所以两者含义相同。 ( ) 共 7 页 第 1 页 评卷人 评卷人 三、按下面要求写出相应的数据定义语句或汇编指令(变量名可任意指定)(每小题2分,共12分) 1 定义字符串变量:assembly language 2 定义20个未赋值的字变量 3 定义符号常量str,表示字符串assembly language 4 定义用十六进制数表示的双字变量:20 分数 评卷人 5 用寄存器EBX和ESI的基址变址寻址方式把存储器的一个双字与EAX寄存器的内容 相加,并把结果送回存储器中。用一条汇编指令

4、完成该功能。 6 用一条汇编指令实现将寄存器EAX和标志位CF、OF同时清零。 分数 四、程序分析与阅读题(共 28分) 1根据数据段定义的变量,分析下列指令的运行结果并填在空格里(每空1分,共8分) .data array qword 1234567887654321h .code mov eax,dword ptr array ;EAX= _ mov ebx,dword ptr array+4 ;EBX= _ sub al,bl ;EAX= _,CF= _,OF= _ ;ZF= _,SF= _ PF= _ 2指出如下语句的错误,并改正(其中var1和var2是两个双字变量)(每小题2分,共

5、8分) add eax,bx mov var1, var2 共 7 页 第 2 页 评卷人 push al mov ebx,100 3有如下程序片断,请使用一条指令实现该程序段所完成的功能(每小题2分,共4分) mov eax,ebx mov ebx,edi mov edi,eax _ mov al,esi mov edi,al inc esi inc edi _ 4如下程序段实现在一个已知长度(长度为count)的串string中查找是否存在子串bug的功能,如果找到则显示“Y”,否则显示“N”。请在空白处填上恰当的语句。(每空2分,共8分) mov ecx,count mov edi,of

6、fset string L1: mov esi,offset bug push edi mov edx,sizeof bug LN: mov al,esi _ jne L2 inc esi inc edi _ jne LN pop edi mov al,Y _ L2: pop edi _ loop L1 mov al,N L3: call dispc 共 7 页 第 3 页 分数 五、编程题:(共35分) 评卷人 1(5分)将调用字符串输入子程序readmsg编写成一个宏readstring,其中宏的参数是输入缓冲区的名称msg,实际输入字符的个数存入ecx寄存器中。 子程序名 READMSG

7、 参数及功能说明 入口参数:EAX=缓冲区地址 功能说明:输入一个字符串(回车结束) 出口参数:EAX=实际输入的字符个数(不含结尾字符0) 共 7 页 第 4 页 2(8分)编程直接调用Windows控制台API函数显示“Hello,Assembly! ”。控制台API函数位于动态连接库KERNEL32.DLL中,标准输出句柄值:-11,常用函数说明如下: VOID ExitProcess( DWORD uExitCode ); HANDLE GetStdHandle( DWORD nStdHandle ); WriteConsole参数 第一个:控制台输出句柄实例 第二个:指向字符串的指针、即缓冲区地址 第三个:指明字符串长度 第四个:指向一个整数变量,返回实际输出的字符数 第五个:保留,设置为0 共 7 页 第 5 页 / exit code for all threads /input,output,or error device 4 / 4

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服