版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.实 验 报 告 学年 第 学期实 验 课 程汇编语言学 生 姓 名123实 验 项 目条件转移指令学 院计算机科学技术实 验 性 质专业选修课 班 级 学 号实 验 地 点同 组 人 数1第 组实 验 日 期第周 星期 第 节成 绩5环 境 参 数Dosbox-0.74Masm 5.01、 实验目的及要求2、 实验原理、实验内容3、 实验仪器设备及材料4、 操作方法与实验步骤5、 实验数据记录及处理6、 实验结果分析及讨论一、实验目的: 18088指令:JZ,JNZ,JC,JNC,CMP,SHR。 2程序:用字符搜索法确定字符串长度。 3程序:16进制数化为ASCII码的一般方法。二:实验任
2、务1 自编程序:修改实验准备程序(二),使除了以16进制数形式显示内存内容外,还能在其右边显示该16进制码所对应的ASCII字符,07-0D的控制字符用.代替。 源代码:DATA SEGMENT DATA ENDSSTACKS SEGMENT STACKSTACKS ENDSCODE SEGMENT code ASSUME CS:CODE,DS:DATA,SS:STACKSSTART: MOV AX,DATA MOV DS,AX MOVSI,0H MOVBL,10H LOP:MOVDL,SI ;先处理高四位 MOVCL,4H SHRDL,CL;右移四位 CMPDL,0AH;判断是0-9 还是
3、a-f JCJ1;是0-9 跳转 ADDDL,7H;是a-f 要多加7 因为 9为 390h A 为41h 相差7hJ1: ADDDL,30H;以0为基址 MOVAH,2H;输出高四位的ASCII码 INT21H MOVDL,SI;处理第四位 ANDDL,0FH CMPDL,0AH;同上 JCJ2 ADDDL,7HJ2: ADDDL,30H MOVAH,2H INT21H;数值输出完毕 MOVDL,20H;输出一个空格 MOVAH,2H INT21H MOV DL,SI;将数值直接作为ASCII输出 MOV DH,06H;判断是否在07-0d之内 CMP DH,SI JNC J3 MOV DH
4、,0eH CMP SI, DH JNC J3 MOV DL,2EH;在范围内,换成.J3: MOV AH,2H;输出 INT 21H MOVDL,20H;第一个字节处理完毕,输出一个空格 MOVAH,2H INT21H INCSI;内存中下一个字节 DECBL;控制循环次数 JNZLOP;回调结束代码 MOV ax,4C00H INT 21HCODE ENDS END START编译连接:MS-DOS下运行结果:结论:1、可以看到输出了十六进制的字符并在其右边输出了对应的ASCII字符。2、因为是在dos下执行了,数据段地址与debug下不同,所以输出的数据不同,但通过查ASCII表,确定其对
5、应字符正确。2 BUFX、BUFY和BUFZ9是3个有符号的十六进制数,编写一个比较相等关系的程序: 1)如果这3个数都不相等,则显示02)如果这3个数中有两个数相等,则显示13)如果这3个数都相等,则显示2源代码:DATA SEGMENT DATA ENDSSTACKS SEGMENT STACKSTACKS ENDSCODE SEGMENT code ASSUME CS:CODE,DS:DATA,SS:STACKSSTART: MOV AX,DATA MOV DS,AX;将三个数分别存到bh,bl,dh中mov ah, 01hint 21hmov bh, almov dl,20hmov a
6、h,02hint 21hmov ah, 01hint 21hmov bl, almov dl,20hmov ah,02hint 21hmov ah, 01hint 21hmov dh, almov dl,0ahmov ah,02hint 21h;将dl设为字符0 mov dl, 30h cmp bh,bl jnz next1;不相等 inc dl;有两个数相等加一next1: cmp bh,dh jnz next2;不相等 inc dlnext2: cmp bl,dh jnz next3;不相等 inc dl;这两个数相等加一next3: cmp dl,33h;超过二的话,需要重新修改 jb
7、next4 mov dl,32h;改为2next4: mov ah,02h ;输出 int 21hMOV ax,4C00HINT 21HCODE ENDS END START编译连接:MS-DOS下运行结果:结论:1、在dos下执行,从键盘输入字符,可以正确判断三者的相等关系,并输出。2、因为程序调用了21号中断的1号功能可以直接在dos中输入字符,所以没有再用debug调试键入字符。流程图:四、实验步骤1) 用EDIT或其它编辑软件,编写.ASM源程序, 2) 对其进行汇编及连接,产生.EXE文件。3) 对.EXE文件进行调试运行。a. 用DEBUG调试运行。b.键入不同的字符,分别进行调试。c. 在MS-DOS下运行这两个.EXE文件。五、小结1、学会了使用条件转移指令进行程序执行控制,就像c+中的if语句。2、确切地体会到了数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湖北第二师范学院《诗词曲格律训练》2023-2024学年第一学期期末试卷
- 2024居间服务标准合同范本
- 湖北大学知行学院《体育》2021-2022学年第一学期期末试卷
- 湖北大学知行学院《设计法规》2022-2023学年第一学期期末试卷
- 《糖复合物》课件
- 2024合同模板家庭居室装饰装修施工合同
- 小儿紫癜健康教育
- 小儿轮状病毒性肠炎
- 新高考英语|英语阅读推理判断题之推断隐含意义课件-2024届高考英语二轮复习
- 《结构选型》课件
- 人教版高中英语单词表必修二
- 设计阶段监理细则
- 大学物理_电磁场
- 大截面劲性混凝土梁分层浇筑施工工法(附图丰富)_secret(2)
- 《老师》歌词林妙可
- 《我的理想》(课堂PPT)
- 课程设计-正文张紧轮支架-课程设计-机械制造工艺学
- 种子品质检验
- 清洁检查标准及扣分标准
- 新版pep小学英语四上单词默写
- 激情教学法在小学英语教学中的应用_1
评论
0/150
提交评论