●●●6●●● 第九章常用控制程序设计 ●●●●●●●●●●●●●●●● 6.1.1算术判断程序 1.两个8位无符号数比较 2两个16位无符号数比较 3两个8位有符号数的比较
第九章 常用控制程序设计 6.1.1 算术判断程序 1. 两个8位无符号数比较 2. 两个16位无符号数比较 3. 两个8位有符号数的比较
●●●6●●● 第九章常用控制程序设计 ●●●●●●●●●●●●●●●● 1.两个8位无符号数比较 标志位设定 M一一A M-N=否 否 否 M-N>? 是 转M=N 转M 处理程序 处理程序 处理程序 图6-28位无符号数的比较流程框图
第九章 常用控制程序设计 1. 两个8位无符号数比较 图6-2 8位无符号数的比较流程框图
●●●6●●● 第九章常用控制程序设计 ●●●●●●●●●●●●●●●● 8位无符号数的比较程序清单 CLR CY ;进位标志清零 MOV AM;A←M SUBB A,N;求M一N EQU;累加器A=0,则M=N,转EQU JC ESS;CY=1,有借位,则M<N,转LESS BIG:M>N处理程序;无借位,则MN,执行BIG处理程序 EQU:M=N处理程序 LESS:M<N处理程序
第九章 常用控制程序设计 … … CLR CY ;进位标志清零 MOV A,M ;A←M SUBB A,N ;求M-N JZ EQU ;累加器A=0,则M=N,转EQU JC LESS ;CY=1,有借位,则M<N,转LESS BIG: M>N处理程序 ;无借位,则M>N,执行BIG处理程序 EQU: M=N处理程序 LESS: M<N处理程序 … … 8位无符号数的比较程序清单:
●●●6●●● 第九章常用控制程序设计 ●●●●●●●●●●●●●●●● 2.两个16位无符号数比较 标志位设定 M和N高八位比较 否 高八位相等否? 是 低八位比较 低八位相等否? 是 百借位否是 N处理程序MN处理程序 MN处理程序 图6-316位无符号数的比较流程框图
第九章 常用控制程序设计 2. 两个16位无符号数比较 图6-3 16位无符号数的比较流程框图 标志位设定 高八位相等否? M和N高八位比较 低八位比较 低八位相等否? M=N处理程序 M>N处理程序 M<N处理程序 借位否? 是 是 是 否 否 否
●●●6●●● 第九章常用控制程序设计 ●●●●●●●●●●●●●●●● 16位无符号数的比较程序清单: CLR CY 标志位清零 MOvA,MH;A←-MH MovR2,NH;R2←NH SUBB A,R2;高8位比较 JZ HEQU;高8位相等,转低8位比较 JC LESS;有借位,转M<N处理程序 AJMP BIG;无借位,转MN理程序
第九章 常用控制程序设计 16位无符号数的比较程序清单: … … CLR CY ;标志位清零 MOV A,MH ;A←MH MOV R2,NH ;R2←NH SUBB A,R2 ;高8位比较 JZ HEQU ;高8位相等,转低8位比较 JC LESS ;有借位,转M<N 处理程序 AJMP BIG ;无借位,转M>N 理程序