ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:20.05KB ,
资源ID:3666332      下载积分:2 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3666332.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(汇编语言程序设计试题及复习资料合集.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

汇编语言程序设计试题及复习资料合集.docx

1、汇编语言程序设计试题及复习资料合集汇编语言程序设计试题及答案1对于有符号的数来说,下列哪个值最大(D)A:0F8H B:11010011B C:82 D:123Q 2下列有关汇编语言中标号的命名规则中,错误的是(D)A:通常由字母打头的字符、数字串组成B:标号长度不能超过31个字符C:?和$不能单独作为标号D: 号不可位于标号首 38088/8086存储器分段,每个段不超过(D ) A.64K个字 B.32K个字节 C.1兆个字节 D.64K个字节 4寻址指令MOV CX, BX + DI + 20使用的是哪一种寻址方式(B)A:寄存器寻址 B:相对基址变址寻址C:变址寻址 D:基址变址寻址5

2、若AX= - 15要得到AX=15应执行的指令是(A ) A.NEG AX B.NOT AX C.INC AX D.DEC AX 68086/8088系统执行传送指令MOV时( A) A.不影响标志位 B.影响DF方向标志 C.影响SF符号标志 D.影响CF进位标志 7.若要求一个操作数中的若干位维持不变,若干位置“1”,可以使用(B)A:NOT B:OR C:AND D:XOR 8下列指令中段默认为堆栈段的是( C) A.MOV AX,BX+SI+10 B.ADD AX,ES:SI C.SUB BX,BPDI D. MOV DX,1000H9关于8086/8088微机系列,下列说法哪个是正确

3、的(D)A:一个存储单元由16个二进制位组成,简称字。B:当存储一个字数据时,低字节放高地址位,高字节放低地址位。C:在内存空间中,可以无限分配段,且段的大小不受限制。D:段与段之间可以邻接,也可以重叠。 10下列关于堆栈的说法,错误的是(D)A:以“先入后出”为原则。B:栈区最高地址单元的前一个单元为栈底。C:运行中SP寄存器动态跟踪栈顶位置。D:压栈和弹出都是以字节为单位。11表示过程定义结束的伪指令是( A) A.ENDP B.ENDS C.END D.ENDM 12BUF1 DB 3 DUP(0,2 DUP (1,2),3) COUNT EQU $BUF1 符号COUNT等价的值是(

4、B) A.6 B.18 C.16 D.9 13下列标志位中,可以用来判断计算结果正负的是(B)A:PF B:SF C:DF D:OF14下列指令正确的是( CD) A. MOV 100H, BX B.MOV DS, ES C. ADD VBX, CX D.MOV AX, 34H 15下列哪个寄存器是属于指针寄存器(C)A:SI B:DX C:SP D:ES 二、填空题 (每小题4 分,共 20 分)1 下列程序段求数组FLD的平均值,结果在AL中。请将程序填写完整(不考虑溢出)FLD DW 10, -20, 30, -60, -71, 80, 79, 56_LEA SI,FLD_ MOV CX

5、, 8XOR AX, AXR1:_ADD AX ,SI_ ADD SI, 2LOOP R1MOV CL, 8IDIV CLHLT2MOV AX, 1090HSUB AX, 4AE0HJC L1JO L2JMP L3上述程序执行后AX=_C5B0_,程序转向_L1_3假设寄存器AX=1234H,DX=0A000HMOV BX, 0MOV CX, BXSUB CX, AXSBB BX, DXMOV AX, CXMOV DX, BX上述程序段执行后AX=_0EDCCH_ ,DX=_5FFFH_4MOV AX, 234H MOV CL, 3 ROL AX, CL DEC AX MOV CX, 4 MU

6、L CX 此段程序执行完后,(AX)= _467CH_ , (CX)= _4_ 5DA1 DB 83H,72H,61H,94H,5AH MOV CX,WORD PTR DA1 AND CX,0FH MOV AL,DA1+3 SHL AL,CL 上述指令序列执行后,AL=_0A0H_,CL=_03H_。三、简答题 (每小题4 分,共 20 分)1如TABLE为数据段中0100单元的符号名,其中存放的内容为0FF00H,试问以下两条指令有什么区别?指令执行后,AX寄存器的内容是什么? MOVAX,TABLEMOVAX,OFFSETTABLE2对于下面的数据定义TAB1DW10DUP(?)TAB2D

7、B10DUP(?)TAB3DB1234MOVAX,SIZETAB1MOVBL,SIZETAB2MOVCL,SIZE TAB3三个寄存器中值分别为多少?4已知某个人计算机0000:00800000:00B0区域的内容如下:0000:0080 CC A1 C8 00 80 89 A8 98 65 43 35 23 12 45 C4 000000:0090 A4 78 98 56 90 00 00 78 49 03 28 B7 B8 9C A2 B80000:00A0 CC A1 C3 00 80 89 A8 98 65 43 35 23 12 45 C4 000000:00B0 2A 1B C8

8、04 00 33 11 23 DC 41 54 BB 90 45 33 01试求执行软中断指令INT 23H时,系统将转移到哪里进入中断服务程序。5试计算逻辑地址4017:000A,4015:0002A和4010:0007A对应的物理地址。这三个物理地址说明了什么问题?四、编程题 (每小题30 分,共 30分)1试编制一程序,统计DT_W字数组中正数、负数和0的个数,并分别保存在C1,C2和C3变量中。汇编语言程序设计试题及答案一 名词解释(本大题共5小题,每小题3分,共15分)试解释下列名词的含义。1 逻辑地址:逻辑地址由两个16位的地址分量构成,其中一个为段基值,另一个为偏移量,两个分量均

9、为无符号数编码。物理地址=段基值16+偏移量2 物理地址:CPU通过地址总线向外发送的20位地址,在访问内存单元前,CPU必须先将CPU内部的逻辑地址转换为物理地址。3 标志寄存器:标志寄存器(Flag Register)又称程序状态字(Program Status Word),是8086/088中唯一按位操作的寄存器,该寄存器为16位,有效的标志位共9位。其中,CF,PF,AF,ZF,SF,OF为状态标志,用于反映最近一次影响标志位的算术或逻辑运算中运算过程、运算结果的一些性质;TF,IF,DF为控制标志,用于控制CPU对某些特定事件的处理方式以及CPU的工作模式。4 存储器寻址方式:发生在

10、指令的执行周期,需要在执行周期内单独启动总线操作来完成。比寄存器寻址、立即数寻址速度都慢。5 补码:计算机系统内部用于表示带符号数的一种编码,正整数的补码为其真值本身,负整数的补码为其真值变反加1的结果。二 计算题(本大题共5小题,每小题4分,共20分)试按照各小题的要求给出计算结果。1 将十进制数100分别转换为二进制、十六进制数,它们的表示形式分别为多少?解:二进制为 01100100B,十六进制为64H。2 假设(DS)=0B00H,(BX)=0210H,对于指令MOV DS:120HBX,AL,其目的操作数的物理地址为多少?解:EA=(BX)+0120H=0330H,物理地址=(DS)

11、*16+EA=B330H3 假设(BX)=0210H,(DI)=0060H,对于指令ADD DL,BXDI,其源操作数的偏移量为多少?解:偏移量=(BX)+(DI)=0270H4 假设当前(SP)=0060H,连续执行5条PUSH指令后,(SP)=?解:(SP)=0060H 5*2 =0060H -000AH = 0056H5 对于一个十进制数 65,其二进制补码表示形式为多少?解:先求二进制真值-01000001,变反加一补码为10111111三 排错题(本大题共4小题,每小题5分,共20分)每小题列出了一条指令,判断该指令有无语法错误,如果存在语法错误,请指出具体的错误原因,判断正确给2分

12、,分析正确给3分,判断错误不给分。1 PUSH 5588H 错误,操作数不能用立即数;2 MOV DS, 1720H 错误,MOV指令不能对段寄存器直接传送立即数;3 ADD AX, CL 错误,寄存器长度不匹配;4 AND AX,DX 错误,DX不用于存储器寻址。四 程序分析题(本大题共6小题,每小题5分,共30分)每小题列出了一段小的程序片段和相关存储单元的初始值,请按题目的要求分析各程序片段的运行结果。(寄存器中的内容请使用十六进制形式给出)1 阅读如下程序片段MOV AL,4CHMOV BL,0B5HADD AL,BL执行上述程序片段后,(AL)= 01H (1分),(BL)= 0B5

13、H (1分),CF= 1 (1分),OF= 0 (1分),PF= 0 (1分)2 阅读如下程序片段MOV AL,0F3HMOV DL,0C4HADD AL,DLAND AL,0FH执行上述程序片段后,(AL)= 07H (1分),(AF)= 不确定 (1分),CF= 0 (1分),OF= 0 (1分),PF= 0 (1分)3 阅读如下程序片段MOV AL,7EHMOV CL,04HROL AL,CL执行上述程序片段后,(AL)= 0F9H (2分),(CL)= 04H (1分),CF= 1 (1分),OF= 无意义 (1分)4 阅读如下程序片段MOV AX,0632HMOV BX,0C202H

14、SUB AX,BXINC AX执行上述程序片段后,(AX)= 4431H (2分),(CF)= 1 (2分),OF= 0 (1分)5 阅读如下程序片段,假设(DS)=0100H,字节单元(01024H)=56H,字节单元(01025H)=28HMOV BX,0024HLEA BX,BXOR BX,0ADC BX,BX执行上述程序片段后,(BX)= 287AH (3分),(CF)= 0 (2分),OF= 0 (1分)6 阅读如下程序片段,假设(SP)=0064HMOV AX,0001HMOV BX,0002HPUSH AXPUSH BXPOP AXPOP BX执行上述程序片段后,(AX)= 00

15、02H (2分),(BX)= 0001H (2分),(SP)= 0064H (1分)五 程序设计题(本大题共2小题,第一小题7分,第二小题8分,共15分)1 试编写一程序片段,实现BL高4位与低4位相互交换(7分)解:MOV CL,4; ROL BL,CL2 试编写一程序片段,不使用乘除法指令,实现(AX)*5+14)/ 2的功能(AX中的数据理解为补码)(8分)解:MOVBX,AX MOVCX,2 SAL AX,CX ADD AX,BX ADD AX,14SAR AX,1 汇编语言程序设计试题及答案六 名词解释(本大题共5小题,每小题3分,共15分)试解释下列名词的含义。6 寄存器:计算机系

