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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

完整版华电微机原理与技术汇编语言题目及答案.docx

1、完整版华电微机原理与技术汇编语言题目及答案一微机原理与接口技术汇编题目(1)数据块传送1、将数据段中2000H单元开始存放的10个数(8位数)传送到3000H开始的10个字节中。2、将数据段DATA1中的10个字数据(16位数)传送到数据段DATA2中。提示:1、指定数据的起始地址:(如果不指定起始地址,则起始地址为0000H)DATA SEGMENT ORG 2000H DB 1,,2,3,4,5,6,7,8,9,10 ; DB定义字节数据 ORG 3000H DB 10 DUP(0); 预留10个单元存放结果,初值预定义为0DATA ENDS定义的内存单元为:地址内容(H)2000H120

2、01H22002H32003H42004H52005H62006H72007H82008H92009H0A2、定义字数据命令 为:DWDATA1 SEGMENT DW 1,,2,3,4,5,6,7,8,9,10 ; DW定义字数据 DATA1 ENDS一个字为两个字节,在内存中低位在前,高位在后。地址(H)内容(H)000001000100000202000300000403000500000604000700000805000900000A06000B00000C07000D00000E08000F0000100900110000120A001300 (2) 查表1、已知015的平方值表,查

3、表求X(X是0到15 间任一数)的平方值,送到Y单元,用两种方法。2、已知0255的平方值表,查表求X的平方值,送到Y单元。提示:0到15的平方表,每个平方值为一个字节;0到255的平方表,每个平方值为2个字节;调试程序,平方表中的数据定义几个就行,目的是程序正确即可。一个字为两个字节,在内存中低位在前,高位在后。(3)计算1、计算多字节数据1122334455667788H与 99AABBCCDDEEFF00H的和。2、计算8字节的BCD码十进制数1122334455667788H与9988776655443322H的和3、计算10个字数据的和(数据自己定义)。提示;1、多字节数据在内存中存

4、放,低位在前,高位在后DAT1 DB 88H,77H,66H,55H,44H,33H,22H,11HDAT2 DB 00H,0FFH,0EEH,0DDH,0CCH,0BBH,0AAH,99H DAT3 DB 9 DUP(0) 地址数据DAT1000088000177000266000355000444000533000622000711DAT20008000009FF000AEE000BDD000CCC000DBB000EAA000F99DAT30010001100120013001400150016001700182、 BCD十进制加法 二进制加法指令: ADD BCD十进制加法: ADD

5、DAA;十进制调整指令,仅对AL作为加法的累加和寄存器进行调整(4)计算表达式的值1 计算表达式的值,已知X=10,Y=5。提示:X DB 10Y DB 5 Z DB ?AL=X-YBL=7AX=AL*BLBH=Y+2AL=AX/BH 的商AH=AX/BH 的余数(5)找最大、最小数1、找出2040H单元和2041H单元的大数,并送2042H单元(数据自己定义)2、找出10个数(8位数)里的最大数(数据自己定义)3、找出10个数(16位数)里的最小数(数据自己定义)(6)统计正数、负数个数1、找出10个数(8位数)里的正数个数(数据自己定义)2、找出10个数(16位数)里的负数个数(数据自己定

6、义)(7)数据块比较1、分别在FARD1和FARD2单元开始存放了10个字节数据,编程比较是否一致(数据自己定义)。2、分别在FARD1和FARD2单元开始存放了10个字数据,编程比较是否一致(数据自己定义)。(8)逻辑运算1、在数据段3000H单元开始存放了数字09的ASCII码,求对应的十进制数字并存放到3500H开始的单元;再将3500H开始的十进制数字转换为对应的ASCII码,存放到3800H开始单元。提示:数字转换方法:例如:数字5的ASCII 为35H(0011 0105B),想办法变为 05H(00000105B),存入对应的单元,然后再将05H(00000105B),变为35H

7、(0011 0105B) 存入对应的单元。DATA SEGMENT ORG 3000H DB 0123456789 ; DB定义字节数据 ORG 3500H DB 10 DUP(?); 预留10个单元存放结果ORG 3800H DB 10 DUP(?); 预留10个单元存放结果DATA ENDS(9)输入输出1、在显示器上输出字符串HELLO!。2、从键盘输入一组字符串,存入到BUFFER数据区(自己定义)中。3、将十进制数25从显示器上输出。4、将数据段中的10个个位数数据从显示器上输出。以上各题做为练习使用!提示:1、显示字符串2、键盘输入一组字符串方法 1 用10号调用,方法2 用1号调

