RISC-V编程——复制数组内容
刚接触RISCV指令集架构。下面是参考计算机组成与设计riscv版这本书写下的汇编代码。
模拟器为rars 1.5版本。RV32
#将y[]中的值copy到x[]中
.data
x:
.byte 0
.space 13
y:
.byte '0','1','2','3','4','5','6','F','a','d','f',0
.space 13
.text
strcpy:
la a0,x
la a1,y
addi sp,sp,-8
sw s3,0(sp)
add s3,zero,zero
L1:
add t0,s3,a1
lbu t1,0(t0)
add t2,s3,a0
sb t1,0(t2)
beq t1,zero,L2
addi s3,s3,1
jal zero,L1
L2:
lw s3,0(sp)
addi sp,sp,8
jalr zero,0(ra)