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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

汇编语言复习.docx

1、汇编语言复习汇编语言考试复习范围:课本的习题:p112(习题三)7-14P140(习题四)6-11相关的习题:1. 以下为用段基址:偏移量形式表示的内存地址,试计算它们的物理地址。 12F8:0100 1A2F:0103 1A3F:0003 1A3F:A1FF2. 自12FA:0000开始的内存单元中存放以下数据(用十六进制形式表示):03 06 11 A3 13 01,试分别写出12FA:0002的字节型数据、字型数据及双字型数据的值。3. 分别指出下列指令中源操作数和目标操作数的寻址方式。 MOV BX,12 MOV AL,128 MOV BX,DX MOV DS,AX MOV VAR,8

2、 MOV 1000H,DX MOV 6BX,CX MOV AX,BXSI MOV TABBPDI,AL4. 在80X86系统中,设(DS)1000H,(ES)2000H,(SS)1200H,(BX)0300H,(SI)0200H,(BP)0100H,VAR的偏移量为0060H,若目标操作数为存储器操作数,请计算目标操作数的物理地址是多少? MOV BX,12 MOV AL,128 MOV BX,DX MOV ES:SI,AX MOV VAR,8 MOV 1000H,DX MOV 6BX,CX MOV BXSI,AX MOV 6BPSI,AL5. 写出以下指令的执行结果: MOV AX,3000

3、H 与 MOV AX,3000H MOV AX,MEM 与 MOV AX,OFFSET MEM MOV AX,MEM 与 LEA AX,MEM6. 指出下列指令的错误: MOV AX,BX MOV AL,1280 MOV BX,9 MOV DS,1000H MOV VAR,BX MOV M1,M2 MOV 6,CX MOV AX,SIDI MOV CS,AX MOV BX,OFFSET VARSI 8. 自BUFFER单元开始连续存放着两个字型数据,编程序求它们的和,并把结果存放在这两个数据之后。9. 写出把首址为BUF的字型数组的第4个字送到AX寄存器的指令,要求使用以下几种寻址方式: 直接

4、寻址方式 使用BX的寄存器间接寻址方式 使用BX的寄存器相对寻址方式10. 设(DS)1000H,(BX)0300H,(SI)0002H,(DI)0100H,自1000:0300单元开始存有以下数据(用十六进制形式表示):12 34 56 78 90 AB CD EF,试说明下列各条指令执行后目标操作数的内容。 ADD BX,12 MOV DX,0300H SUB BYTE PTR BX,8 MOV AX,BXSI MOV CX,5BX MOV DX,4BXSI为非压缩BCD码,完成第15题所要求的操作。11. 编程序使: 使AL的各位变反。 BX寄存器低四位置1。 AX寄存器的低四位清0。

5、使CX寄存器的低四位变反。 用TEST指令测试AL寄存器的位0和位6是否同时为0,若是则把0送DH寄存器,否则把1送DH寄存器。12 下列语句各为变量分配了多少字节? N1 DB 5 N2 DB 123 N3 DB 123 N4 DB 80,?,80 DUP (0) N5 DW 1,2,3 N6 DD 6,100 N7 DD N3 N8 DW N4 N9 DW N4+213 对于第12题,若N1的地址为1470:0000,其后的变量依次连续存放,试给出各变量的偏移量。N7N9变量的值是多少?14 如果定义了如第12题所示的变量,下列指令执行的结果是什么(若语句正确,则给出执行结果;若不正确,说

6、明错误原因)? ADD N1,10 MOV AL,N2 SUB N3,N2 MOV AL,N3+2 LEA DX,N4+2 XOR N5,0FH MOV N4+1,CX AND N1,01234H NUM1 EQU 89ADD NUM1,10 NUM2 EQU 100NUM2 EQU 120 15 假设有下列数据定义语句: M1 DB 10 M2 DW 2345H M3 DD 987865H试写出汇编程序对这些语句汇编后所生成的值(例如M2单元、M21单元的内容)。 16 有以下程序片段,试问汇编后符号L1和L2的值各为多少?BUF1 DB 1,2,3BUF2 DW 5,6,7L1 EQU B

7、UF2L2 EQU BUF2BUF117. 若AX=0ABCDH,BX=7F8FH,CF=1。 求分别执行8086 CPU指令 ADD AX,BX ADC AX,BX SBB AX,BX NEG AX AND AX,BX OR AX,BX XOR AX, BX IMUL BL后,AX寄存器中的内容,18. 指出下列指令中哪些是错误的,并指出错在何处? MOV DL,DX MOV ES,2000H SUB BX,SI ADD AX,BX+CX XCHG DS,2400H DEC 15H IN AL,DX OUT 300H,AX 解答 错,DX不能作为间接寻址的寄存器。 错,立即数不能直接送给段寄

