微型计算机原理和应用汇编语言程序的设计说明.pptVIP

  • 0
  • 0
  • 约1.35万字
  • 约 67页
  • 2019-11-10 发布于安徽
  • 举报

微型计算机原理和应用汇编语言程序的设计说明.ppt

* 第四章:汇编语言程序设计——汇编语言程序设计 子程序设计——保护现场和恢复现场 利用指令PUSH保护现场,利用指令POP恢复现场。 例如: SUB1 PROC NEAR PUSH AX 保护现场 PUSH BX PUSH CX PUSH DX ┇ ┇ POP DX 恢复现场 POP CX POP BX POP AX RET SUB1 ENDP * 第四章:汇编语言程序设计——汇编语言程序设计 子程序设计——参数传递方法 利用寄存器:这是一种最常见方法,把所需传递的参数直接放在主程序的寄存器中传递给子程序。 利用存储单元:这种参数传递方法,把所需传递的参数直接放在子程序调用指令代码之后。 利用堆栈:这种方法将参数压入堆栈,在子程序运行时从堆栈中取参数。 * 第四章:汇编语言程序设计——汇编语言程序设计 子程序设计 【例4-7】编制程序两个6字节数相加。将一个字节相加的程序段设计为子程序。主程序分3次调用该子程序,但每次调用的参数不同。 DATA SEGMENT MYADD1 DB 0FEH,86H,7CH,35H,68H,77H MYADD2 DB 45H,0BCH,7DH,6AH,87H,90H SUM DB 6 DUP (0) COUNT DB 6 DATA ENDS STACK SEGMENT DB 100 DUP (?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK MADD: MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX MOV SI,OFFSET MYADD1 MOV DI,OFFSET MYADD2 MOV BX,OFFSET SUM * 第四章:汇编语言程序设计——汇编语言程序设计 子程序设计 MOV CX,COUNT ;循环初值为6 CLC AGAIN:CALL SUBADD ;调用子程序 LOOP AGAIN ;循环调用6次 MOV AX,4C00H INT 21H ;子程序入口参数:SI,DI,BX 出口参数:SI,DI,BX SUBADD PROC ;完成一个字节相加 PUSH AX ;保护AX的值 MOV AL,[SI] ;SI是一个源操作数指针 ADC AL,[DI] ;DI是另一个源操作数指针 MOV [BX],AL ;BX是结果操作数指针 INC SI INC DI INC BX POP AX ;恢复AX的值 RET SUBADD ENDP CODE ENDS END MADD * 第四章:汇编语言程序设计——总结 了解汇编的概念及其方法, 掌握汇编程序的基本格式,常用运算符的使用方法,汇编的步骤。 知识回顾Knowledge Review * 第四章:汇编语言程序设计——伪指令 设定段寄存器伪指令 DATA1 SEGMENT ┇ DATA1 ENDS STACK1 SEGMENT STACK ┇ STACK1 ENDS CODE1 SEGMENT ASSUME CS:CODE1,DS:DATA1,SS:STACK1 MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX ┇ CODE1 ENDS * 第四章:汇编语言程序设计——伪指令 定义数据伪指令 符号定义伪指令 段定义伪指令 设定段寄存器伪指令 定义过程的伪指令 宏指令 ORG伪指令 汇编结束伪指令END * 第四章:汇编语言程序设计——伪指令 定义过程伪指令 在程序设计中,可将具有一定功能的程序段看成为一个过程(相当于一个子程序),它可以被别的程序调用。一个过程由伪指令PROC和ENDP来定义。

文档评论(0)

1亿VIP精品文档

相关文档