第04章.80868088汇编语言程序设计精选.ppt

ORG伪指令用来指出其后的程序段或数据块存放的起始地址的偏移量。 其格式为: ORG 表达式 汇编程序把语句中表达式之值作为起始地址,连续存放程序和数据,直到出现一个新的ORG指令。若省略ORG,则从本段起始地址开始连续存放。 5、ORG伪指令 P144 (1)过程定义伪指令格式: 过程名 PROC 〔类型〕 … ;指令序列 过程名 ENDP (2)调用过程 调用过程用“CALL过程名”来实现。 (4)过程返回 通常子程序中包括一至多条返回指令,即当过程运行至某种条件满足时返回至主程序中调用指令的下一条指令继续执行。 P146 例4.36 6、过程定义伪指令 P144 一、顺序结构程序 例:对两个8字节无符号数求和,这两个数分别用变量D1及D2表示。将两数之和的最高位进位放在AL中,两数之和的其他位按从高到低顺序依次放在SI,BX,CX,DX中。 4.3 8086/8088 汇编语言程序设计基本方法 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] ADC CX,[DI+2] ADC BX,[DI+4] ADC SI,[DI+6] MOV AL,0 ADC AL,0 MOV AH,4CH INT 21H C ENDS END BG 二、分支结构程序 例:比较以存储器变量D1和D2表示的两个有符号字数据的大小,将其中较大数据放在BX寄存器中 DATA SEGMENT D1 DW -123H ;补码为FF85H D2 DW -120H ;补码为FF88H DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA ;说明代码段、数据段 BEGIN: MOV AX,DATA MOV DS,AX ;给DS赋段值 MOV BX,D1 CMP BX,D2 JGE NEXT ;若D1≥D2,则不交换,转NEXT MOV BX,D2 ;若D1D2,则交换 NEXT: MOV AH,4CH INT 21H CODE ENDS

文档评论(0)

1亿VIP精品文档

相关文档