linux汇编打印,gcc - 在LinuxRISC V汇编中,如何打印到控制台

我试图在Linux中使用as和gcc编译RISC V汇编。

模拟器是TinyEmu.busybox拥有所有实用程序--TinyEmu

镜像为diskimage-linux-riscv- 2018-09-23 .

我可以编译该程序,但是控制台上没有输出内容。.section .text

.globl _start

_start:

li a0, 0 # stdout

1: auipc a1, %pcrel_hi(msg) # load msg(hi)

addi a1, a1, %pcrel_lo(1b) # load msg(lo)

li a2, 12 # length

li a3, 0

li a7, 64 # _NR_sys_write

ecall # system call

li a0, 0

li a1, 0

li a2, 0

li a3, 0

li a7, 93 # _NR_sys_exit

ecall # system call

loop:

j loop

.section .rodata

msg:

.string"Hello Worldn"

我已经尝试了as和gcc调用的几种组合:as -o hello.o hello.s

ld as -o hello.o hello.s

这将创建一个二进制文件,但是没有控制台输出。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值