版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、汇编实验部分实验一一)实验目的学会安装“16位汇编程序开发软件”的安装,完成将汇编语言源程序录入进计算机、利用进行汇编,进行链接,并用调试16位程序的全部过程。本实验大家不必了解程序细节,只是为了熟悉开发环境和上机过程。二)实验内容3.写16位汇编程序,从键盘输入一个字符串,然后换行后将该字符串输出到屏幕。1)源程序255?255(?)0,0,"$"回车换行,021h,9h21h,+2h,+1h,0h,2h21h,421h2)运行结果贴图C:、dlubiigsamlTcxcweJiaueagooddayueh也gagoodd&yppogpamterminatedno
2、rma1Lij3)编程与调试心得(遇到的问题和解决的办法,以及获得的收获)一开始写255显示,换成255可以运行0,0,"$";回车换行关键在于获取字符串的长度,会存储在1h中也可在末尾加$'表示结尾。实验二一)实验目的通过这一部分的实验,进一步熟悉汇编过程和调试过程;掌握用汇编语言编写顺序程序。二)实验内容2.写完整程序16位程序,在内存中从开始的10个单元中连续存放0到9的平方值,任给一个0到9的数X,该数存放在内存单元中,用指令查表求X的平方值,并将结果存于内存单元中。编写程序,并在中进行调试和验证结果。(X,,都是内存中的变量)1)源程序.80860,1,4
3、,9,16,25,36,49,64,810,0,"$";回车换行9/16,01H21H,30H;输出回车换行,9h21h,02H21H,421H2)运行结果贴图运行,反汇编至001E,输入值6,查表应为36,即24H(00100100)查为$,图0076A:0030位置即为值(通过对比一开始的存储单元得出)DUSBox0,/4Cpuspeed;rnn2C3OD7HDlbllUDCKLzAL.30LtBieiDX,LttJllJhHfeyZLDL,IW1OAHTez-加凸HX-G6G6-07IjCE3-67HA佔MMEF俶IJX-0024SS-OTiECS-OTTjA1P-O
4、01EHlUBP-6GO0S1-6G6G»-HUUPElPLMSHAreNCAii.ee6H:GO10.6A:3030_?6A:0O4O_?6A:UObWJ?fcAQOTOODoeUH0606nn11CDnn21陋IM00UQODfeW0000qgplIQIGluIQJots&cxmm住to4阳旧财團旳169000GG1*1*001Ne卩件日e)»eC?0a2s広血1100-000-09209yw09丽-CD-el西阳叫的的旧«fe>s>GooGD?IK10DOtX爾GO00.no.I+If-II-+$1SQ3)编程与调试心得(遇到的问题和解决
5、的办法,以及获得的收获)一开始没有注意到输入的是码,应当减去30H数据存储在中可以用查询,学会了使用反汇编和查询存储单元通过输出是码,如9对应的81,即51H,查表恰为Q说明存储正确(可用除10或循环移位的方法,单个数转为十进制数输出)实验三一)实验目的通过本实验,熟练使用字符串的输入、读取与判断,通过实验,可以掌握循环结构的各种实现方法,进一步了解循环结构中初始化部分、循环体部分、循环控制部分的功能以及他们彼此之间的关系。尤其是多重循环中外层循环和内层循环之间的关系。二)实验内容所谓回文字符串是指一个字符串正读和倒读都是一样的,例如字符串就是一个回文字符串,而字符串就不是回文字符串。现在编写
6、完整的16位汇编程序,输入一个字符串,判断该字符串是否为回文字符串,并用“a”或“a'作为输出。1)源程序255?255(?)0,0,"$";回车换行Y"a$"N"a$",021h,9h21h,+1h,0h,2h,1h,0h,2h21h,2h21hIIIIJ,2h21h,9h21hN,09h21H,421h,9h21hY,09h21H,421h2)运行结果贴图sam,exe-gaLccbdf-hbccccbbaaItisNOTapa1iTidromeProgramtermiTiatednormally-ffabmiba陶bbw
7、ItisNOT覆palindromeCA>3)编程与调试心得(遇到的问题和解决的办法,以及获得的收获)本程序存在,如上图当输入时可以将与逐个字对比,发现第三个字符不同转入段提示“a”,而当输入确实为回文时首字母错误,原因实在是查不出来。实验四实验目的熟悉如何在数组中进行查找,并返回是否成功的信息,通过实验,可以掌握循环结构的各种实现方法,进一步了解循环结构中初始化部分、循环体部分、循环控制部分的功能以及他们彼此之间的关系。尤其是多重循环中外层循环和内层循环之间的关系。实验内容2请编写16位完整汇编程序,在一个升序字节数组中查找数N,找到后将此数从数组中删除,并使得0;没找到返回=1。1)
8、源程序.8086'','$'N'n','$',;检测是否读完,0,;检测是否读完,0,1;设置,421h2)运行结果贴图DOSBokU./4.Lpuspeed:3DO0cycles,hrdineskipU.Program:DtB.Lftx-FF6£Bx-eeoocx-mFrDX-6?b>SF-0e£©BP-00003IMD(D5=fi7AD丽二旳価CS=e?fri1IP=aEH3HUIIPFlFL;or?6A:ee33b4CmURH.4GwfaAaatDbaidtr/bexAt*1700-UUA
9、600UHUDJ£tutnbn:w)i0if17Jfttt06J*Zb71MKMF5WJC1«曰1W076A70£0F7帕3A257408A0C-80血4746EBF4B:4©0076触60308©FC©1岀处CD20O61626361656&6768胡i佃24£ECH-讯凹?U醐阳們E幡IDD76R:)e5OFFFTrr74esE9EVCD-C45EFCZESA47ECZA076A10060E440598£C38CC205-GC005259E8Cla83O75A:0P0C40450OD86FAFETO-&
10、#163;O1?7303C4060®B6ZB科鬥PEMCOG:,t,毗fcFIB«aArih!ibf.sbcdefyhjjklnn.I1.rr.,d广氛G严.EFPP石亠Q7A:0C33B44CMDUO'/bA:出、021itrrcrzbn;9t-.j/ADMO7Si'N0C3i1站DB即開;0C3B討DBft5TPhn:(-xv)nhbPR075A:0C3E67DB07!jA:0G3F阴DBL).'.h:(-MHOb'JItHCf33说明0,查找到数N,查看存储单元由'','$',n'变为,$'
11、;,'n'已将数组中的数n删去3)编程与调试心得(遇到的问题和解决的办法,以及获得的收获)运用反汇编得到每个指令的地址,利用断点地址快速让程序运行到特定指令位置,可以方便快捷地排查错误进位标志()(0)实验五实验目的通过本实验,掌握子程序的定义和调用方法。通过程序调试,进一步理解指令和指令的功能,掌握子程序调用时参数传递的方法。实验内容请编写完整16位汇编程序从键盘读取字符,如果是十进制的0'9'则在屏幕上输出该数的8位二进制码,并将数字依次存放到开头的数组中,如果读入的字符是C或者q',则程序退出,其他情况在屏幕上打印“09,'q'
12、39;Q。(如输入的字符是9',则输出“00001001”)提示:输出一个数的2进制形式应该从最高位开始输出。要求打印一个数的2进制形式和输出回车换行分别定义成一个子程序可以将此段程序定义成一个过程。1)源程序.808609','$',02,021H,30HT,9T,02H,8,0,1,30H21HR,09H21HR:1L:,01H21H,'Q','q'L,421h2)运行结果贴图13/16J:>dEbngsam.exek50000016190G0G10G1tyounnistinput09orqjQqProgramtermi
13、natednorma1ly3)编程与调试心得(遇到的问题和解决的办法,以及获得的收获)输入的是码,30H使的转换为数字运用子程序调用可以使主程序看起来更加简洁明了,且易于调试,维护回车换行需注意将压栈,以便调用21h的输出功能0,0,"$";即为回车换行实验六实验目的熟悉如何在数组中进行查找,并返回是否成功的信息,通过实验,可以掌握循环结构的各种实现方法,进一步了解循环结构中初始化部分、循环体部分、循环控制部分的功能以及他们彼此之间的关系。尤其是多重循环中外层循环和内层循环之间的关系。实验内容aN!.:aN(16),aN!,1)源程序.80860,0,'16'
14、;,'$'20H,4(20H),'$',10,4L:,30H,0L0:,30H,'',40,921H,421H,01H21H,30H,07H,0H,1,0,09H21H,421h2)运行结果贴图Cxam.exe_暫6 720Programterminatednormaly-fl22C;、>dnbU5f苔OOLEXE-97youmustinput16Frogrmterminatednorma1ly-S424C:>3)编程与调试心得(遇到的问题和解决的办法,以及获得的收获)一开始输出的十进制数带0,如0720,0002等,后检测为0即赋值
15、20H(空格),发现6!=72,不仅去掉了开头的0,也去掉了末尾的0,将由+1至+4检查,遇到非0的数就退出检测可以解决。实验七实验目的熟悉如何在数组中进行查找,并返回是否成功的信息,通过实验,可以掌握循环结构的各种实现方法,进一步了解循环结构中初始化部分、循环体部分、循环控制部分的功能以及他们彼此之间的关系。尤其是多重循环中外层循环和内层循环之间的关系。实验内容在附加段中有一个从小到大排序的无符号数字数组,其首地址在中,数组的第一个单元存放数组长度。要求用折半查找法在数组中查找数N,假设该数已在中,如找到,0,并在中给出该元素在数组中的偏移地址;如未找到,1。1)源程序.80861,4,7,
16、9,16,31,36,49n1r7l00,0,"$";回车换行,2,0,0,0,1,0,421H2)运行结果贴图使得获查找数字1(),得数组中序号0,即0()=1满足搜索条件,使0(),并用得0()的偏移地址。17/16-q3fAX-G00OBX-0001D3=G76EES=0f?5A0?GA:OO3F3DQOO0-dQ7BA:6660B36E9?BA:6O1OG93A076A:002>BO8BQ?6A:O030AZ100?6A:0GH0000O076A;O05O00©A0?6A:0Q6GBD6FQ76A:OGT70Z961CX-00GCDX-0000SP-
17、GHO0SS=07?GCS=076AIP=OGGFCMPAX.GOOOBP-0000Sl-GGGGDI-0006MUUPElPLHZNAPENCG?%F700B4OD7668BE106(3EB4CZ4ZO2C聊0GFGD5CD6E6131BF7438B421ZO6820DfalElco091E02c9D00-8A02-0674-1480-ECGH-G?ze-zo30-ODQA-2OIE107C0109ZO9AZQGE6065EB10202020ZQ6ABl0G0F90Z4OAZGHD址阳90旳315E737OAOFlEBFO016F75200FB4DE3DQI3AhZ65.*no;subJmP
18、eogramterminatednorma】ly3)编程与调试心得(遇到的问题和解决的办法,以及获得的收获)一开始时忘记将设置成0,结果一直循环C;?,0后恢复正常实验八实验目的熟悉如何在数组中进行查找,并返回是否成功的信息,通过实验,可以掌握循环结构的各种实现方法,进一步了解循环结构中初始化部分、循环体部分、循环控制部分的功能以及他们彼此之间的关系。尤其是多重循环中外层循环和内层循环之间的关系。实验内容在内存中有一个数组,里面是放着10个学生的某科的成绩,分别是:85,73,92,66,91,98,52,87,83,68,请用冒泡排序法将这10个数从大到小排序,并将排序的结果在屏幕上打印出来,要求一个数一行的格式输出。1)源程序.808
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024石材加工行业标准化及质量管理体系合作协议3篇
- 个人向公司借款详细条款合同版B版
- 专业租车协议范本:2024年版
- 2025年度地质勘查测绘合作协议书8篇
- 2024版销售代表奖励提成协议样本一
- 集合2024年度医疗设备采购及安装服务合同
- 2025年度文化旅游项目合作协议补充协议3篇
- 2024精密波纹管订货及销售协议条款版B版
- 2025年度厂房租赁及品牌授权使用合同4篇
- 二零二五年度汽车后市场销售提成及品牌代理协议
- 矿山隐蔽致灾普查治理报告
- 2024年事业单位财务工作计划例文(6篇)
- 副总经理招聘面试题与参考回答(某大型国企)2024年
- PDCA循环提高护士培训率
- 2024年工程咨询服务承诺书
- 青桔单车保险合同条例
- 车辆使用不过户免责协议书范文范本
- 《狮子王》电影赏析
- 2023-2024学年天津市部分区九年级(上)期末物理试卷
- DB13-T 5673-2023 公路自愈合沥青混合料薄层超薄层罩面施工技术规范
- 河北省保定市定州市2025届高二数学第一学期期末监测试题含解析
评论
0/150
提交评论