如何从数据部分获取最后一个值的地址?

时间:2015-02-08 06:59:20

标签: linux assembly

我使用'as'汇编程序,后面跟着.section .data

items:
.long 5,6,8,10

如何获取值10的地址?

2 个答案:

答案 0 :(得分:2)

如何使用。 ?

点符号(单独站立)是指当GAS到达组装时的当前地址。其他汇编程序使用' $' -character。

示例:

...
.data
...
items:  .long 5,6,8,10      # Every ".long" is 4 bytes long
lastitem = . - 4            # https://sourceware.org/binutils/docs/as/Dot.html#Dot
...

.text
...
    movl (lastitem), %eax
...

答案 1 :(得分:1)

您可以使用汇编程序指令.获取当前的位置地址,也可以使用lea items(,%rax, 4), %rdi之类的内容将%rax项数组的位置地址加载到%rdi