?? 16open_uadri.txt
字號:
16位整型數開平方
.include "8515def.inc"
.def numlo = r16
.def numhi = r17
.def sqrt = r18
.def suber = r24
.def suberh = r25
; enter with the 16 bit Number in r16,r17
.org 0x00
rjmp reset
.org 0x20
reset: ldi r16,0x02 ; Stack Pointer Setup
out SPH,r16 ; Stack Pointer High Byte
ldi r16,0x5f ; Stack Pointer Setup
out SPL,r16 ; Stack Pointer Low Byte
loopm:
ldi r16,0x64
ldi r17,0x01
rcall sqrt
nop
rjmp loopm
Sqrt:
clr sqrt
ldi suber,1 ; initialize the seed to be subtracted
clr suberh ; for each iteration
loop: sub numlo,suber
sbc numhi,suberh
brlo exit
inc sqrt
adiw suber,2 ; keep the number to subtract ODD.
rjmp loop
exit:
ret ; the sqrt(num) on exit is stored in r18
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -