内联汇编代码(inline asm)

V语言可以像C语言那样,在V代码中直接编写/嵌入汇编代码

使用asm代码块来编写汇编代码

  1. fn main() {
  2. a := 100
  3. b := 20
  4. mut c := 0
  5. asm amd64 { //行内汇编代码块
  6. mov eax, a
  7. add eax, b
  8. mov c, eax
  9. ; =r (c) // output
  10. ; r (a) // input
  11. r (b)
  12. }
  13. println('a: $a') // 100
  14. println('b: $b') // 20
  15. println('c: $c') // 120
  16. }

目前支持的架构:

架构名称 推荐使用名称 描述
amd64, x86_64, x64, x86 amd64 x86_64
aarch64, arm64 aarch64 64-bit arm
arm32, aarch32, arm aarch32 32-bit arm
rv64, riscv64, risc-v64, riscv, risc-v rv64 64-bit risc-v
rv32, riscv32 rv32 32-bit risc-v
x86_32, x32, i386, IA-32, ia-32, ia32 i386 i386