📄 c54-14.asm
字号:
;
;;;;;;;;;;;;;;;;;;Function;;;;;;;;;;;;;;;;;;
;
.mmregs
.global _c54_norm
_c54_norm:
FRAME -1
MVMM SP,AR0
FRAME -1
MVMM SP,AR2
ST #0x1F,*AR0; //循环计数次数
ST #0x0,*AR2;//循环计数控制
SFTA A,9,A;//先把第31位即最高符号位移到C中
BC nega,C; //if C=1,即为负数时到nega
posit:
SFTA A,1,A
BC result,C
LD *AR2,B
ADD #1,0,B
STL B,*AR2
LD *AR0,B;//B=*AR0
SUB #1,0,B; //B= B-1
STL B,*AR0;//*AR0=B
BC result,BEQ;//if B=0到result
B posit
nega:
SFTA A,1,A
BC result,NC
LD *AR2,B
ADD #1,0,B
STL B,*AR2
LD *AR0,B;//B=*AR0
SUB #1,0,B; //B= B-1
STL B,*AR0;//*AR0=B
BC result,BEQ;//if B=0到result
B nega
result:
LD *AR2,A
FRAME 2
.if __far_mode
FRETD
NOP
NOP
.else
RETD
NOP
NOP
NOP
.endif
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -