簡體   English   中英

匯編語言數組

[英]Assembly Language Array

任何幫助找到答案的幫助將不勝感激。

.data
array: .word 1,2,3,4,5,6,7,8,9,10
.text
.globl main 
main:
   la $t0, array
   li $t1, 4
   mult $t1, $t1
   mflo $t1
   add $t0, $t0, $t1
   sw $t1, 20($t0)

執行指令后,數組的值是什么? 我對此感到困惑。 我是否只需將20加到數組中的每個值?

一些提示

.data
array: .word 1,2,3,4,5,6,7,8,9,10 # 10 32 bits values @array
.text
.globl main 
main:
   la $t0, array      # Load address of array into $t0
   li $t1, 4          # Load constant 4 into $t1
   mult $t1, $t1      # Multiply $t1 x $t1
   mflo $t1           # Put result (lower word) into $t1 ( 16 )
   add $t0, $t0, $t1  # $t0 = $t0 + $t1 ( array + 16 )
   sw $t1, 20($t0)    # Store $t1 at address ( $t0 + 20 )

假設一個單詞為4字節,即存儲在(array + 4)處將覆蓋2 in array( 第二個值),則您應該能夠找出問題的答案。

暫無
暫無

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

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