8、存器。 错,两个存储单元间内容不能直接相减。 错,CX寄存器不能作为变址寄存器。 错,不允许段寄存器与存储单元内容进行交换 错,减1指令不能对段寄存器直接操作 对 错,输出指令的地址若是16位,必须用DX间址。19. 下列程序段执行后 AX=?设数据段有: TABLE DW 100,200,300,400 ENTRY DW 3代码段 对DS初始化 MOV BX,OFFSET TABLE MOV SI,ENTRY MOV AX,BX+SI20. 若SS=1000H,SP=2000H,AX=1234H,BX=5678H,FR=2115,试说明执行指令 PUSH AX PUSH BX PUSHF P

9、OP CX POP DX之后,SP=? SS=? CX=? DX=? 并画图指出堆栈中各单元的内容。解答: SS=1000H SP=1FFEH CX=2115H DX=5678H 栈中各单元内容如下所示: 地址RAM11FFAH211511FFCH567811FFEH123412000H21、读下列程序段:写出; (1)每条指令连续执行后,哪些寄存器发生变化?内容是什么? (2)程序段执行完后,BX寄存器的肉容是什么? MOV BX,3F93H MOV CL ,4ADD BX ,CLMOV AL ,BLAND AL ,0FH0R AL ,30H程序编写及程序填空:1)修改例2-1程序,输出传送

10、到目的缓冲区dbuffer中的字符串。 修改提示: DS应指向附加段 dbuffer中的字符串应加字符串结束符$ 执行DOS功能调用的9号子功能输出dbuffer中的字符串 (2)写程序,输出演示系统的欢迎词,输出格式的最低要求如下: * * * * 英文(中文)欢迎词 * * * * 提示:通过编写与调试该程序,掌握两段结构的程序设计、输出数据的格式编排(由ASCII码0AH和0DH控制换行和回车操作)、DOS功能调用,熟悉宏汇编程序调试的上机过程。(3)编程计算3550H-2320H,按16进制输出计算所得的差1230H。再输出3550H-2321H的差,检验程序的正确性。提示:考虑依次将

11、1230H(即0001 0010 0011 0000B)从高位到低位,每4位二进制数一组分离出来,再将4位二进制数转换为ASCII码,利用DOS系统功能调用的2号子功能输出,就得到16进制数据的输出效果。本题要求综合应用移位操作、逻辑操作等指令,并利用条件转移指令实现简单的循环程序, 6.4 实习题(1)编程完成在一个源字符串中搜索子字符串的功能(要求使用串比较指令cmpsb进行各次搜索),并输出搜索结果。提示:例如,源串为:How are you?子串为:are搜索方法如下: 源串中含有子串are时,搜索过程如图3.1所示。Howareyou?源串are第一次搜索are第二次搜索are搜索到

12、子串,搜索结束图3.1 源串中含有子串时的搜索过程 源串中不含子串arr时,搜索过程如图3.2所示。Howareyou?源串arr第一次搜索arr第二次搜索arr最后一次搜索,搜索结束图3.2 源串中不含子串时的搜索过程每一次搜索用repz cmpsb 指令完成。第一次搜索时,寄存器SI指向源串,寄存器DI指向子串,每搜索一次,SI指向源串的下一个字符,DI总是指向子串起点,然后进行两串比较,串比较的长度为子串长度。在整个搜索操作中,最多搜索的次数为:源串长度-子串长度+1。程序基本流程如图3.3所示。(2)编程实现从键盘输入学生分数等级:、,统计每种分数等级的人数并求平均成绩(要求用跳转表实现程序分支),输出统计结果,要求输出信息意义清楚。提示:实现所要求功能的程序流程如图3.4所示,当键入ESC键时结束成绩输入,ESC键的ASCII码为27(十六进制1BH)。 图3.4 统计成绩程序流程图(3)编程实现一维数组的排序操作。要求:主程序准备待排序的数据,调用子程序进行排序。子程序接收3个参数:数组名、数组长度、排序标志(=1:从大到小排序;=2:从小到大排序)。子程序根据主程序由寄存器传递的排序标志,对指定数组从大到小或从小到大排序。提示:程序流程如图3.5所示。图3.5 排序程序流程图(4)编写一个程序,完成自然数1到100的求和运算。

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

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