- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机-十个数输出最大最小值
实验报告
课程名称 计算机结构与组织 实验项目 输出最大最小值 姓名 学号 班级 专业 实验日期 实验名称:十个数输出最大最小值
程序框图:
程序
DATA SEGMENT
MAX DB MIN DB DATA DW 08H,07H,04H,03H,09H,02H,01H,05H,00H,06H
DATA ENDS
STACK SEGMENT PARA STACKSTACK DB 100 DUP STACK ENDS
CODE SEGMENT ASSUME CS: CODE,DS: DATA,SS: STACK
MAIN PROC FAR
START: PUSH DX SUB AX,AX PUSH AX MOV AX, DATA MOV DS,AX
MOV BX,OFFSET DATA MOV AX,[BX] MOV CL,10
AGAIN1: CMP AX,[BX] JG NEXT1 MOV AX,[BX]
NEXT1: INC BX INC BX DEC CL JNZ AGAIN1
MOV MAX,Al
GO: MOV BX,OFFSET DATA MOV AX,[BX] MOV CL,10
AGAIN2: CMP AX,[BX] Jl NEXT2 MOV AX,[BX]
NEXT2: INC BX INC BX DEC CL JNZ AGAIN2 MOV MIN,AL OR MAX,30H OR MIN,30H DAA
PRINT: MOV DL, MAX MOV AH,2 INT 21H MOV DL,20H MOV AH,2 INT 21H
MOV DL,MIN MOV AH,02 INT 21H
MOV DL,20H MOV AH,2 INT 21H MOV CX,0FFFFH
LOAP: DEC CX JNE LOAP JMP PRINT
MAIN ENDP
CODE ENDS END START
心得与体会:
刚开始编写汇编语言的时候觉得应该很简单,因为我在大一下半学期曾经学过C,C++,认为C,C++是比汇编语言更高级的语言,自认为在有C++的基础的情况下,汇编语言会学起来相当省事,但经过编写才发现完全不是那么回事,在格式,表达方面截然不同,而且还有很多新的事物需要去接受,譬如:寄存器的选择,段的概念等,若不加以了解,那么无法将程序编写进行下去。但我也发现汇编语言与C,C++也有相似之处,比如基本的顺序模式,分支模式,循环模式等,这也为我对整体思路的把握有一定的帮助。总之,在不断的摸索,学习,编写,再学习的过程中,我比较清楚的掌握了这个程序的编写。
在编写完以后,本以为大功告成,但是却碰到更大的问题,那便是程序的反复的调试与矫正,这相当繁琐,一个小小的错误就需要整个程序重新复查,需要花费很多时间。这就需要在编写的时候要考虑周到,尽量避免出现小错误。
初始化,设数据串地址
传递第一个数AX,并设置比较次数
AX>[BX]
BX指向下一个数,循环次数减+1
CL 0?
BX AX
AX MAX 传递第一个数AX,并设置比较次数
AX<[BX]
[BX]AX
BX指向下一个数,循环次数-1
CL 0?
AX MIN
MAX,MIN转化成ASCⅡ
利用功能调用2输出MAX
输出空格
利用功能调用2输出MIN
文档评论(0)