[英]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.