西安交大汇编实验报告(2)
这个系列是西安交大的汇编课程的两次课内两次实验报告。
汇编语言第二次实验报告
计算机11班 2110505018 司默涵 2013年5月25日
这个系列是西安交大的汇编课程的两次课内两次实验报告。
80X86汇编语言程序设计课内实验报告
这个系列是西安交大的汇编课程的两次课内两次实验报告。
实验步骤
第一题: 在主程序中调用子函数 count, 完成将每个在数组 mark 里的成绩一一取 出, 分别判定其大小而放入统计 60~69 分, 70~79 分, 80~89 分, 90~99 分 和 100 分的人数的 S6, S7, S8, S9 和 S10 单元中,在屏幕上依次显示出 S6, S7, S8, S9 和 S10 中的数。
第二题: 使用条件汇编和重复汇编。判断当给定名为X 的字符串长度大于5 时, 重复 ADD AX, AX 10 次。
第三题: 使类型1CH 的中断向量指向中断处理程序COUNT,COUNT中 1CH 中断每 调用一次则给num加一,计算出num最后的值后存入单元M 中。
第四题: 接收从键盘输入的 10 个十进制数字,输入回车符则停止输入, 在 bx 里存入数组 7,5,9,1,3,6,8,0,2,4 的符号地址,每键入一 个数后都存入 al,调用 xlat 使得(al)<—((al)+(bx)) al 中为译码后的数,存入 string 并一次输出所有的数。
这个系列是西安交大的汇编课程的两次课内两次实验报告。
实验中遇到的 1、 问题 问题及其解决 方法在调用 DOS/BIOS 时将 16 进制数后没有加 H,造成程序报错。 解决方法:仔细读程序,多注重编程细节,努力养成好的编程习惯。 2、 问题 由于我的电脑是 64 位系统,不支持 masm,因此我一直用 emu8086 编 程,但在实践中发现我所使用的 emu8086 模拟器在语法规则方面和 masm 有些不同,且不支持条件汇编和重复汇编。 解决方法:利用 dosbox 配合 masmplus,模拟 dos 环境,从而解决了 不兼容问题。 3、 对中断向量的修改、恢复的理解不清晰,在编写题目三时遇到了一些 困难。 解决方法:经
过老师的讲解和自己看书思考,最终解决了问题。
实验结果
见附录。
2013 年 5 月 17 日 建议1、 可以考虑增加实验时间。汇编语言的风格、思路与我们之前学习过的 高级语言有所不同,熟悉编程环境需要时间。感觉上机期间,同时需 要熟悉环境、设计算法、编写程序和调试程序是很有压力的。所以可 以考虑在正式编程前增加一次实验。 2、 可以考虑设计一些更加有趣的题目。本次需要编写的两个程序有些枯 燥,不妨再生动些。 3、 可以考虑使用类似 C 语言学习时的 moodle 系统, 可以同时减轻老师和 学生的负担。而且实现了在寝室中可以随时编写程序。避免到上机时 猝不及防。
备注
源代码和截图见附录
这个系列是西安交大的汇编课程的两次课内两次实验报告。
附录
程序一
ASM图
ASM图较为复杂,从略。
程序代码
data segment
score db 76,69,84,90,73,88,99,63,100,80 s6 db 0 s7 db 0 s8 db 0 s9 db 0 s10 db 0 data ends code segment
assume cs:code, ds:data main proc start:
mov ax,data mov ds,ax mov cx,10 call alloc disp:
mov dl,s6 call display mov dl,s7 call display mov dl,s8 call display mov dl,s9 call display mov dl,s10 call display
mov ah,4ch int 21h main endp
;---------------------------------------- display proc
add dl,30h ;屏幕上显示的是ascii码,所以求出数字,然后转换成ascii码
这个系列是西安交大的汇编课程的两次课内两次实验报告。
mov ah,02h int 21h ret
display endp
;----------------------------------------
alloc proc xor si,si comp:
cmp score[si],100 je is10
cmp score[si],90 jge is9
cmp score[si],80 jge is8
cmp score[si],70 jge is7 is6: inc s6 Jmp l1 is7: inc s7 Jmp l1 is8: inc s8 Jmp l1 is9: inc s9 Jmp l1 is10: inc s10 Jmp l1 L1: Inc si Loop comp ret
alloc endp code ends end start
这个系列是西安交大的汇编课程的两次课内两次实验报告。
截图
结果分析
根据输出可以知道,程序按照题目要求正确统计了各分数段的人数。
这个系列是西安交大的汇编课程的两次课内两次实验报告。
程序二
ASM图
程序代码(数据段中X分别用‘123456’和‘1234’测试)
DATA SEGMENT
X DB '123456' ;之后换成'1234'再次测试 count equ $-X DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA START:
IF count GT 5 REPT 10
ADD AX,AX
这个系列是西安交大的汇编课程的两次课内两次实验报告。
ENDM ENDIF
MOV AX,4C00H INT 21H CODE ENDS END START
截图
(1)预计第一次(X=123456)实验结果为“ADD AX,AX”将重复汇编10次,生成list文件如下(黑体部分为重复10次的语句)。
Microsoft (R) Macro Assembler Version 5.00 5/17/13 20:16:02 Page 1-1
1 0000 DATA SEGMENT
2 0000 31 32 33 34 35 36 X DB '123456' ;之后换成'12345'再? 尾馐?
3 = 0006 count equ $-X 4 0006 DATA ENDS 5
6 0000 CODE SEGMENT
7 ASSUME CS:CODE,DS:DATA 8 0000 START: 9 IF count GT 5 10 REPT 10 11 ADD AX,AX 12 ENDM
13 0000 03 C0 1 ADD AX,AX 14 0002 03 C0 1 ADD AX,AX 15 0004 03 C0 1 ADD AX,AX 16 0006 03 C0 1 ADD AX,AX 17 0008 03 C0 1 ADD AX,AX 18 000A 03 C0 1 ADD AX,AX 19 000C 03 C0 1 ADD AX,AX 20 000E 03 C0 1 ADD AX,AX 21 0010 03 C0 1 ADD AX,AX 22 0012 03 C0 1 ADD AX,AX 23 ENDIF
24 0014 B8 4C00 MOV AX,4C00H 25 0017 CD 21 INT 21H 26 0019 CODE ENDS 27 END START
这个系列是西安交大的汇编课程的两次课内两次实验报告。
Microsoft (R) Macro Assembler Version 5.00 5/17/13 20:16:02 Symbols-1
Segments and Groups:
N a m e Length Align Combine Class
CODE . . . . . . . . . . . . . . 0019 PARA DATA . . . . . . . . . . . . . . 0006 PARA
Symbols:
N a m e Type Value
COUNT . . . . . . . . . . . . . NUMBER 0006
START . . . . …… 此处隐藏:4021字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [小学教育]四年级综合实践活动课《衣物的洗涤》教
- [小学教育]2014半年工作总结怎么写
- [小学教育]20世纪外国文学专题综合试题及答案
- [小学教育]TS_1循环使用催化丙烯环氧化反应研究
- [小学教育]最实用的考勤签到表(上下班签到表)
- [小学教育]气候与生态建筑——以新疆民居为例
- [小学教育]二人以上股东有限责任公司章程参考样本
- [小学教育]2014届第一轮复习资料4.1,3美好生活的
- [小学教育]土方开挖、降水方案
- [小学教育]手绘儿童绘本《秋天的图画》(蜡笔)
- [小学教育]2002级硕士研究生卫生统计学考试试题
- [小学教育]环保装备重点发展目录
- [小学教育]金蝶K3合并报表培训教材
- [小学教育]岩浆岩试题及参考答案
- [小学教育]知之深爱之切学习心得
- [小学教育]第十二章 蛋白质的生物合成
- [小学教育]Chapter 2-3 Solid structure and basi
- [小学教育]市政道路雨季专项施工方案
- [小学教育]中国海洋大学2012-2013学年第二学期天
- [小学教育]教育心理学第3章-学习迁移
- 浅谈深化国企改革中加强党管企业
- 2006年中国病理生理学会学术活动安排
- 设计投标工作大纲
- 基于ARP的网络攻击与防御
- 2016届湖北省七市(州)教科研协作体高三
- Google_学术搜索及其检索技巧
- 2019-2020学年七年级地理下册6.3美洲教
- 城市道路可研报告
- 【名师指津】2012高考英语 写作基础技
- 6级知识点培训北京师范大学《幼儿智趣
- 注册会计师会计知识点:金融资产
- 新安装 500 kV 变压器介损分析与判断
- PS2模拟器PCSX2设置及使用教程.
- 医院药事管理与药剂科管理组织机构
- {PPT背景素材}丹巴的醉人美景,免费,一
- NAS网络存储应用解决方案
- 青海省西宁市六年级上学期数学期末考试
- 测量管理体系手册依据ISO10012:2003
- 洞子小学培养骨干教师工作计划
- 浅谈《牛津初中英语》的教材特点及教学




