📄 c54-2.asm
字号:
;
;;;;;;;;;;;;;;;;;;Function ;;;;;;;;;;;;;;;;;;
;
.mmregs
.global _c54_smpylh
_c54_smpylh:
.if __far_mode
FRAME 2;
MVMM SP,AR0; //参数2地址放入AR0
FRAME -2
.else
FRAME 1;
MVMM SP,AR0; //参数2地址放入AR0
FRAME -1
.endif
LD *AR0,B; //参数2高16位放B低16
STLM A,T; //参数1低16位放T
MPY *AR0,A; //A = 参数1(T中)*参数2(*AR0指向)
SFTA A,1,A; //A = A << 1
DST A,*AR0; //A放入AR0指向的地址中(32bit)
STM #0x8000,BH
STM #0x0000,BL
SUB A,0,B; //B = B - (A<<0),判断A中内容和0x80000000的大小
BC next,BEQ; //if B=0 到next
DLD *AR0,A
B result
next:
STM #0xffff,AL
STM #0x7fff,AH
result:
.if __far_mode
FRETD
NOP
NOP
.else
RETD
NOP
NOP
NOP
.endif
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -