文档详情

微型计算机原理与接口技术张荣标课件.ppt

发布:2017-06-20约2.3万字共92页下载文档
文本预览下载声明
第5章 汇编语言程序设计 汇编语言程序的步骤: (1)明确任务,确定算法。 (2)绘流程图。 (3)根据流程图编写汇编语言程序。 (4)上机调试程序。 5.1 汇编语言程序的上机过程 1、源文件的建立和汇编 (1)建立源程序文件 (2)汇编源程序文件 汇编程序主要功能: ·检查源程序中的语法错误并给出出错信息。 ·产生目标文件,列表文件和对照文件。 ·展开宏指令。 汇编操作过程: 设在当前C盘上已经建立了一个扩展名为ASM的源程序文件MYASM,汇编时发出如下命令: C:>MASM MYASM ↙ (或MASM MYASM.ASM ↙) 具体的三个输入提示行显示如下: Object Filename [MYASM.OBJ]:↙ Source Listing [NUL.LST]:(可打入源文件名或省略)↙ Cross Reference [NUL.CRF]:(可打入源文件名或省略)↙ 汇编程序对源文件进行汇编,若无错误信息则显示如下结果: 0 Warning Errors 0 Severe Errors 2.目标文件的链接 连接软件LINK的功能: 1)找到要连接的所有目标文件; 2)确定所有段的地址值; 3)确定所有浮动地址和外部符号所对应的存储地址; 4)生成.EXE可执行文件。 连接软件为 LINK.EXE,其过程如下: 设源文件MYASM.ASM已经由汇编软件汇编后生成MYASM.OBJ,其连接命令为: C:>LINK MYASM 或 LINK MYASM.OBJ 则在屏幕上显示连接软件的版本号和三个输入提示行,三个输入提示行显示如下: Run File [MYASM.EXE]: List File [NUL.MAP]: Libraries [.LIB]: 3.执行文件的调试 5.2 顺序结构程序设计 例5.1 用8086CPU的指令实现两个32位无符号数乘法的程序设     计。 1)明确任务,确定算法。 2)绘流程图(图5.3) 3)根据流程图编写汇编语言程序 1 NAME 32 BIT MULTIPLY 2 DATA   SEGMENT 3 MULNUN DW 0000,0FFFFH,0000, 4 0FFFH,4 DUP(?) 5 DATA ENDS 6 STACK SEGMENT PARA STACK’STACK’ 7 DB 100 DUP(?) 8 STACK ENDS 9 CODE SEGMENT 10 ASSRME CS:CODE, DS:DATA, 11 SS:STACK,ES:DATA 12 MAIN PROC FAR 13 START: PUSH DS 14 MOV AX, 0 15 PUSH AX 16 MOV AX, DATA 17 MOV DS, AX 18 MOV ES, AX 19 LEA BX, MULNUM 20 MULU32: MOV AX,[BX] 21 MOV SI,[BX+4] 22 MOV DI,[BX+6] 23 MUL SI 24 MOV [BX+8],AX 25 MOV [BX+0AH],DX 26 MOV AX,[BX+2] 27 MUL SI 28 ADD AX,[BX+0AH] 29 ADC DX,0 30 MOV [BX+0AH],AX 31 MOV [BX+0CH],DX 32 MOV AX,[BX] 33 MUL DI 34 ADD AX,[BX+0AH] 35 ADC DX,[BX+0CH] 36 MOV [BX+0AH],AX 37 MOV [BX+0CH],DX 38 PUSHF 39 MOV AX,[BX+2] 40 MUL DI 41 POPF 42
显示全部
相似文档