16、统内,位于CPU内部的存储单元,CPU访问此类存储单元不需要使用总线。7 物理地址:CPU通过地址总线向外发送的20位地址,在访问内存单元前,CPU必须先将CPU内部的逻辑地址转换为物理地址。8 段基值:逻辑地址的一个组成部分,用于指示一个段在内存中的起始地址。9 寻址方式:指令获取操作数的方式。10 补码:计算机系统内部用于表示带符号数的一种编码,正整数的补码为其真值本身,负整数的补码为其真值变反加1的结果。七 计算题(本大题共5小题,每小题4分,共20分)试按照各小题的要求给出计算结果。6 将十进制数100分别转换为二进制、十六进制数,它们的表示形式分别为多少?答案:二进制为 011001

17、00B,十六进制为64H7 假设(DS)=0C00H,(BX)=0210H,对于指令MOV DS:100HBX,AL,其目的操作数的物理地址为多少?答案:EA = (BX)+0100H = 0310H,物理地址 = (DS)*16 + EA = 0C000H + 0310H = 0C310H8 假设(BX)=0100H,(SI)=0020H,对于指令ADD DL,BXSI,其源操作数的偏移量为多少?答案:EA = (BX)+(SI)+ 0 = 0120H9 假设当前(SP)=0060H,连续执行5条PUSH指令后,(SP)=?答案:每执行一条PUSH指令,(SP)被减2,因此执行5条PUSH指

