- 7
- 0
- 约9.84千字
- 约 51页
- 2020-07-20 发布于天津
- 举报
33 3 、段定义伪指令 段定义伪指令指示汇编程序应如何按段来组织程序和使用存 储器。所用命令主要有 SEGMENT , ENDS , ASSUME , ORG 等。 汇编源程序一般由若干段组成 , 以 SEGMENT 作为段的开始 , 以 ENDS 作为段的结束 , 这两者 ( 伪指令 ) 前面都要冠以相同的名字 DATA SEGMENT SUM DW 0 DATA ENDS STACK SEGMENT STACK DB 200 DUP(0) STACK ENDS 34 段名 SEGMENT 一系列汇编指令 段名 ENDS ( 1 ) SEGMENT 和 ENDS 伪指 令 35 ( 2 ) 设定段寄存器伪指令 ASSUME ASSUME 段寄存器名 : 段名 [ ,段寄存器名 : 段名 [ , ...]] ? 告诉汇编程序用 SEGMENT 伪操作定义过的 段 的 段地址 将 要存放在哪个 段寄存器 中。 ? 其中段寄存器名必须是 CS 、 DS 、 ES 和 SS 中的一个,而段 名则必须是由 segment 定义的段中的段名。 CODE SEGMENT ASSUME DS:DATA,SS:STACK,CS :CODE 36 ORG伪指令用来指出其后的程序段或数据块 存放的起始地址的偏移量。 其格式为: ORG 表达式 汇编程序把语句中表达式之值作为起始地址 , 连续存放程序和数据,直到出现一个新的ORG 指令。若省略ORG,则从本段起始地址开始连 续存放。 ( 3 ) ORG 伪指令 37 ( 1 )过程定义伪指令格式: 过程名 PROC 〔类型〕 … ;指令序列 过程名 ENDP ( 2 )调用过程 调用过程用“CALL过程名”来实现。 ( 4 )过程返回 通常子程序中包括一至多条 返回指令 ,即当过程运行 至某种条件满足时返回至主程序中调用指令的下一条指令 继续执行。 4 、过程定义伪指令 38 一、顺序结构程序 顺序结构是最基本、最常用的程序结构。其特 点是,完全按照程序指令编排的顺序依次执行。 例:对两个8字节无符号数求和,这两个数分别用 变量D1及D2表示。将两数之和的最高位进位 放在AL中,两数之和的其他位按从高到低顺序 依次放在SI,BX,CX,DX中。 4.3 8086/8088 汇编语言程序设计基本方法 39 D SEGMENT D1 DB 12H,34H,56H,78H, 9AH,0ABH,0BCH,0CDH D2 DB 0CDH,0BCH,0ABH, 9AH,78H,56H,34H,12H D ENDS C SEGMENT ASSUME CS:C,DS:D ; 说明代码段、数据段 BG: MOV AX,D MOV DS,AX ; 给 DS 赋段值 LEA DI,D1 ; 将 D1 表示的偏移地址送 DI MOV DX, [DI] ; 取第 1 操作数到寄存器中 MOV CX, [DI+2] MOV BX, [DI+4] MOV SI, [DI+6] LEA DI,D2 ; 将 D2 表示的偏移地址送 DI ADD DX, [DI] ;将 D1 和 D2 相加,结果存放在 SI 、 BX 、 CX 、 DX 中 ADC CX, [DI+2] ADC BX, [DI+4] ADC SI, [DI+6] MOV AL,0 ADC AL,0 MOV AH,4CH INT 21H
您可能关注的文档
最近下载
- 初中生“数与代数”内容解题错误分析与对策研究.pdf
- 学校管理内容课件.pptx VIP
- 2025年信息系统安全专家数据库云环境下的加密挑战与解决方案专题试卷及解析.pdf VIP
- 2025年湖北省武汉市中考四调英语试题(附答案解析).docx VIP
- 2025年赣南卫生健康职业学院单招语文测试模拟试卷.docx VIP
- 2026年春季小学一年级下册美术(人美版2024版)教学计划附教学进度表.docx VIP
- 2025年安徽省合肥市中考英语试卷(含答案逐题解析).docx
- 01 从地理学到城市地理学.pdf VIP
- 2026东方资产校招试题及答案.doc VIP
- (高清版)DB42∕T 2012-2023 《土家族吊脚楼营造规程》.pdf VIP
原创力文档

文档评论(0)