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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

汇编语言综合程序实验报告.docx

1、汇编语言综合程序实验报告东 北 大 学计算机硬件技术基础实验报告专业班级:姓名:学号:20092100实验题目:综合程序设计日期:2011年12月12日一、实验内容1.自内存DATA 单元开始存放若干个无符号字节数,数据个数在COUNT单元存放。编制程序分别计算其中奇数,偶数的和,并分别存入 ODDSUM, EVENSM单元。设各类和不超过16位二进制数,可用一个字表示或存放。2.试编制一程序。从键盘输入一个字符,若为“1”,则显示“THE FIRST SUBROUTINE!”;否则显示“INPUT RIGHT CHARACTER”,返回DOS。3.计算一组字数据中正数,负数和零的个数,并分别

2、存放在PCOUNT,MCOUNT和ZCOUNT单元。设该组数据首地址为 ARRY,数据个数在CNT单元存放。二、算法描述流程图实验内容1、2、3的流程图分别为图1、图2、图3。图1图2图3图2图1图3三、实验步骤1.自内存DATA 单元开始存放若干个无符号字节数,数据个数在COUNT单元存放。编制程序分别计算其中奇数,偶数的和,并分别存入 ODDSUM, EVENSM单元。设各类和不超过16位二进制数,可用一个字表示或存放。1)输入源程序:DSEG SEGMENTDATA DB 45H,16H,63H,24H,0B1H,0A6H,0A4H,18HCOUNT DW 08ODDSSUM DW 0E

3、VENSSUM DW 0DSEG ENDSCSEG SEGMENT ASSUME CS:CSEG,DS:DSEGMAIN:MOV AX,DSEG MOV DS,AX LEA SI,DATA MOV CX,COUNT XOR AX,AX XOR BX,BX XOR DX,DXAGAIN:MOV AL,SI TEST AL,01 JZ EVENS ADD BX,AX JMP CHCNTEVENS:ADD DX,AXCHCNT:INC SI LOOP AGAIN MOV ODDSSUM,BX MOV EVENSSUM,DX MOV AH,4CH INT 21HCSEG ENDS END MAIN2)

4、运行程序。3)检查结果无错误后将结果记录下来。2.试编制一程序。从键盘输入一个字符,若为“1”,则显示“THE FIRST SUBROUTINE!”;否则显示“INPUT RIGHT CHARACTER”,返回DOS。1)输入源程序:DATA SEGMENTSTR0 DB INPUT THE RIGHT CHARACTER,$STR1 DB INPUT CHARACTER:$STR2 DB THE FIRST SUBROUTINE!$DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV DX,OF

5、FSET STR1 MOV AH,09H INT 21H MOV AH,01H INT 21H CMP AL,1 JZ SUBF MOV DL,0DH MOV AH,02H INT 21H MOV DL,0AH MOV AH,02H INT 21H LEA DX,STR0 MOV AH,09H INT 21H JMP EXITSUBF: LEA DX,STR2 MOV AH,09H INT 21H JMP EXITEXIT: MOV AH,4CH INT 21HCODE ENDS END START2)运行程序。3)检查结果无错误后将结果记录下来。3.计算一组字数据中正数,负数和零的个数,并分

6、别存放在PCOUNT,MCOUNT和ZCOUNT单元。设该组数据首地址为 ARRY,数据个数在CNT单元存放。1)输入源程序:DSEG SEGMENTARRY DW 15,-5,1,5,0,123,964,-327,0CNT DW 9PCOUNT DW 0MCOUNT DW 0ZCOUNT DW 0DSEG ENDSCSEG SEGMENT ASSUME CS:CSEG,DS:DSEGSTART:MOV AX,DSEG MOV DS,AX LEA SI,ARRY MOV CX,CNT XOR AX,AX XOR BX,BX XOR DX,DXPMZN0:TEST WORD PTRSI,0FFF

