万能转换公式(汇编下的重量单位装换)

时间:2023-05-02 23:17:08 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1g = 0.03527396oz

g->oz = 0.03527396×主单位最小分辨量×2^20×10^小数点转换位数(转换单位小数点位数-主单位小数点位数)/ 转换单位最小分辨量

= 0.03527396×1×2^20×10^1/1

= 05A4D2H

1ml=0.0352floz

g->oz = 0.0352×主单位最小分辨量×2^20×10^小数点转换位数(转换单位小数点位数-主单位小数点位数)/ 转换单位最小分辨量

= 0.0352×1×2^20×10^2/1

= 3851ECH

g = 0.0022046

g->LB = 0.0022046×主单位最小分辨量×2^20×10^小数点转换位数(转换单位小数点位数-主单位小数点位数)/ 转换单位最小分辨量

= 0.0022046×1×2^20×10^3/2

= 11A305H

demo(例子):

W_CH EQU 0E7H ; 单位系数

W_CM EQU 0E8H

W_CL EQU 0E9H

Unit_MIN EQU 0EAH

Unit_Point EQU 0EBH ; 小数点

Unit_Change_Param:

BTFSC Unit_Flag,B_Unit_g

GOTO Unit_Change_Param_g

BTFSC Unit_Flag,B_Unit_ml

GOTO Unit_Change_Param_ml

BTFSC Unit_Flag,B_Unit_LBOZ

GOTO Unit_Change_Param_LbOZ

BTFSC Unit_Flag,B_Unit_flOZ

GOTO Unit_Change_Param_floz

CLRF Unit_Flag

BSF Unit_Flag,B_Unit_g

Unit_Change_Param_g:

MOVFL Unit_Point,00H

MOVFL Unit_MIN,001H

MOVFL W_CH,10H

MOVFL W_CM,00H

MOVFL W_CL,00H

GOTO Unit_Change_Param_Exit

Unit_Change_Param_ml:

GOTO Unit_Change_Param_g

Unit_Change_Param_floz:

MOVFL Unit_Point,02H

MOVFL Unit_MIN,001H

MOVFL W_CH,038H

MOVFL W_CM,051H

MOVFL W_CL,0ECH

GOTO Unit_Change_Param_Exit

Unit_Change_Param_LbOZ:

MOVFL Unit_Point,01H

MOVFL Unit_MIN,01H

MOVFL W_CH,005H

MOVFL W_CM,0A4H

MOVFL W_CL,0D2H

Unit_Change_Param_Exit:

RETURN

;=====================================

;==== unit_change.ASM

;=====================================

Unit_Change:

CLRF TempRam11

MOVFF TempRam12,CountH

MOVFF TempRam13,CountL

MOVFF TempRam4,W_CH

MOVFF TempRam5,W_CM

MOVFF TempRam6,W_CL

CALL _Mul3_3

MOVFL TempRam11,010H

MOVFL TempRam12,000H

MOVFL TempRam13,000H

CALL _Div6_3

CALL _ProcAdd1

Unit_change_Mul_2:

CLRF TempRam11

CLRF TempRam12

MOVFF TempRam13,Unit_MIN

CALL _Mul3_3

Unit_change_comm_Exit:

MOVFF COUNTH,TempRam5

MOVFF COUNTL,TempRam6

reutrn

本文来源:https://www.wddqw.com/doc/ae13abf651e79b89680226d1.html