我正在爲學校進行作業,部分作業正在通過各種MIPS指令進行排序,並確定它們是否對常量或變量起作用。我的問題與地址有關。我正在閱讀我的教科書,我無法弄清楚地址是否被認爲是常量或變量。我想說這是一個變數,但我不能確定。如果有人能夠證明這對我很有幫助。MIPS地址解釋
Q
MIPS地址解釋
0
A
回答
1
那麼,給定上下文的用於在存儲器中的指令通常的幀,一個通常認爲指示自己是常量,儘管人們可以編寫代碼他們修改到其偶爾用於一些超優化目的的期望的效果—也用於病毒。不過,考慮到正常的情況下:
.data
array1: .space 12 # reserve 12 bytes for 3 integer array
.text
__start:
la $t0, array1 # load array address
li $t1, 5 # $t1 = 5 ("load immediate")
sw $t1, ($t0) # a[0] = 5
li $t1, 13 # $t1 = 13
addi $t0, t0, 4 # t0 = t0 + 4
sw $t1, ($t0) # a[1] = 13
li $t1, -7 # $t1 = -7
sw $t1, 4($t0) # a[2] = -7
done
因此,在該序列中,值5,圖13,和-7是所述指令的一部分,並且通常被認爲常數。另外,用於增加$ t0中地址指針的4也是一個常數。此外,一旦程序加載到內存中,array1
的地址是恆定的,因爲它不會改變。但是,在程序加載之前,其地址是而不是已知:加載程序分配了兩個程序段(.data和.text)的地址分配。
相關問題
- 1. 基本MIPS解釋
- 2. C++指針地址解釋
- 3. mips地址超出範圍
- 4. 地址超出範圍mips
- 5. 解釋IP地址的術語使用
- 6. 用reintepret_cast解釋對象地址
- 7. 如何解釋IP地址塊?
- 8. MIPS直接映射緩存。地址位
- 9. MIPS架構地址由ALU計算
- 10. MIPS如何轉移到32位地址?
- 11. 計算MIPS上的分支地址
- 12. 參考地址 - 等距地區的英語解釋
- 13. MIPS相對尋址
- 14. MIPS標籤尋址?
- 15. MIPS尋址問題
- 16. 地址解析
- 17. 詮釋地址由4
- 18. SQL地址解析
- 19. 宏解析地址
- 20. Excel:解析地址
- 21. 解析IPv6地址
- 22. C++:地址解引用和取消引用地址的地址
- 23. 解釋App驗證器輸出:堆損壞或將堆棧地址誤解爲堆地址?
- 24. MIPS可以字節尋址
- 25. 1個IPv4地址有多少種可能的解釋?
- 26. gdb將內存地址解釋爲對象
- 27. 如何解釋此地址-0x80(%rbp,%rax,4)
- 28. 解釋WEC7虛擬/物理地址空間
- 29. 使用聯合來解釋多個IP地址?
- 30. PE 101解釋窗口API調用的地址
這是一個相當普遍的問題,因爲措辭。你有* constant *和* variable *的定義嗎?這些將有助於指導我們一個有用的答案。在非哈佛架構中,所有的內存都是可寫的,因此在某種意義上是「可變的」。但從程序的角度來看,有「程序部分」(psects)是隻讀的,其他的是可讀/寫的。 – wallyk
因此,例如,確切的問題是關於指令「la」和問題狀態「是否使用此指令加載常量或變量?」除此之外,我沒有任何定義。 – Samuel
另一個我感興趣得到回答的問題是僞指令的格式類型是否來自僞指令「引擎蓋下」的格式? – Samuel