18、令后,(SP)=0060H 5*2 =0060H -000AH = 0056H10 对于一个十进制数 80,其二进制补码表示形式为多少?答案:首先求得二进制真值为 01010000B,负数补码为变反加1的结果,即 10110000B八 排错题(本大题共4小题,每小题5分,共20分)每小题列出了一条指令,判断该指令有无语法错误,如果存在语法错误,请指出具体的错误原因,判断正确给2分,分析正确给3分,判断错误不给分。5 MOV CS, 0600H参考答案:错误,不能使用MOV指令传递立即数给CS6 PUSH 074CH参考答案:错误,单操作数指令不能使用立即数7 ADD AX, CL参考答案:错误

19、,寄存器长度不匹配8 OR BX,CX参考答案:错误,CX不能用于存储器寻址九 程序分析题(本大题共6小题,每小题5分,共30分)每小题列出了一段小的程序片段和相关存储单元的初始值,请按题目的要求分析各程序片段的运行结果。(寄存器中的内容请使用十六进制形式给出)7 阅读如下程序片段MOV AL,4CHMOV BL,86HADD AL,BL执行上述程序片段后,(AL)= 0D2H (1分),(BL)= 86H (1分),CF= 0 (1分),OF= 0 (1分),PF= 1 (1分)8 阅读如下程序片段MOV AL,0F3HMOV DL,0C4HADD AL,DLAND AL,0FH执行上述程序