8、用,设置循环次数3、将十进制数25从显示器上输出。想办法把25的十位和个位拆开,再分别变为ASCII,先显示 2 ,后显示 53、将数据段中的10个个位数数据从显示器上输出。从数据段中直接定义10个个位数据,取出数据后,变为变为ASCII,显示二实验过程参考步骤题目1、将数据段中2000H单元开始存放的10个数(8位数)传送到3000H开始的10个字节中。源程序:数据定义DATAS SEGMENT ORG 2000H DATA1 DB 1,2,3,4,5,6,7,8,9,10 ORG 3000H DATA2 DB 10 DUP (0)DATAS ENDSCODES SEGMENT START:

9、 MOV AX,DATAS MOV DS, AX MOV SI, 2000H MOV DI, 3000H MOV CX, 10 NEXT:MOV AL, SI MOV DI, AL INC SI INC DI DEC CX JNZ NEXT MOV AH, 4CH INT 21HCODES ENDS END START运行前内存分布:程序运行前 2000H: 01 02 03 04 05 06 07 08 09 0A 3000H: 00 00 00 00 00 00 00 00 00 00程序运行后 2000H: 01 02 03 04 05 06 07 08 09 0A3000H: 01 0

10、2 03 04 05 06 07 08 09 0A程序调试过程:第一步:输入源程序,如图1所示。 图1 输入源程序第二步:保存源文件(注:保存到自己的目录中)。第三步:将汇编源程序汇编成目标文件:执行菜单中“运行编译成目标文件”命令,若无语法错误,则在下方窗口中显示“编译成功”,如图2所示;若有错误,可根据提示找出错误所在行,改正后,重新执行此命令。图2 将汇编源程序编译成目标文件 图3 将目标文件连接成EXE文件第四步:将第三步生成的目标文件连接成可执行文件:执行菜单中“运行生成可执行文件”命令,若无连接错误,则在下方显示“生成EXE文件成功”,如图3所示 ;若有错误,可根据提示找出错误所在

11、行,改正后,则从第三步开始继续调试。第五步:对生成的EXE文件进行调试,查看结果,步骤如下:(1)执行菜单中的“运行DEBUG调试”命令,打开DEBUG窗口,如图4所示。图4 DEBUG调试窗口(2)输入命令“U”,将EXE文件(二进制机器码)反汇编成汇编程序,如图5所示。其中,最左边一列是代码段中指令的地址,为逻辑地址的形式,其段基址为汇编程序分配,段内偏移地址默认从零开始;第二列为二进制机器码(以十六进制形式显示),与第三列中的汇编语句相对应。查看第三列,找到自己所有的程序,一般到结束语句MOV AH,4CH INT 21H 结束;若没有反汇编完所有的程序,则再执行一个“U”命令,直到所有

12、程序均被反汇编出来。图5 输入命令U对EXE文件进行反汇编,得到汇编程序(3) 应用“G”命令运行程序,G命令格式:G=起始地址 断点地址;起始地址为开始执行指令的地址(若为段内,可只写偏移地址),断点地址为停止执行语句的地址。例如,执行例题代码段内所有程序时,命令可为G=0000 0017,0000为第一条指令的偏移地址,0017为指令MOV AH, 4CH的地址,到此处结束本程序的执行。如图6所示。图6 运行G命令执行程序 运行G命令后,程序即在断点处停止执行,此时显示出CPU内所有寄存器的当前值。若要查看运行后内存单元的值,可应用下面的命令D。(4) 查看结果(A)查看内存单元存放的结果

13、:使用命令D,格式:D 段地址:偏移地址。例如,查看本程序的运行结果,如图7所示。图命令查看内存单元的值其中,段地址和偏移地址均要以实际运行程序的状态来输入。仅记录你的运行程序涉及的内存单元,及涉及到的CPU寄存器内容,不能记录屏幕显示的所有内容(B)其它命令,请查询软件屏幕左边 提示信息() 最后,输入命令Q退出程序。如图所示。图命令退出程序三实验报告格式要求一题目:将数据段DATA1中的10个字数据(16位数)传送到数据段DATA2中1.流程图:2.源程序(要求有完整的数据段、代码段):3.运算前内存分布:4.运算后内存分布:5.连续运行 G= 6.查看结果使用命令:7.记录结果:8.存在

14、问题及体会二计算10个字数据的和(数据自己定义)。三统计10个数(16位数)里的正、负数及零的个数(数据自己定义)。提示:设置寄存器 :计数器 正数个数 负数个数 零的个数10个数的首地址取数据,进行比较,记录到对应的寄存器中四在数据区DAT中存放有15个字数据,请利用冒泡法从小到大进行排列,并将结果存入变量RESULT开始的区域(数据自己定义)。五通过键盘任意输入一个字符串,保存在数据段中STR开始的区域,并统计其中的数字字符、英文字符的个数分别存入变量NUM、ENG中。提示:数字 ASCII码值 是30H到39H英文字符ASCII码值 大写从41H开始,小写从61H开始注意事项:1.上机前应将每题的前2个要求完成,未完成者不得上机,并按缺一次实验成绩记录!2.下机时应将每题的后6个要求补充完整并上交。

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

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