7、FH JS MINUS JNZ PLUS INC DX JMP PMZN1PLUS: INC AX JMP PMZN1 MINUS: INC BX JMP PMZN1PMZN1: INC SI+2 LOOP PMZN0 MOV PCOUNT,AX MOV MCOUNT,BX MOV ZCOUNT,DX MOV AH,4CH INT 21HCSEG ENDS END START2)运行程序。3)检查结果无错误后将结果记录下来。四、实验结果1.自内存DATA 单元开始存放若干个无符号字节数,数据个数在COUNT单元存放。编制程序分别计算其中奇数,偶数的和,并分别存入 ODDSUM, EVENSM单

8、元。设各类和不超过16位二进制数,可用一个字表示或存放。程序运行结果如下界面所示:2.试编制一程序。从键盘输入一个字符,若为“1”,则显示“THE FIRST SUBROUTINE!”;否则显示“INPUT RIGHT CHARACTER”,返回DOS。程序运行结果如下界面所示:3.计算一组字数据中正数,负数和零的个数,并分别存放在PCOUNT,MCOUNT和ZCOUNT单元。设该组数据首地址为 ARRY,数据个数在CNT单元存放。程序运行结果如下界面所示:五、思考题1.测试最低位状态也可以用右移指令,然后判断CF的状态.请问如何修改程序语句?答:将AGAIN和EVENS语句改为:AGAIN:

9、MOV AL,SI SHR AL,1 JNC EVENS SHL AL,1 INC AL ADD BX,AX JMP CHCNTEVENS: SHL AL,1 ADD DX,AX2.请仔细阅读程序说明AH功能号分别为01H,02H,09H时所代表的功能。答:01H输入字符,02H显示字符,09H输出字符3.本程序利用TEST指令影响标志位来判别程序分支,请问程序利用的是哪两个标志位? 答:ZF和SF标志位六、扩展题1.有一班级,学生人数存储于内存NUB单元,该班同学某门课程的成绩存放于内存S开始的单元,编制程序,统计该班该课程的平均成绩,存放于E单元。答:DSEG SEGMENTS DW 5,

10、4,3,6,7 NUB DW 5E DW 0DSEG ENDSCSEG SEGMENT ASSUME CS:CSEG,DS:DSEGSTART: MOV AX,DSEG MOV DS,AX LEA SI,S MOV AX,0 MOV BX,0 MOV CX,NUBAGAIN: MOV BX,SI ADD AX,BX ADD SI,2 LOOP AGAIN DIV NUB MOV E,AX MOV AH,4CH INT 21HCSEG ENDS END START运行结果:2.编写程序在屏幕上显示AZ26个大写字母,要求用DOS系统功能调用INT 21H的02H号功能实现。答:DATA SEGM

11、ENT STR DB OUTPUT CHARACTER:$DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV DX,OFFSET STR MOV AH,09H INT 21H MOV AH,02H MOV CX,26 MOV DL,AL0: MOV AH,2 INT 21H INC DL LOOP L0 MOV AH,4CH INT 21HCODE ENDSEND START运行结果:3.设有一组字节数据,编制程序求其全部正数的和。设和不超过16位二进制数,可用一个字表示或存放。答:DATA S

12、EGMENT BUF DB 15,-15,7,-6,-34,56,6FH BUF1 DW 0DATA ENDSCODE SEGMENT ASSUME CS:CSEG,DS:DSEGSTART:MOV AX,DATA MOV DS,AX MOV DX,0 MOV CX,8 MOV SI,OFFSET BUFL0: TEST BYTE PTRSI,0FFH JS L1 MOV AX,SI AND AX,00FFH ADD DX,AXL1: INC SI LOOP L0 MOV BUF1,DX MOV AH,4CH INT 21HCODE ENDS END START运行结果:七、实验心得这次综合程序的运行及思考题、扩展题的操作让我对汇编语言中的循环、求和、求平均值、判断正负、字符显示等有了更深的理解和更熟练的应用,但是通过运行第三个源程序也让我意识到自己对汇编语言的理解还不够深入,只是一味的照搬没有思考其中的语法错误,以后会加强学习争取做更熟练的操作。

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

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