20、片段后,(AL)= 07H (1分),(AF)= 不确定 (1分),CF= 0 (1分),OF= 0 (1分),PF= 0 (1分)注意:逻辑运算指令中,除NOT指令外,CF、OF均置0,AF为不确定9 阅读如下程序片段MOV AL,6FHMOV CL,04HROL AL,CL执行上述程序片段后,(AL)= 0F6H (2分),(CL)= 04H (1分),CF= 0 (1分),OF= 不确定 (1分)注意:移位指令中,当指令的移位次数大于1时,OF为不确定10 阅读如下程序片段MOV AX,0632HMOV BX,0C202HSUB AL,BLSBB AH,BHINC AX执行上述程序片段后

21、,(AX)= 4431H (2分),(CF)= 1 (2分),OF= 0 (1分)注意:INC指令不影响CF标志位11 阅读如下程序片段,假设(DS)=0100H,字节单元(01024H)=56H,字节单元(01025H)=28HMOV BX,0024HLEA BX,BXAND BX,0FFHADC BX,BX执行上述程序片段后,(BX)= 287AH (3分),(CF)= 0 (2分),OF= 0 (1分)12 阅读如下程序片段,假设(SP)=0064HMOV AX,0001HMOV BX,0002HPUSH AXPUSH BXPOP AXPOP BX执行上述程序片段后,(AX)= 0002

22、H (2分),(BX)= 0001H (2分),(SP)= 0064H (1分)一十 程序设计题(本大题共3小题,每小题5分,共15分)(注:不是唯一答案)3 试编写一程序片段,实现BL高4位与低4位相互交换(5分)参考解答:MOV CL, 4ROL BL, CL4 试编写一程序片段,不使用乘除法指令,实现(AX)*5+14)/ 2的功能(AX中的数据理解为补码)(5分)参考解答:MOV BX, AXMOV CL, 2SAL AX, CLADD AX, BXADD AX, 14SAR AX, 15 试编写一完整程序,实现88242567H与0A435C218H两个32位无符号数相加的功能。(要

23、求编写完整源程序,含程序框架)(5分)参考解答:DATA SEGMENTVAR1 DD 88242567HVAR2 DD 0A435C218HVAR3 DD ?DATA ENDSSTACK1 SEGMENT STACK DW 40H DUP(0)STACK1 ENDSCODE SEGMENTASSUME CS:CODE, DS:DATA, SS:STACK1BEGIN: MOV AX, DATA MOV DS, AX MOV AX, VAR1 ADD AX, VAR2 MOV VAR3, AX MOV AX, VAR1+2 ADC AX, VAR2+2 MOV VAR3+2, AX MOV AH, 4CH INT 21HCODE ENDSEND BEGIN

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1