美文网首页V语言
V语言学习笔记-31内联汇编代码

V语言学习笔记-31内联汇编代码

作者: lydiandy | 来源:发表于2020-05-20 00:29 被阅读0次

    内联汇编代码

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

    使用asm代码块来编写汇编代码,asm代码块必须被包含在unsafe代码块中

    module main
    
    fn main() {
        a := 10
        b := 0
        unsafe {    //unsafe代码块
            asm {   //asm代码块,里面可以直接写汇编代码
                "movl %1, %%eax;"
                "movl %%eax, %0;"
                :"=r"(b)
                :"r"(a)
                :"%eax"
            }
        }
        println(a) //返回10
        println(b) //返回10,直接通过汇编代码修改了b的值
    
        e := 0
        unsafe {
            asm {
                "movl $5, %0"
                :"=a"(e)
            }
        }
        println(e) //返回5,直接通过汇编代码修改了e的值
    }
     
    

    相关文章

      网友评论

        本文标题:V语言学习笔记-31内联汇编代码

        本文链接:https://www.haomeiwen.com/subject/lfgbohtx.html