NEW04第四章汇编程序设计基础(自学).ppt

NEW04第四章汇编程序设计基础(自学).ppt

  1. 1、本文档共91页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基本框架 STATCK SEGMENT STACK ;定义堆栈段 …….. STACK ENDS DATA SEGMENT ;定义数据段 …… DATA ENDS CODE SEGMENT ;定义代码段 ASSUME CS:CODE, DS:DATA, SS:STATCK ;仅告诉汇编程序, 并不能赋值 START: MOV AX, DATA MOV DS, AX …….. MOV AH, 4CH ;程序结束 返回DOS INT 21H CODE ENDS END START (X+125-X*Y)/Z STATCK SEGMENT STACK DW 100H DUP(?) STACK ENDS DAT SEGMENT X DW 3 Y DW 4 Z DW 10 DAT ENDS COD SEGMENT ASSUME CS:COD, DS:DAT, SS:STACK START: MOV AX, DAT MOV DS, AX MOV AX, X IMUL Y MOV CX, AX MOV BX, DX MOV AX, X ADD AX,125 CWD 举例 例:按15行*16列的表格形式显示ASCII码10H ~FFH的所有字符。每16个字符为1行,每行中的相邻两个字符之间用空格隔开。 两个6字节数相加 第4章汇编程序设计基础 2. 子程序调用与 调用格式: Call 子程序入口地址 返回格式: Ret n (其中n是偶数) 第4章汇编程序设计基础 在编写子程序时,应满足下面的基本要求: 1.适度地划分并确定子程序功能 2.选择适当的参量传递途径 3.信息的保存 4.清晰的子程序文本 4.子程序与主程序的参数传递和设计举例 第4章汇编程序设计基础 (1) 通过寄存器传递参量 例12 设在数据段中有一数组,数组中元素为字类型。试编制程序,用减奇数法对数组中各个数据逐一开平方,并把结果依次存入字节数组PFG中。 DATA SEGMENT DA1 DW 1234H,5678H,3456H COUNT EQU ($-DA1)/2 PFG DB COUNT DUP(0) DATA ENDS 第4章汇编程序设计基础 DATA SEGMENT DA1 DW 1234H,5678H,3456H COUNT EQU ($-DA1)/2 PFG DB COUNT DUP(0) DATA ENDS STACK1 SEGMENT PARA STACK DW 20H DUP(0) STACK1 ENDS 第4章汇编程序设计基础 CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK1 START: MOV AX,DATA MOV DS,AX MOV CX,COUNT ;循环计数器初值 LEA SI,DA1 LEA DI,PFG LOP: MOV AX,[SI] ;取被开方数 第4章汇编程序设计基础 PUSH CX ; 保存循环计数器 CALL SQR_PROC ; 调用子程序 MOV [DI],CL ;存平方根 POP CX ;恢复循环计数器 ADD SI,2 ;修改地址指针 INC DI LOOP LOP MOV AH,4CH INT 21H 第4章汇编程序设计基础 ;子程序SQR_PROC :开平方 ; 入口参数: ; (AX) 为被开方数 ; (CL)为开方结果 SQR_PROC PROC ;开平方子程序 MOV CL,0 ;开平方计数器CL?0 MOV DX,1 ;奇数?1 第4章汇编程序设计基础 SQR: SUB AX,DX ;减奇数

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档