📄 conv.asm
字号:
.global _main
.mmregs
.text
_main:
ssbx ovm
ssbx sxm
rsbx cpl
ld #32,dp ;1000h
;------------calculate first 8 points----------------
stm #y,ar3
nop
nop
nop
lpn1: ldm ar3,a ;ar1=#x+(ar3-#y) start
stlm a,ar1 ;ar1=#x+(ar3-#y) finish
nop
nop
nop
and #0,a
nop
nop
nop
stm #h,ar2
nop
nop
nop
lpk1: ld *ar2+,t
nop
nop
nop
mpy *ar1-,b
nop
nop
nop
add b,a
nop
nop
nop
ldm ar1,b
nop
nop
nop
sub #x,b ;judge ar1<=#x?
nop
nop
nop
bc lpk1,bgeq ;lpk1
nop
nop
nop
stl a,*ar3+
nop
nop
nop
ldm ar3,b ;judge ar3-#y<8?
nop
nop
nop
sub #8,b
nop
nop
nop
sub #y,b
nop
nop
nop
bc lpn1,blt ;lpn1
nop
nop
nop
;-----------calculate other 7 points-----------------
lpn2: stm #(x+7),ar1 ;ar1=#x+7
nop
nop
nop
ldm ar3,b ;ar2=#h+(ar3-#y-7) start
nop
nop
nop
sub #7,b
nop
nop
nop
sub #y,b
nop
nop
nop
add #h,b
nop
nop
nop
stlm b,ar2 ;ar2=#h+(ar3-7) finish
nop
nop
nop
and #0,a
nop
nop
nop
lpk2: ld *ar2+,t
nop
nop
nop
mpy *ar1-,b
nop
nop
nop
add b,a
nop
nop
nop
ldm ar2,b ;judge ar2>=#h+7?
nop
nop
nop
sub #h,b
nop
nop
nop
sub #7,b
nop
nop
nop
bc lpk2,bleq ;lpk2
nop
nop
nop
stl a,*ar3+
nop
nop
nop
ldm ar3,b ;judge ar3-#y>15?
nop
nop
nop
sub #15,b
nop
nop
nop
sub #y,b
nop
nop
nop
bc lpn2,blt ;lpn2
nop
nop
nop
out0:
stop b stop
.data
x .equ $
.word 1
.word 2
.word 3
.word 4
.word 5
.word 6
.word 7
.word 8
h .equ $
.word 1
.word 2
.word 3
.word 4
.word 5
.word 6
.word 7
.word 8
y .equ $
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -