美文网首页
Swift - 汇编-2

Swift - 汇编-2

作者: 开了那么 | 来源:发表于2020-10-21 10:29 被阅读0次

/*
//字符串长度<= 0xF,字符串内容直接存放在str1变量的内存中

var str1 = "0123456789"

//字符串长度> 0xF, 字符串内容存放在__ .TEXT.cstring中 (常量区)

//字符串的地址値信息存放在str2変量的后8个字や中

var str2 = "0123456789ABCDEF"

// 由于字符串长度<= 0xF,所以字符串内容依然存放在str1变量的内存中

str1. append ( " ABCDE" )

//开辟堆空间.

str1. append("F")

//开辟堆空间.

str2. append("G" )

0x10000a3ce jmpq *0x2c4c (%rip)
jmpq作用: rip 的地址值加上 0x2c4c 得到的新地址,然后跳转到新地址的里面的地址值

rip 的地址值是当前指令的下一条执行的地址值,如果只有一条指令,则rip的地址为当前指令的地址 加上 当前汇编指令占用字节数,如下图中

image

当前方法只有一条指令,所以 rip 的地址为 0x10000a3ce + 6(当前汇编指令占用字节数)
新地址为 rip + 0x2c4c
jmpq 跳转的内容是新地址里面存储的地址内容

相关文章

网友评论

      本文标题:Swift - 汇编-2

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