- 1、本文档共62页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 第4章 汇编语言及汇编程序设计 * 七、汇编程序基本设计方法 1、 简单程序 作业 2、 分支程序 3、 循环程序 4、 子程序 * 第4章 汇编语言及汇编程序设计 * 1、简单程序 简单程序是指顺序结构程序, 在程序中不包含任何转移类指令。 执行时按指令的先后次序从第一条开始逐条执行,直至程序结束。 例题 * 第4章 汇编语言及汇编程序设计 * 例题 1、有X,Y两个16位数3456H和0ABCDH,求两数之和,并将结果送到Z单元。 解: ①编写流程图 * 第4章 汇编语言及汇编程序设计 * 例题 程序清单 DATA SEGMENT X DW 3456H Y DW 0ABCDH Z DW 0 DATA ENDS ;设置数据段,取名DATA CODE SEGMENT ASSUME DS :DATA,CS:CODE START :MOV AX,DATA ;取数码段DATA段址至AX MOV DS,AX ;段地址送DS LEA SI,X ;将X的有效地址送S1 LEA DI, Y ;将Y的有效地址送D1 MOV AX,[SI] ;将X的值送AX ADD AX,[DI] ;AX+Y的值送回AX MOV Z, AX ;将AX的值送到存储单元Z MOV AH, 4CH ;设置功能号 INT 21H ;系统功能调用,返回DOS CODE ENDS END START * 第4章 汇编语言及汇编程序设计 * 作业 P.126 2、4、 5、7、12 * 第4章 汇编语言及汇编程序设计 * 2、分支程序 分支程序就是利用转移指令,控制计算机执行某段程序或不执行某段程序。 两路分支 多路分支 例题 * 第4章 汇编语言及汇编程序设计 * 例题 1、内存中有一个8位带符号数,求其绝对值,并将结果放回原处。 答:编写流程图 程序清单 * 第4章 汇编语言及汇编程序设计 * 例题 程序清单 DATA2 SEGMENT M DB 05H ; 第二个程序换成-5,即0fbh DATA2 ENDS CODE2 SEGMENT ASSUME CS:CODE2,DS:DATA2 START: MOV AX,DATA2 MOV DS,AX ;送段地址至DS LEA SI,M ;取M的地址指针 MOV AL,[SI] ;取带符号数 AND AL,AL ;判断符号位 JNS DONE ;SF=0,转移到DONE NEG AL ;SF=1,AL0,AL求补(即0-AL) DONE: MOV [SI],AL ;绝对值送回原内存单元 MOV DL, [SI] ADD DL, 30H MOV AH, 02H INT 21H ; 系统功能调用,显示该数值 MOV AH,4CH INT 21H CODE2 ENDS END START * 第4章 汇编语言及汇编程序设计 * 例题 2、编写程序实现函数。 1 (当X0) Y= 0 (当X=0) 9 (当X0) 解: 编写程序清单 程序清单 * 第4章 汇编语言及汇编程序设计 * 例题 程序清单_数据段 DATAXY SEGMENT X DB 8FH ; 另外两组分别是7FH,00H Y DB ? DATAXY ENDS * 第4章 汇编语言及汇编程序设计 * 例题 程序清单_代码段 CODE SEGMENT ASSUME CS:CODE,DS:DATAXY START: MOV AX,DATAXY MOV DS,AX ;送段地址 LEA SI, X ;取X的指针 MOV AL,[SI] ;将X的值送AL AND AL, AL ;自身与,取符号标志位 JNS OTHER ;SF=0,转移到OTHER MOV Y, 09H
文档评论(0)