📄 strncpy.s
字号:
.area text
;
; char *strncpy(char *dst, char *src, size_t bytes)
;
_strncpy::
ldd R24,Y+0 ; load length
ldd R25,Y+1
cpi R24,0
cpc R25,R24
breq strncpyx ; length == 0
mov R27,R17 ; move pointers
mov R26,R16
mov R31,R19
mov R30,R18
strncpy1: ; copy
ld R18,Z+
st X+,R18
sbiw R24,1
breq strncpyx ; no more bytes ...
tst R18
brne strncpy1 ; src has more ...
; ldi R18,0 ; else
strncpy2: ; clear rest of dst
st X+,R18
sbiw R24,1
brne strncpy2
strncpyx:
ret
;
;<eof; 2003-07-31 ja>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -