·第4章程序设计方法 4.31用条件转移指令实现程序分支 【例4.3】编写计算下面函数值的程序: X>0 Y 0 X=0 X 设输入数据为X、输出数据Y,且皆为字节变量。程序 流程图如图42所示。 程序如下:
•第4章 程序设计方法 4.3.1 用条件转移指令实现程序分支 【例4.3】编写计算下面函数值的程序: 1 X>0 Y= 0 X=0 -1 X 设输入数据为X、输出数据Y,且皆为字节变量。程序 流程图如图4.2所示。 程序如下:
·第4章程序设计方法 DATA SEGMENT X DB-10 DB DATA ENDS STACK SEGMENT STACK DB 200 DUP(0) STACKENDS CODE SEGMENT ASSUME DS: DATA, SS: STACK, CS: CODE START MOV AX, DATA
•第4章 程序设计方法 DATA SEGMENT X DB -10 Y DB ? DATA ENDS STACKSEGMENT STACK DB 200 DUP(0) STACKENDS CODE SEGMENT ASSUME DS:DATA,SS:STACK,CS:CODE START: MOV AX,DATA
·第4章程序设计方法 MOV DS, AX cMPX,0;与0进行比较 JGE A1 X≌0转A1 MovY,-1;X<0时,1→Y JMP EXIT A1: JG A2 ;X>0转A2 MOV Y, 0 X=0时,0→Y JMP EXIT A2: MOV Y, ;X>0,1→Y EXIT: MOV AH, 4CH INT 21H CODE ENDS END START
•第4章 程序设计方法 MOV DS,AX CMP X,0 ;与0进行比较 JGE A1 ;X≥0转A1 MOV Y,-1 ;X <0时,-1→Y JMP EXIT A1: JG A2 ;X>0转A2 MOV Y,0 ;X=0时,0→Y JMP EXIT A2: MOV Y,1 ;X>0,1→Y EXIT: MOV AH,4CH INT 21H CODE ENDS END START
·第4章程序设计方法 MOV DS, AX cMPX,0;与0进行比较 JGE A1 X≌0转A1 MovY,-1;X<0时,1→Y JMP EXIT A1: JG A2 ;X>0转A2 MOV Y, 0 X=0时,0→Y JMP EXIT A2: MOV Y, ;X>0,1→Y EXIT: MOV AH, 4CH INT 21H CODE ENDS END START
•第4章 程序设计方法 MOV DS,AX CMP X,0 ;与0进行比较 JGE A1 ;X≥0转A1 MOV Y,-1 ;X <0时,-1→Y JMP EXIT A1: JG A2 ;X>0转A2 MOV Y,0 ;X=0时,0→Y JMP EXIT A2: MOV Y,1 ;X>0,1→Y EXIT: MOV AH,4CH INT 21H CODE ENDS END START
·第4章程序设计方法 开始 Y+ X≥04 -1→y 1→Y 结束 图42分支运算程序流程图
•第4章 程序设计方法 •图4.2 分支运算程序流程图