8086汇编语言程序设计——分支
汇编语言程序和高级语言程序一样,有顺序、分支、循环、子程序四种结构形式。 计算机程序在执行过程中,可以改变程序的执行顺序,根据一定的条件进行转移,使程序完成更复杂的功能。汇编语言提供了无条件转移指令和条件转移指令。 一个分支程序的例子 示例 设计分支程序,实现下列公式计算。X、Y为字型。假设X单元中保存三个数:9,-6,34,分别作判断和计算。 设计思路: (1) 在数据段中定义2个字型变量X、Y,均为带符号数; (2) 在X单元中依次取出三个数分别作判断,根据X的大小作分支转移; (3) 采用寄存器相对寻址方式(MOV AX,X[SI])取出X的三个值; (4) 标号OUT1是各路分支的公共出口。 程序框图: 代码: ; a.asm 用正常程序格式编写分支程序 data segment x dw 9 ,- 6 , 34 y dw 3 dup(?) ;定义一个变量,占3的字,每个字的内容未知 data ends code segment assume cs: code, ds: data start: mov ax,data mov ds,ax mov cx, 3 ;循环三次 mov si, 0 let0: mov ax,x[si] ;取出X cmp ax, 0 ;X ≥ 0 ? jge let1 ;是,转到let1 mov bx,ax ;否,计算X*X imul bx jmp