📄 enc_lag3.asm
字号:
*****************************************************************************
** Description: eng_lag3() in eng_lag3.c **
** **
** Inputs **
**
** ar0---word16 T0 **
** ar1---Word16 T0_frac **
** ar2---Word16 T0_prev **
** ar3---word16 T0_min **
** ar4---word16 T0_max **
** ar5---word16 delta_flag **
** **
** Outputs: none **
** **
** **
** Return value : ar7 **
** **
** Attribute : Cycles: 84 Pm: 95 **
** Modified Registers: all **
** **
** Programmer : xie wei **
*****************************************************************************
.global _enc_lag3
_enc_lag3:
mov ah,@ar5
cmp ah,#0
sb _line_51,NEQ
mov ah,ar0
mov al,ar0
add ah,#112
mov @ar7,ah
cmp al,#85
sb _line_117,GT
mov ah,al
add al,al
add al,ah
sub al,#58
add al,@ar1
mov @ar7,al
b _line_117, UNC
_line_51:
mov al,@ar2
mov @ar6,al
sub al,@ar3
cmp al,#5
sb _line_72,LEQ
add al,#5
mov @ar6,al
_line_72: mov ah,@ar4
mov al,@ar6
sub ah,@al
cmp ah,#4
sb _line_80,LEQ
mov al,@ar4
sub al,#4
mov @ar6,al
_line_80: mov ah,@ar0
mov al,ah
add ah,ah
add ah,al
add ah,@ar1
mov @ar3,ah
mov al,@ar6
sub al,#2
mov ah,al
add al,al
add al,ah
mov @ar5,al
mov ah,@ar3
cmp al,@ah
sb _line_101,LT
mov al,@ar6
mov ah,@ar0
sub ah,@al
add ah,#5
mov @ar7,ah
b _line_117,UNC
_line_101: mov al,@ar6
mov ah,@ar0
sub ah,@al
add ah,#11
mov @ar7,ah
add al,#1
mov ah,al
add al,al
add al,ah
mov ah,@ar3
cmp al,@ah
sb _line_117,LEQ
sub ah,@ar5
add ah,#3
mov @ar7,ah
_line_117:
LRETR
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -