簡體   English   中英

At&T程序集索引數組和聲明數組

[英]At&T Assembly indexing arrays and declaring arrays

我該如何在AT&T程序集中索引和聲明數組?

聲明是否這樣做:

array:
    .zero 256

創建一個256數組,值為零。

索引它我這樣做嗎:

movq $array, %r14                //Set array to a register name
                                 //Say that r11 has the number 5 stored
movq (%r14, %r11, 8), %r15       //This will make r15 at index 5 of array
movq %rbx ,%r15                  //This will store value of rbx into r15

這是我的方法嗎? 如果沒有,我該如何在AT&T程序集中創建和索引數組?

您的程序集將數組的起始地址存儲在r14 ,將數組的第r11個元素的值移動到r15 ,然后將rbx的值移動到r15 它不會將任何值移入數組。 如果要將第r11個元素的地址移動到r15然后將rbx的值移動到數組的第r11個元素,則需要使用leaq (%r14, %r11, 8), %r15來移動將數組第r11個元素的地址放入r15 ,然后使用movq %rbx, (%r15)rbx的值移動到數組第r11個元素。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM